@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800;900&display=swap");

:root{
  --bg:#0b1020;--bg-soft:#10172a;--surface:#121a2b;--surface2:#182237;--surface3:#202c43;
  --fg:#f4f7fb;--muted:#8f9bb3;--border:#26334a;--primary:#f5a524;--secondary:#38bdf8;
  --danger:#fb4f68;--green:#32d583;--purple:#8b5cf6;--warning:#f5a524;
  --shadow:0 18px 55px rgba(0,0,0,.28);--shadow-soft:0 8px 28px rgba(0,0,0,.16);
  --radius:18px;--radius-sm:12px;
}
html.light{
  --bg:#f4f7fb;--bg-soft:#eef3f9;--surface:#ffffff;--surface2:#f7f9fc;--surface3:#edf2f7;
  --fg:#172033;--muted:#68748a;--border:#dfe6ef;--shadow:0 18px 50px rgba(23,32,51,.09);--shadow-soft:0 8px 24px rgba(23,32,51,.07)
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--fg);font-family:"Poppins",sans-serif;-webkit-font-smoothing:antialiased}
body{overflow-x:hidden;background-image:radial-gradient(circle at 80% -10%,color-mix(in srgb,var(--primary) 10%,transparent),transparent 30%),radial-gradient(circle at 10% 20%,rgba(56,189,248,.05),transparent 25%)}
.bg-noise:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.022;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.mono{font-family:"Poppins",sans-serif}.muted{color:var(--muted)}.primary{color:var(--primary)}.green{color:var(--green)}.danger{color:var(--danger)}.small{font-size:12px;line-height:1.55}.tiny{font-size:10px;line-height:1.45}.uppercase{text-transform:uppercase;letter-spacing:.12em}.center{text-align:center}.right{text-align:right}.nowrap{white-space:nowrap}
.splash{min-height:100vh;display:grid;place-items:center;color:var(--muted)}

.shell{min-height:100vh}.sidebar{position:fixed;z-index:40;inset:0 auto 0 0;width:258px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(20px);border-right:1px solid var(--border);padding:24px 18px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:0 8px;margin-bottom:28px}.brand-mark{width:44px;height:44px;flex:0 0 44px;border-radius:14px;background:linear-gradient(145deg,var(--primary),color-mix(in srgb,var(--primary) 65%,#fff));color:#111827;display:grid;place-items:center;font-size:14px;font-weight:900;overflow:hidden;box-shadow:none}.brand-mark.big{width:58px;height:58px;flex-basis:58px;border-radius:18px;font-size:18px}.brand-mark img{width:100%;height:100%;object-fit:contain;background:#fff}.brand-name{font-weight:800;font-size:17px;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.brand-sub{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-top:5px}.nav{display:flex;flex-direction:column;gap:6px;flex:1}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:12px;color:var(--muted);text-decoration:none;font-weight:650;font-size:13px;transition:.18s}.nav-link:hover{background:var(--surface2);color:var(--fg);transform:none}.nav-link.active{background:color-mix(in srgb,var(--primary) 14%,var(--surface2));color:var(--fg);box-shadow:none}.nav-link.active .nav-icon{color:var(--primary)}.nav-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:var(--surface2);font-size:12px}.userbox{border-top:1px solid var(--border);padding:16px 8px 0}.user-name{font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout{background:none;border:0;color:var(--muted);padding:9px 0 0}.logout:hover{color:var(--danger)}
.main{margin-left:258px;min-height:100vh;padding-bottom:40px}.topbar{height:78px;display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:0 34px}.topbar-spacer{flex:1}.top-btn{width:42px;height:42px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--fg);position:relative;box-shadow:none}.top-btn:hover{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));transform:none}.badge-count{position:absolute;right:-6px;top:-6px;background:var(--danger);color:#fff;min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:grid;place-items:center;font-weight:800;font-size:9px;border:2px solid var(--bg)}.badge-count.greenbg{background:var(--green)}.content{padding:8px 34px 34px;max-width:1460px}.mobile-nav{display:none}

.page-title{font-size:34px;line-height:1.05;margin:2px 0 0;font-weight:800;letter-spacing:-.04em}.page-sub{font-size:13px;color:var(--muted);margin:8px 0 0}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:6px}.eyebrow{font-size:9px;font-weight:800;letter-spacing:.17em;color:var(--primary);text-transform:uppercase}.space{display:flex;flex-direction:column;gap:18px}.grid{display:grid;gap:16px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,#fff 2%),var(--surface));border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:none;position:relative;overflow:hidden}.card:after{content:"";position:absolute;pointer-events:none;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.025),transparent 35%)}.card h3{margin:0;font-size:15px;letter-spacing:-.02em}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.stat-card{display:flex;gap:14px;align-items:center;min-height:114px}.stat-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--primary) 12%,var(--surface2));color:var(--primary);font-weight:800}.stat-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.stat-value{font:700 21px "Poppins",sans-serif;margin-top:8px;letter-spacing:-.04em}.date-chip,.data-badge{display:inline-flex;align-items:center;border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;padding:8px 12px;font-size:10px;font-weight:700}.data-badge.danger-soft{color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,var(--surface))}

.btn{border:0;border-radius:12px;min-height:40px;padding:10px 15px;background:var(--surface2);color:var(--fg);font-weight:700;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;transition:.16s;white-space:nowrap}.btn:hover{filter:none;transform:none}.btn:active{transform:none}.btn.primary{background:var(--primary);color:#111827;box-shadow:none}.btn.secondary{background:var(--secondary);color:#082f49}.btn.green{background:var(--green);color:#052e1c}.btn.danger{background:var(--danger);color:#fff}.btn.outline{background:transparent;border:1px solid var(--border)}.btn.full{width:100%}.btn.compact{min-height:32px;padding:7px 10px;font-size:10px;border-radius:9px}.btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}.new-comanda-btn{min-width:150px}.add-item-trigger{min-width:138px;height:42px;padding:0 16px}.payment-button{min-width:230px}
.input,.select,.textarea{width:100%;background:var(--surface2);color:var(--fg);border:1px solid var(--border);border-radius:12px;padding:12px 13px;outline:none;transition:.15s}.input:focus,.select:focus,.textarea:focus{border-color:color-mix(in srgb,var(--primary) 75%,var(--border));box-shadow:none}.textarea{min-height:88px;resize:vertical}.label{display:block;font-size:9px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.13em;margin-bottom:7px}.field-gap{margin-top:15px}.field-gap-small{margin-top:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.modal-submit{margin-top:18px;min-height:46px}.check-row{display:flex;gap:8px;align-items:center;margin-top:15px;font-size:12px;color:var(--muted)}

.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:none}.table{width:100%;border-collapse:collapse;min-width:660px}.table th,.table td{padding:14px 16px;border-bottom:1px solid var(--border);text-align:left;font-size:12px}.table th{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);background:var(--surface2)}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:color-mix(in srgb,var(--surface2) 55%,transparent)}.pill{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;background:var(--surface2);color:var(--muted);border:1px solid var(--border)}.pill.open{background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary);border-color:color-mix(in srgb,var(--primary) 28%,var(--border))}.pill.good{background:color-mix(in srgb,var(--green) 10%,transparent);color:var(--green);border-color:color-mix(in srgb,var(--green) 26%,var(--border))}.pill.bad{background:color-mix(in srgb,var(--danger) 10%,transparent);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 26%,var(--border))}
.empty{border:1px dashed var(--border);border-radius:var(--radius);padding:52px 22px;text-align:center;color:var(--muted);background:color-mix(in srgb,var(--surface) 60%,transparent)}.empty h3{color:var(--fg);margin:12px 0 5px}.empty p{margin:0;font-size:12px}.empty-icon{font-size:30px}.empty-inline{padding:22px;text-align:center;color:var(--muted);font-size:12px}.empty-pop{padding:18px}.column-empty{padding:30px 10px;text-align:center;color:var(--muted);font-size:11px}

#toast-root{position:fixed;z-index:300;top:20px;right:20px;width:min(390px,calc(100% - 40px));display:flex;flex-direction:column;align-items:stretch;gap:10px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(20px);border:1px solid var(--border);border-radius:16px;padding:15px 17px;box-shadow:none;font-size:13px;font-weight:650;opacity:0;transform:translateX(24px) translateY(-4px);transition:opacity .2s ease,transform .2s ease;pointer-events:auto}.toast.show{opacity:1;transform:translateX(0) translateY(0)}.toast-icon{width:28px;height:28px;flex:0 0 28px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 15%,var(--surface2));color:var(--primary);font-weight:900}.toast.success .toast-icon{background:color-mix(in srgb,var(--green) 14%,var(--surface2));color:var(--green)}.toast.error .toast-icon{background:color-mix(in srgb,var(--danger) 14%,var(--surface2));color:var(--danger)}.toast.warning .toast-icon{background:color-mix(in srgb,var(--warning) 14%,var(--surface2));color:var(--warning)}
.modal-wrap{position:fixed;z-index:420;inset:0;background:rgba(2,6,23,.72);backdrop-filter:blur(7px);display:grid;place-items:center;padding:18px}.modal{width:min(540px,100%);max-height:90vh;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:20px;box-shadow:none;padding:23px;animation:modalIn .18s ease}.modal-lg{width:min(820px,100%)}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.modal-title{font-weight:800;font-size:18px;letter-spacing:-.02em}.x{border:0;background:var(--surface2);color:var(--muted);width:32px;height:32px;border-radius:10px;font-size:20px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.popover{position:fixed;z-index:120;right:28px;top:70px;width:330px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:13px;box-shadow:none}.pop-item{display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--surface2);padding:11px;border-radius:11px;margin-top:8px}.pop-title{font-weight:750;font-size:12px}

.filter-bar{display:flex;align-items:center;gap:8px;overflow-x:auto;padding-bottom:2px}.filter-btn{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;min-height:38px;padding:8px 13px;font-weight:700;font-size:11px;white-space:nowrap}.filter-btn b{margin-left:6px;background:var(--surface2);padding:2px 6px;border-radius:999px;font-size:9px}.filter-btn.active{color:var(--fg);border-color:color-mix(in srgb,var(--primary) 55%,var(--border));background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.filter-btn.active b{color:var(--primary)}
.comanda-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.comanda-card{border:1px solid var(--border);background:linear-gradient(155deg,var(--surface),color-mix(in srgb,var(--surface2) 75%,var(--surface)));border-radius:18px;padding:18px;text-align:left;color:var(--fg);position:relative;overflow:hidden;min-height:190px;box-shadow:none;transition:.18s}.comanda-card:hover{border-color:color-mix(in srgb,var(--primary) 50%,var(--border));transform:translateY(-3px);box-shadow:none}.comanda-card:before{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-55px;top:-55px;background:color-mix(in srgb,var(--primary) 8%,transparent)}.comanda-card.status-paga:before{background:color-mix(in srgb,var(--green) 8%,transparent)}.comanda-card.status-cancelada:before{background:color-mix(in srgb,var(--danger) 8%,transparent)}.card-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.comanda-card h3{font-size:17px;margin:17px 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.comanda-total{font:700 20px "Poppins",sans-serif;margin-top:21px;letter-spacing:-.04em}.comanda-foot{display:flex;justify-content:space-between;gap:8px;margin-top:12px;color:var(--muted);font-size:10px}.comanda-detail{max-width:940px}.back{background:none;border:0;color:var(--muted);padding:0;font-size:11px;text-align:left;width:max-content}.back:hover{color:var(--fg)}.detail-toolbar{display:flex;justify-content:flex-end;gap:10px}.items-card{padding-bottom:18px}.item-row{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--border);gap:14px}.item-main{min-width:0}.item-main>b{font-size:13px}.item-observation{margin-top:7px;padding:7px 9px;border-radius:9px;background:color-mix(in srgb,var(--primary) 8%,var(--surface2));color:color-mix(in srgb,var(--fg) 86%,var(--muted));font-size:10px;max-width:480px}.item-actions{display:flex;align-items:center;gap:10px}.item-subtotal{min-width:94px;text-align:right;font-size:12px}.inline-stepper{display:flex;align-items:center;height:34px;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface2)}.inline-stepper button{width:34px;height:34px;border:0;background:transparent;color:var(--fg);font-size:17px}.inline-stepper button:hover{background:var(--surface3)}.inline-stepper b{min-width:28px;text-align:center;font:700 11px "Poppins",sans-serif}.icon-danger{width:34px;height:34px;border-radius:10px;border:1px solid color-mix(in srgb,var(--danger) 30%,var(--border));background:color-mix(in srgb,var(--danger) 7%,transparent);color:var(--danger)}.qty-readonly{font:700 11px "Poppins",sans-serif}.total-row{display:flex;justify-content:space-between;align-items:flex-end;border-top:1px solid var(--border);padding-top:18px;margin-top:8px}.total{font:800 24px "Poppins",sans-serif;color:var(--primary);letter-spacing:-.05em}.payment-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.payment-card h3{margin-bottom:5px}.payment-card p{margin:0}.payment-options{gap:10px}.payment-option{justify-content:flex-start;text-align:left;padding:13px}.payment-option span:nth-child(2){display:flex;flex-direction:column;gap:2px}.payment-option small{color:var(--muted);font-size:10px;font-weight:500}.option-icon{width:34px;height:34px;border-radius:10px;background:var(--surface2);display:grid;place-items:center}.code-box{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:13px}.code-wrap{word-break:break-all;margin-top:6px}.center-qr{margin:auto}

.picker-head{display:grid;gap:8px;margin-bottom:14px}.product-list{display:flex;flex-direction:column;gap:10px}.product-pick{background:var(--surface2);border:1px solid var(--border);border-radius:14px;padding:12px}.product-pick.disabled{opacity:.5}.product-pick-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.product-pick-info{display:flex;align-items:center;gap:10px;min-width:0}.product-pick-info b{display:block;margin-bottom:4px;font-size:12px}.picker-actions{display:flex;align-items:center;gap:9px}.qty{display:flex;align-items:center;gap:7px}.qty button{width:32px;height:32px;border:1px solid var(--border);background:var(--surface);color:var(--fg);border-radius:9px;font-size:16px}.qty button:hover{border-color:var(--primary)}.picker-qty b{min-width:20px;text-align:center;font-size:11px}.picker-add{height:36px;min-height:36px;min-width:96px;padding:0 13px;font-size:11px;border-radius:10px}.item-note-input{margin-top:9px;padding:9px 11px;font-size:11px}.thumb{width:46px;height:46px;border-radius:11px;background:var(--surface3);object-fit:cover;border:1px solid var(--border);flex:0 0 46px}.thumb-placeholder{display:grid;place-items:center;color:var(--muted)}

.kitchen{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.kcol{background:color-mix(in srgb,var(--surface) 86%,transparent);border:1px solid var(--border);border-radius:18px;padding:14px;min-height:300px}.khead{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.khead b{font-size:13px}.kcount{width:30px;height:30px;border-radius:10px;background:var(--surface2);display:grid;place-items:center;color:var(--muted);font:700 11px "Poppins",sans-serif}.korder{background:var(--surface2);border:1px solid var(--border);border-radius:14px;padding:14px;margin-top:10px;transition:.2s}.korder.overdue{border-color:color-mix(in srgb,var(--danger) 55%,var(--border));box-shadow:none}.korder-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.kqty{font-size:18px}.k-time{font-size:9px;font-weight:800;border-radius:999px;padding:5px 8px}.k-time.ok{color:var(--green);background:color-mix(in srgb,var(--green) 9%,transparent)}.k-time.warning{color:var(--warning);background:color-mix(in srgb,var(--warning) 10%,transparent)}.k-time.overdue{color:#fff;background:var(--danger);animation:pulse 1.3s infinite}.korder h4{margin:12px 0 5px;font-size:13px}.k-observation{margin-top:9px;background:color-mix(in srgb,var(--primary) 8%,var(--surface));border-left:3px solid var(--primary);padding:8px 9px;border-radius:8px;font-size:10px}.kitchen-action{margin-top:12px;background:var(--surface3);border:1px solid var(--border)}.status-pendente .khead>b{color:var(--warning)}.status-preparando .khead>b{color:var(--secondary)}.status-pronto .khead>b{color:var(--green)}

.dashboard-main-grid{grid-template-columns:minmax(0,2fr) minmax(280px,1fr)}.chart-card{min-height:350px}.chart-shell{width:100%;overflow:hidden}.revenue-svg{width:100%;height:260px;overflow:visible}.chart-axis{stroke:var(--border);stroke-width:1}.chart-line{fill:none;stroke:var(--primary);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:none}.chart-dot{fill:var(--surface);stroke:var(--primary);stroke-width:3}.chart-label{fill:var(--muted);font-size:10px;font-family:"Poppins",sans-serif}.chart-value{fill:var(--fg);font-size:9px;font-family:"Poppins",sans-serif}.chart-empty{min-height:150px;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:11px}.method-row{margin-top:15px}.method-top{display:flex;justify-content:space-between;font-size:11px}.method-line{height:8px;border-radius:999px;background:var(--surface2);overflow:hidden;margin-top:7px}.method-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 65%,#fff))}.ranking{display:grid;gap:14px}.rank-meta{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;font-size:11px}.rank-pos{width:24px;height:24px;border-radius:8px;background:var(--surface2);display:grid;place-items:center;color:var(--primary);font-weight:800}.rank-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rank-track{height:7px;background:var(--surface2);border-radius:999px;margin-left:36px;overflow:hidden}.rank-fill{height:100%;background:linear-gradient(90deg,var(--secondary),var(--primary));border-radius:999px}.stock-alert{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--border);font-size:11px}.stock-alert:last-child{border-bottom:0}

.product-card{display:flex;flex-direction:column}.product-head{display:grid;grid-template-columns:52px 1fr auto;gap:11px;align-items:start}.product-thumb{width:52px;height:52px;border-radius:13px;object-fit:cover;border:1px solid var(--border);background:var(--surface2)}.product-title{min-width:0}.product-title h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:3px 0 6px}.product-meta{display:flex;justify-content:space-between;gap:10px;margin-top:18px;font-size:10px;color:var(--muted)}.product-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px}.actions{display:flex;gap:8px;flex-wrap:wrap}.stock-low{margin-top:12px;border-radius:9px;padding:8px 9px;background:color-mix(in srgb,var(--danger) 8%,transparent);color:var(--danger);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}

.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.qr-card{grid-column:1/-1}.theme-buttons{display:flex;flex-wrap:wrap;gap:9px}.theme-btn{border:1px solid var(--border);background:var(--surface2);color:var(--muted);padding:9px 13px;border-radius:11px;font-weight:700;font-size:11px}.theme-btn.active{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface2))}.swatch{width:14px;height:14px;border-radius:50%;display:inline-block;vertical-align:middle;margin-right:6px}.logo-upload{display:flex;align-items:center;gap:14px;margin:16px 0}.logo-preview{width:72px;height:72px;border-radius:16px;border:1px solid var(--border);background:var(--surface2);display:grid;place-items:center;overflow:hidden;font-weight:900;color:var(--primary)}.logo-preview img{width:100%;height:100%;object-fit:contain}.qr-layout{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;margin-top:16px}.qr{background:#fff;padding:13px;border-radius:14px;width:max-content}.qr img{display:block;width:180px;height:180px}.qr-controls{max-width:520px}.url-preview{word-break:break-all;margin:10px 0;padding:9px;border-radius:9px;background:var(--surface2)}

.public-menu-page{min-height:100vh;padding-bottom:110px}.public-hero{padding:28px 18px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 92%,transparent),transparent)}.public-brand{max-width:900px;margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;text-align:center}.public-brand h1{font-size:28px;margin:3px 0 3px;letter-spacing:-.04em;text-align:center}.public-brand-copy{text-align:center}.public-brand p{margin:0;color:var(--muted);font-size:11px}.public-logo{width:64px;height:64px;object-fit:contain;border-radius:16px;background:#fff}.menu-public{max-width:900px;margin:auto;padding:24px 16px}.menu-category{margin-top:26px}.menu-category:first-child{margin-top:0}.menu-category-title{font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--primary);margin-bottom:10px}.menu-category-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.menu-item{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:11px;box-shadow:none}.menu-img{width:72px;height:72px;border-radius:12px;object-fit:cover;background:var(--surface2);flex:0 0 auto}.menu-info{flex:1;min-width:0}.menu-info>b{font-size:13px}.menu-price{margin-top:8px;color:var(--primary);font:700 13px "Poppins",sans-serif}.sticky-call{position:fixed;z-index:60;left:0;right:0;bottom:0;padding:13px 16px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px);border-top:1px solid var(--border)}.sticky-call>div{max-width:900px;margin:auto}.call-waiter-btn{min-height:48px;font-size:13px;margin-bottom:5px}

.login{min-height:100vh;display:grid;place-items:center;padding:22px;position:relative;background:radial-gradient(circle at 15% 20%,color-mix(in srgb,var(--primary) 12%,transparent),transparent 25%),radial-gradient(circle at 85% 80%,rgba(56,189,248,.08),transparent 25%),var(--bg)}.login-box{width:min(430px,100%)}.login-brand-v6{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:24px}.login-title{font-size:23px;font-weight:850;letter-spacing:-.04em}.login-card{background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(22px);border:1px solid var(--border);border-radius:22px;padding:30px;box-shadow:none}.login-card h2{font-size:27px;margin:7px 0 6px;letter-spacing:-.04em}.login-copy{margin:0 0 22px}.login-submit{margin-top:20px;min-height:48px}.success-page{min-height:100vh;display:grid;place-items:center;padding:20px}.success-card{width:min(430px,100%);text-align:center}.big-icon{font-size:52px;margin-bottom:12px}

@keyframes modalIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}@keyframes pulse{0%,100%{box-shadow:none}50%{box-shadow:none}}

@media(max-width:1100px){.g4{grid-template-columns:repeat(2,1fr)}.comanda-grid{grid-template-columns:repeat(3,1fr)}.dashboard-main-grid{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.qr-card{grid-column:auto}}
@media(max-width:800px){.sidebar{display:none}.main{margin-left:0;padding-bottom:88px}.topbar{height:66px;padding:0 16px}.content{padding:6px 16px 24px}.mobile-nav{display:flex;position:fixed;z-index:80;left:0;right:0;bottom:0;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(18px);border-top:1px solid var(--border);overflow-x:auto;justify-content:space-around;padding:7px 5px 9px}.mobile-nav .nav-link{min-width:58px;padding:5px;flex-direction:column;gap:3px;font-size:8px;background:transparent}.mobile-nav .nav-link.active{background:transparent;color:var(--primary);box-shadow:none}.mobile-nav .nav-icon{background:transparent}.page-title{font-size:29px}.page-head{align-items:flex-start}.g2,.g3{grid-template-columns:1fr}.comanda-grid{grid-template-columns:repeat(2,1fr)}.kitchen{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.settings-grid{grid-template-columns:1fr}.qr-layout{grid-template-columns:1fr}.qr{margin:auto}.qr-controls{max-width:none}.menu-category-grid{grid-template-columns:1fr}.payment-card{align-items:flex-start;flex-direction:column}.payment-button{width:100%}.product-pick-top{align-items:flex-start;flex-direction:column}.picker-actions{width:100%;justify-content:space-between}.picker-add{min-width:112px}.popover{right:12px;top:62px;width:calc(100% - 24px)}.detail-toolbar{justify-content:space-between}.item-row{align-items:flex-start;flex-direction:column}.item-actions{width:100%;justify-content:flex-end}.item-subtotal{margin-right:auto;text-align:left}.stat-card{min-height:98px}.public-brand{justify-content:flex-start}}
@media(max-width:520px){.g4{grid-template-columns:1fr 1fr}.comanda-grid{grid-template-columns:1fr}.comanda-card{min-height:170px}.page-head{flex-direction:column}.page-head>.btn{width:100%}.new-comanda-btn{min-width:0}.detail-toolbar{display:grid;grid-template-columns:1fr 1fr}.detail-toolbar .btn{width:100%}.product-meta,.product-actions{align-items:flex-start;flex-direction:column}.product-actions{width:100%}.product-actions>.actions{width:100%}.product-actions>.actions .btn{flex:1}.modal{padding:18px}.login-card{padding:24px}.qr img{width:170px;height:170px}#toast-root{top:12px;right:12px;left:12px;width:auto}}

.waiter-call-row.urgent{background:color-mix(in srgb,var(--danger) 12%,var(--surface));border-color:color-mix(in srgb,var(--danger) 50%,var(--border));box-shadow:none}.waiter-call-row.urgent .pop-title{color:var(--danger)}.call-repeat{display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:20px;padding:0 6px;margin-left:5px;border-radius:999px;background:var(--surface3);color:var(--fg);font-size:9px;font-weight:900}.waiter-call-row.urgent .call-repeat{background:var(--danger);color:#fff}
.public-orders-card{margin:0 0 24px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,#fff 2%),var(--surface));border:1px solid var(--border);border-radius:18px;padding:17px;box-shadow:none}.public-orders-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.public-orders-head h2{font-size:17px;margin:4px 0 0;letter-spacing:-.03em}.public-live{display:inline-flex;align-items:center;gap:6px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--green)}.public-live i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:none}.public-orders-list{display:grid;gap:8px}.public-order-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);background:var(--surface2);border-radius:13px;padding:11px 12px}.public-order-main{display:flex;flex-direction:column;gap:4px;min-width:0}.public-order-main>b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-order-pill{flex:0 0 auto;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.public-order-pill.received{background:color-mix(in srgb,var(--warning) 13%,transparent);color:var(--warning)}.public-order-pill.preparing{background:color-mix(in srgb,var(--secondary) 13%,transparent);color:var(--secondary)}.public-order-pill.ready{background:color-mix(in srgb,var(--green) 13%,transparent);color:var(--green)}
@media(max-width:800px){.public-brand{justify-content:center}.public-orders-head{align-items:flex-start}.public-order-row{align-items:flex-start}.public-order-main>b{white-space:normal}}

/* ===== IDMIX Tech V6 ===== */
.content{max-width:none;width:100%}
#toast-root{top:18px;left:50%;right:auto;width:min(440px,calc(100% - 28px));transform:translateX(-50%);align-items:stretch}
.toast{transform:translateY(-18px) scale(.98)}
.toast.show{transform:translateY(0) scale(1)}
.top-btn.attention-pulse{animation:topAttention .82s ease-in-out infinite;border-color:color-mix(in srgb,var(--primary) 65%,var(--border))}
#ready-top-btn.attention-pulse{box-shadow:none}
#call-top-btn.attention-pulse{box-shadow:none}
@keyframes topAttention{0%,100%{opacity:1;transform:none}50%{opacity:.48;transform:none}}
.urgent-call-banner{position:fixed;z-index:280;top:12px;left:50%;transform:translateX(-50%);width:min(760px,calc(100% - 28px));min-height:48px;padding:9px 12px 9px 16px;border:1px solid color-mix(in srgb,var(--danger) 70%,#fff);border-radius:14px;background:color-mix(in srgb,var(--danger) 90%,#7f1d1d);color:#fff;display:flex;align-items:center;justify-content:center;gap:12px;box-shadow:none;animation:urgentBlink .72s ease-in-out infinite}
.urgent-flash{font-size:10px;font-weight:900;letter-spacing:.12em;white-space:nowrap}.urgent-call-banner>span:nth-child(2){font-size:12px;font-weight:750;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.urgent-action{border:1px solid rgba(255,255,255,.38);background:#fff;color:#8f1529;border-radius:9px;padding:7px 10px;font-size:10px;font-weight:900;white-space:nowrap}
@keyframes urgentBlink{0%,100%{filter:brightness(1);box-shadow:none}50%{filter:brightness(1.32);box-shadow:none}}
body:has(.urgent-call-banner:not(.hidden)) #toast-root{top:74px}

.comanda-grid{grid-template-columns:repeat(auto-fill,minmax(238px,1fr));gap:14px}.comanda-card{min-height:178px}.comanda-detail{max-width:1180px}

.cash-status{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:9px 13px;font-size:10px;font-weight:850;letter-spacing:.04em}.cash-status.open{color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--green) 28%,var(--border))}.cash-status.closed{color:var(--danger);background:color-mix(in srgb,var(--danger) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--danger) 24%,var(--border))}
.cash-control{display:flex;align-items:center;justify-content:space-between;gap:18px}.cash-control p{margin:6px 0 0}.cash-person{font-weight:800;font-size:15px;margin:8px 0 4px}.method-card{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:86px}.method-card span{font-size:11px;color:var(--muted);font-weight:700}.method-card b{font:800 19px "Poppins",sans-serif}.closed-cash-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px}.closed-cash-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:color-mix(in srgb,var(--danger) 10%,var(--surface2));color:var(--danger);font-weight:900}.closed-cash-card h3{font-size:17px;margin-bottom:6px}.closed-cash-card p{margin:0}.sub-head{margin-top:8px;align-items:center}.sub-head h2{font-size:18px;margin:0}.cash-close-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.cash-close-summary>div{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:12px}.cash-close-summary span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.1em}.cash-close-summary b{display:block;margin-top:7px;font:800 16px "Poppins",sans-serif}

.report-filter{display:grid;grid-template-columns:minmax(160px,220px) minmax(160px,220px) auto;gap:12px;align-items:end}.report-main-grid{align-items:stretch}.report-ranking,.report-kpis{display:grid;gap:0;margin-top:14px}.report-ranking>div,.report-kpis>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border);font-size:11px}.report-ranking>div:last-child,.report-kpis>div:last-child{border-bottom:0}.report-ranking strong{font-size:10px;color:var(--muted);text-align:right}.report-section{display:flex;flex-direction:column;gap:10px}.report-section-head{display:flex;align-items:center;justify-content:space-between}.report-section-head h2{font-size:18px;margin:0;letter-spacing:-.02em}.reports-page .table{min-width:760px}

.public-tools{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.public-tool-btn{min-height:48px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--fg);font-size:11px;font-weight:800;box-shadow:none;transition:.16s}.public-tool-btn:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));transform:none}.public-tool-btn span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--primary);color:#111827;margin-left:5px;font-size:9px}.public-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.public-panel-head h2{font-size:17px;margin:0}.public-panel-head p{font-size:10px;color:var(--muted);margin:5px 0 0}.panel-close{width:30px;height:30px;border:0;border-radius:9px;background:var(--surface2);color:var(--muted);font-size:19px}.public-empty-panel{text-align:center;color:var(--muted);font-size:11px;padding:18px}.public-tab-items{display:grid;gap:0}.public-tab-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--border)}.public-tab-row b{font-size:12px}.public-tab-row small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.public-tab-row strong{font:700 11px "Poppins",sans-serif;white-space:nowrap}.public-tab-total{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.public-tab-total span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:800}.public-tab-total b{font:800 20px "Poppins",sans-serif;color:var(--primary)}
.public-brand-copy h1{margin-top:0}.public-orders-card{animation:panelReveal .18s ease}@keyframes panelReveal{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}

@media(max-width:1100px){.comanda-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}
@media(max-width:800px){
  #toast-root{top:12px;left:50%;right:auto;width:calc(100% - 24px);transform:translateX(-50%)}body:has(.urgent-call-banner:not(.hidden)) #toast-root{top:72px}
  .urgent-call-banner{top:8px;width:calc(100% - 20px);justify-content:flex-start}.urgent-call-banner>span:nth-child(2){flex:1}.urgent-action{padding:7px 8px}
  .cash-control{align-items:flex-start;flex-direction:column}.cash-control .actions{width:100%}.cash-control .actions .btn{flex:1}.closed-cash-card{grid-template-columns:auto 1fr}.closed-cash-card>.btn{grid-column:1/-1;width:100%}.report-filter{grid-template-columns:1fr 1fr}.report-filter>.btn{grid-column:1/-1}.public-tools{grid-template-columns:1fr}.public-brand{justify-content:center}.content{width:100%}
}
@media(max-width:520px){.comanda-grid{grid-template-columns:1fr}.cash-close-summary{grid-template-columns:1fr}.urgent-flash{display:none}.urgent-call-banner{gap:8px}.urgent-call-banner>span:nth-child(2){font-size:11px}.public-tool-btn{min-height:45px}}

/* ===== IDMIX Tech V6 ===== */
.kitchen-readonly{margin-top:12px;min-height:34px;border:1px dashed var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:color-mix(in srgb,var(--surface3) 60%,transparent)}
.modules-card{grid-column:1/-1}.module-switch-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.module-switch{min-height:68px;border:1px solid var(--border);border-radius:14px;background:var(--surface2);padding:12px 13px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}.module-switch>span{display:flex;flex-direction:column;gap:4px}.module-switch b{font-size:11px}.module-switch small{font-size:9px;color:var(--muted);line-height:1.35}.module-switch input{position:absolute;opacity:0;pointer-events:none}.module-switch i{width:42px;height:24px;border-radius:999px;background:var(--surface3);border:1px solid var(--border);position:relative;flex:0 0 auto;transition:.18s}.module-switch i:after{content:"";position:absolute;width:18px;height:18px;left:2px;top:2px;border-radius:50%;background:var(--muted);transition:.18s}.module-switch input:checked+i{background:color-mix(in srgb,var(--primary) 24%,var(--surface3));border-color:color-mix(in srgb,var(--primary) 48%,var(--border))}.module-switch input:checked+i:after{left:20px;background:var(--primary)}
.detail-toolbar .btn.danger{margin-right:auto}.public-tools.hidden+.public-orders-card{display:none}.public-menu-page .sticky-call.hidden{display:none!important}
@media(max-width:800px){.module-switch-list{grid-template-columns:1fr}.detail-toolbar{display:flex;flex-wrap:wrap}.detail-toolbar .btn{flex:1 1 150px}.detail-toolbar .btn.danger{margin-right:0}}
@media(max-width:520px){.detail-toolbar{grid-template-columns:none}.detail-toolbar .btn{width:100%;flex-basis:100%}.modules-card{grid-column:auto}}
.waiter-response{margin:0 0 9px;padding:8px 10px;border-radius:10px;border:1px solid color-mix(in srgb,var(--green) 38%,var(--border));background:color-mix(in srgb,var(--green) 10%,var(--surface2));color:var(--green);font-size:10px;font-weight:850;text-align:center}

/* ===== IDMIX Tech V6.2 ===== */
.login-version{text-align:center;margin-top:12px;color:var(--muted);font:700 9px "Poppins",sans-serif;letter-spacing:.08em;text-transform:uppercase}.login-brand-v6 .brand-mark.big img{width:100%;height:100%;object-fit:contain;background:#fff}
.dashboard-cash{margin-bottom:2px}.dashboard-cash-open{display:grid;grid-template-columns:minmax(210px,1fr) minmax(360px,1.5fr) auto;align-items:center}.dashboard-cash-open h3{margin:3px 0 6px}.dashboard-cash-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.dashboard-cash-kpis span{border:1px solid var(--border);background:var(--surface2);border-radius:12px;padding:10px}.dashboard-cash-kpis small{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.dashboard-cash-kpis b{display:block;margin-top:5px;font:800 13px "Poppins",sans-serif}.dashboard-cash-open>.actions{justify-content:flex-end;margin:0}
.permission-admin-note{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));border-radius:15px;background:color-mix(in srgb,var(--primary) 7%,var(--surface2));margin-bottom:16px}.permission-admin-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--primary);color:#111827;font-size:18px;font-weight:900}.permission-admin-note h3{margin:0 0 4px}.permission-admin-note p{margin:0}.permissions-grid{display:grid;gap:14px}.permission-role-card{border:1px solid var(--border);border-radius:16px;background:var(--surface2);padding:14px}.permission-role-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:8px}.permission-role-head h4{margin:3px 0 3px;font-size:15px}.permission-role-head p{margin:0;color:var(--muted);font-size:9px}.permission-role-card .module-switch-list{margin-top:12px}.system-version-box{margin-top:15px;padding:12px;border-radius:12px;border:1px solid var(--border);background:var(--surface2);display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center}.system-version-box span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:800}.system-version-box b{font:800 12px "Poppins",sans-serif;color:var(--primary)}.system-version-box small{grid-column:1/-1;color:var(--muted);font-size:9px}.role-lock-note{padding:11px 12px;border-radius:11px;border:1px solid var(--border);background:var(--surface2);display:flex;flex-direction:column;gap:3px}.role-lock-note b{font-size:11px}.role-lock-note span{font-size:9px;color:var(--muted)}
@media(max-width:1100px){.dashboard-cash-open{grid-template-columns:1fr}.dashboard-cash-open>.actions{justify-content:flex-start}.dashboard-cash-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.dashboard-cash-kpis{grid-template-columns:1fr}.permission-role-head{flex-direction:column}.permission-role-card .module-switch-list{grid-template-columns:1fr}}

/* IDMIX Tech V7/V8 — base pública preservada */
.public-order-pill.delivered{background:color-mix(in srgb,var(--green) 9%,var(--surface2));color:color-mix(in srgb,var(--green) 75%,var(--muted));border:1px solid color-mix(in srgb,var(--green) 24%,var(--border))}
.public-order-row.status-delivered{opacity:.76}
.module-config-card{display:flex;flex-direction:column;gap:14px}.module-master-switch{padding-bottom:14px;border-bottom:1px solid var(--border)}.module-config-body{display:grid;gap:8px}.module-config-card .check{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--fg)}.module-config-card .check input{accent-color:var(--primary)}
.token-preview{margin-top:10px;font-size:11px;color:var(--muted)}.token-preview b{color:var(--primary);letter-spacing:.08em}
.integration-list{display:grid;gap:0}.integration-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 4px;border-bottom:1px solid var(--border)}.integration-row:last-child{border-bottom:0}.integration-row>div{display:flex;flex-direction:column;gap:3px}
.warning-card{border-color:color-mix(in srgb,var(--warning) 45%,var(--border));background:color-mix(in srgb,var(--warning) 7%,var(--surface));color:var(--warning)}
.public-brand{justify-content:center;text-align:center}.public-brand-copy{text-align:center}
@media(max-width:800px){.public-brand{justify-content:center}.public-brand-copy{text-align:center}}

/* ===== IDMIX Tech V8 — Master SaaS / responsividade ===== */
.nav{min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:3px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.userbox{flex:0 0 auto;background:var(--surface);position:relative;z-index:2}.top-user-wrap{position:relative}.top-user{height:42px;max-width:220px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--fg);display:flex;align-items:center;gap:9px;padding:5px 11px 5px 6px;box-shadow:none}.top-user>span{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 16%,var(--surface2));color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.04em}.top-user>b{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.user-menu-popover{position:absolute;right:0;top:50px;z-index:150;width:220px;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:none;padding:13px;display:flex;flex-direction:column;gap:5px}.user-menu-popover strong{font-size:12px}.user-menu-popover small{color:var(--muted);font-size:9px}.user-menu-popover button{margin-top:7px;border:1px solid color-mix(in srgb,var(--danger) 30%,var(--border));background:color-mix(in srgb,var(--danger) 8%,var(--surface2));color:var(--danger);border-radius:10px;padding:9px;font-weight:800;text-align:left}
.master-page .stat-card{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,#fff 2%),var(--surface));border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:none;display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:118px}.master-page .stat-card>span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:800}.master-page .stat-card>b{font:800 23px "Poppins",sans-serif;letter-spacing:-.04em}.master-page .stat-card>small{font-size:9px;color:var(--muted)}
.plan-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:14px}.plan-card{border:1px solid var(--border);background:var(--surface2);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px}.plan-card.inactive{opacity:.58}.plan-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.plan-card-head h3{margin:3px 0 0}.plan-card-head>b{font:800 16px "Poppins",sans-serif;color:var(--primary);white-space:nowrap}.plan-card-head>b small{font:700 8px "Poppins",sans-serif;color:var(--muted)}.plan-modules{display:flex;gap:5px;flex-wrap:wrap;min-height:30px}.plan-modules span,.plan-selected-modules{font-size:9px}.plan-modules span{padding:5px 7px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted)}.plan-module-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;border:1px solid var(--border);border-radius:13px;background:var(--surface2);padding:11px}.plan-selected-modules{margin-top:10px;padding:10px 11px;border:1px dashed var(--border);border-radius:12px;color:var(--muted);line-height:1.7}.plan-selected-modules b{color:var(--fg)}.tenant-url-preview{margin-top:10px;padding:11px 12px;border-radius:11px;background:var(--surface2);border:1px solid var(--border);color:var(--muted);font:700 10px "Poppins",sans-serif;word-break:break-all}.tenant-url-preview b{color:var(--primary)}.client-detail-list{display:grid;gap:0}.client-detail-list>div{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid var(--border)}.client-detail-list>div:last-child{border-bottom:0}.client-detail-list span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.client-detail-list b{font-size:11px;text-align:right}.compact-head{align-items:center}.empty-inline{grid-column:1/-1;padding:30px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:15px}.saas-page .table{min-width:900px}
@media(max-width:800px){.top-user{max-width:48px;width:42px;padding:5px;justify-content:center}.top-user>b{display:none}.user-menu-popover{right:0;top:48px}.mobile-nav{justify-content:flex-start;padding-right:70px}.mobile-nav .nav-link{flex:0 0 64px}.plan-module-selector{grid-template-columns:1fr}.master-page .g4{grid-template-columns:1fr 1fr}.client-detail-list>div{align-items:flex-start;flex-direction:column;gap:4px}.client-detail-list b{text-align:left}.saas-page .page-head .actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.saas-page .page-head .actions .btn{width:100%}}
@media(max-width:520px){.master-page .g4{grid-template-columns:1fr}.topbar{position:sticky;top:0;z-index:65;background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(15px)}.user-menu-popover{position:fixed;top:58px;right:12px;width:min(260px,calc(100vw - 24px))}}


/* IDMIX Tech V9 */
.qr-video{width:100%;max-height:330px;object-fit:cover;border-radius:14px;background:#000}.report-choice-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 20px}.report-choice-list label{display:flex;gap:9px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:10px}.delivery-board{display:grid;grid-template-columns:repeat(6,minmax(210px,1fr));gap:12px;overflow-x:auto;padding-bottom:12px}.delivery-col{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:12px;min-height:280px}.delivery-col>h3{font-size:13px;display:flex;justify-content:space-between;margin:0 0 10px}.delivery-card{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:11px;margin-bottom:9px;display:grid;gap:8px}.delivery-card small{color:var(--muted)}.delivery-product{display:grid;grid-template-columns:auto 1fr 75px;gap:10px;align-items:center;border-bottom:1px solid var(--border);padding:8px 0}.compact-input{padding:7px!important}.public-menu{max-width:760px;margin:auto;padding:18px}.menu-order-line{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}
@media(max-width:700px){.report-choice-list{grid-template-columns:1fr}.delivery-board{grid-template-columns:repeat(6,82vw)}}

.delivery-public-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.delivery-public-products .menu-card{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:12px}.delivery-public-products .menu-card p{margin:4px 0}.delivery-public-products .menu-card strong{color:var(--primary)}
.delivery-detail-item{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border)}.delivery-detail-item:last-of-type{border-bottom:0}.mini-card{padding:14px}

/* ===== IDMIX Tech V9.1 ===== */
/* Alertas sempre visíveis acima de modais, sem cobrir cabeçalho/fechar. */
#toast-root{z-index:560}
.modal-wrap{padding-top:88px;padding-bottom:22px}
.modal{max-height:calc(100vh - 116px)}
.qty-inline{display:inline-flex;align-items:center;justify-content:center;margin-left:5px;padding:2px 7px;border-radius:999px;background:color-mix(in srgb,var(--primary) 14%,var(--surface2));color:var(--primary);font:800 10px "Poppins",sans-serif}.item-unit-price{margin-left:5px;color:var(--muted);font:700 10px "Poppins",sans-serif}
.registered-tables{display:grid;gap:8px;margin-top:12px}.registered-table-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);background:var(--surface2);border-radius:13px;padding:11px 12px}.registered-table-row>div:first-child{display:flex;flex-direction:column;gap:3px}.registered-table-row.inactive{opacity:.62}.registered-table-row .actions{margin:0}
.permission-protected{padding:16px;border:1px dashed var(--border);border-radius:14px;background:var(--surface2)}.permission-protected b{font-size:12px}.permission-protected p{margin:6px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.module-readonly-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--border)}.module-readonly-head>span:first-child{display:flex;flex-direction:column;gap:4px}.module-readonly-head b{font-size:11px}.module-readonly-head small{font-size:9px;color:var(--muted);line-height:1.35}
.comanda-card-print-note{font-size:10px;color:#444;margin-top:8px}.code-box{padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}.code-box b{font:900 16px "Poppins",sans-serif;letter-spacing:.08em}
@media(max-width:520px){.modal-wrap{padding:78px 12px 14px}.modal{max-height:calc(100vh - 96px)}.registered-table-row{align-items:flex-start;flex-direction:column}.registered-table-row .actions{width:100%}.registered-table-row .actions .btn{flex:1}}


/* IDMIX Tech 1.0.0 — ajustes incrementais */
.sidebar{height:100dvh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column}
.sidebar .nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:18px}
.sidebar .userbox{flex:0 0 auto}
.master-status-bars{display:grid;gap:12px;margin-top:16px}.master-status-bars>div{display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:center}.master-status-bars i{grid-column:1/-1;display:block;height:7px;border-radius:20px;background:var(--primary);max-width:100%}.master-finance-filters{display:grid;grid-template-columns:2fr 1.2fr 1fr 1fr 1fr auto;gap:10px;align-items:end}.report-section-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.info-box{border:1px solid var(--border);background:var(--soft);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:3px}.info-box span{font-size:12px;color:var(--muted)}
@media(max-width:1000px){.master-finance-filters{grid-template-columns:1fr 1fr}.master-finance-filters .btn{width:100%}}
@media(max-width:640px){.master-finance-filters,.report-section-picker{grid-template-columns:1fr}}

/* ===== IDMIX Tech 1.0.0 ===== */
.sidebar{min-height:0;overflow:hidden}
.sidebar .nav{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding-bottom:10px}
.master-filter{grid-template-columns:minmax(180px,1.5fr) minmax(130px,.8fr) minmax(170px,1fr) minmax(140px,.8fr) minmax(140px,.8fr) auto}
.report-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.master-page [data-master-report]{margin-top:14px}
@media(max-width:1100px){.master-filter{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.master-filter{grid-template-columns:1fr}.report-check-grid{grid-template-columns:1fr}}

/* Cardápio por estoque e resposta do garçom acima do botão */

/* Organização do Master e ações administrativas */
.settings-section-card{display:flex;flex-direction:column;gap:12px}.settings-section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid var(--border);padding-bottom:12px;margin-bottom:2px}.settings-section-head h3{margin:3px 0 2px}.plans-admin-card{overflow:hidden}.plan-actions{margin-top:14px;display:grid;grid-template-columns:1fr 1fr}.ghost-danger{background:transparent!important;border:1px solid color-mix(in srgb,#ef4444 55%,var(--border))!important;color:#ef4444!important}.master-page .table-wrap table td:last-child{min-width:210px}.master-page .actions{flex-wrap:wrap}@media(max-width:720px){.plan-actions{grid-template-columns:1fr}.master-page .table-wrap{overflow:auto}.master-page .table-wrap table{min-width:760px}}


/* IDMIX Tech 1.0.0 — foco da comanda e correções mobile */
@media(max-width:800px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  .shell.command-focus .mobile-nav{display:none!important}
  .shell.command-focus .main{margin-left:0;padding-bottom:22px;width:100%;max-width:100%}
  .shell.command-focus .topbar{position:sticky;top:0;z-index:70;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(16px)}
  .shell.command-focus .content{width:100%;max-width:100%;padding:8px 12px 24px}
  .shell.command-focus .comanda-detail{width:100%;max-width:100%;min-width:0}
  .shell.command-focus .comanda-detail>.back{display:inline-flex;min-height:38px;align-items:center;padding:7px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--fg);position:relative;z-index:2}
  .shell.command-focus .page-head{width:100%;min-width:0}
  .shell.command-focus .page-title{font-size:25px;overflow-wrap:anywhere}
  .shell.command-focus .detail-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px}
  .shell.command-focus .detail-toolbar .btn{width:100%;min-width:0;white-space:normal;line-height:1.2;min-height:44px}
  .shell.command-focus .items-card,.shell.command-focus .payment-card{width:100%;max-width:100%;overflow:visible}
  .shell.command-focus .item-row{min-width:0}
  .shell.command-focus .item-main{width:100%;overflow-wrap:anywhere}
  .shell.command-focus .item-actions{flex-wrap:wrap;justify-content:flex-start}
  .shell.command-focus .payment-card{padding:17px}
  .public-menu{width:100%;max-width:100%;padding:12px}
  .public-menu .card{padding:16px;border-radius:15px}
  .public-menu-head{padding-top:8px}
  .menu-order-line{align-items:flex-start;flex-wrap:wrap;overflow-wrap:anywhere}
  .menu-order-line>span:first-child{min-width:0;flex:1 1 65%}
}
@media(max-width:390px){
  .shell.command-focus .detail-toolbar{grid-template-columns:1fr}
  .shell.command-focus .page-title{font-size:23px}
}

/* ===== IDMIX Tech 1.0.0 — responsividade global ===== */
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{min-width:280px}
img,svg,video,canvas{max-width:100%}
img{height:auto}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
.content{width:min(100%,1460px);margin:0 auto}
.card,.table-wrap,.modal,.kcol,.comanda-card,.product-pick,.delivery-col,.delivery-card{min-width:0}
.actions,.detail-toolbar,.modal-actions,.theme-buttons,.filter-bar{max-width:100%}
.table-wrap{max-width:100%;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-width:thin}
.table-wrap table{max-width:none}
.table td,.table th{vertical-align:middle}
.table td{overflow-wrap:anywhere}
.input,.select,.textarea{min-width:0;max-width:100%}
.page-head>*,.card-head>*,.product-head>*,.payment-card>*,.cash-control>*,.closed-cash-card>*{min-width:0}
.page-title,.page-sub,.card h3,.modal-title{overflow-wrap:anywhere}

@media(max-width:1280px){
  .sidebar{width:232px;padding-left:14px;padding-right:14px}
  .main{margin-left:232px}
  .content{padding-left:24px;padding-right:24px}
  .topbar{padding-left:24px;padding-right:24px}
  .brand-name{max-width:142px}
  .comanda-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .delivery-board{grid-template-columns:repeat(6,minmax(230px,1fr))}
}

@media(max-width:1024px){
  .sidebar{width:210px;padding:18px 12px}
  .main{margin-left:210px}
  .brand{padding:0 4px;margin-bottom:18px}
  .brand-name{max-width:120px;font-size:15px}
  .nav-link{padding:10px 9px;gap:9px;font-size:12px}
  .content{padding:6px 20px 28px}
  .topbar{padding:0 20px}
  .page-title{font-size:31px}
  .g3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .comanda-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kitchen{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kitchen .kcol:last-child{grid-column:1/-1}
  .dashboard-main-grid,.settings-grid{grid-template-columns:1fr}
  .qr-card{grid-column:auto}
  .master-filter,.master-finance-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-filter{grid-template-columns:1fr 1fr auto}
}

@media(max-width:900px){
  .sidebar{display:none!important}
  .main{margin-left:0!important;width:100%;padding-bottom:calc(92px + env(safe-area-inset-bottom))}
  .topbar{height:64px;padding:0 16px;position:sticky;top:0;z-index:65;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent)}
  .content{padding:10px 16px 28px;width:100%;max-width:none}
  .mobile-nav{display:flex;position:fixed;z-index:90;left:0;right:0;bottom:0;justify-content:flex-start;gap:2px;overflow-x:auto;overflow-y:hidden;padding:7px 8px calc(8px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(20px);border-top:1px solid var(--border);box-shadow:none;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  .mobile-nav::-webkit-scrollbar{display:none}
  .mobile-nav .nav-link{flex:0 0 68px;min-width:68px;min-height:58px;padding:6px 4px;flex-direction:column;justify-content:center;gap:3px;font-size:8px;line-height:1.15;text-align:center;background:transparent;transform:none!important}
  .mobile-nav .nav-link.active{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary);box-shadow:none}
  .mobile-nav .nav-icon{width:28px;height:25px;background:transparent;font-size:13px}
  .page-head{align-items:flex-start;flex-wrap:wrap}
  .page-head>.actions{flex-wrap:wrap}
  .page-title{font-size:clamp(26px,6vw,31px)}
  .page-sub{font-size:12px;line-height:1.55}
  .card{padding:18px}
  .g2,.g3{grid-template-columns:1fr}
  .g4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .comanda-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kitchen{grid-template-columns:1fr}
  .kitchen .kcol:last-child{grid-column:auto}
  .form-row,.qr-layout,.master-filter,.master-finance-filters,.report-filter{grid-template-columns:1fr}
  .report-filter>.btn{grid-column:auto;width:100%}
  .dashboard-cash-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dashboard-cash-open{grid-template-columns:1fr}
  .dashboard-cash-open>.actions{justify-content:flex-start}
  .settings-grid{grid-template-columns:1fr}
  .qr-layout{gap:16px}
  .qr{margin-inline:auto;max-width:100%}
  .qr-controls{max-width:none}
  .logo-upload{align-items:flex-start;flex-wrap:wrap}
  .cash-control,.payment-card{align-items:flex-start;flex-direction:column}
  .cash-control .actions,.payment-card .actions{width:100%}
  .payment-button{width:100%;min-width:0}
  .closed-cash-card{grid-template-columns:auto 1fr}
  .closed-cash-card>.btn{grid-column:1/-1;width:100%}
  .product-pick-top,.product-actions{align-items:flex-start;flex-wrap:wrap}
  .product-actions{width:100%}
  .picker-actions{flex-wrap:wrap}
  .delivery-board{grid-template-columns:repeat(6,minmax(78vw,330px));scroll-snap-type:x proximity}
  .delivery-col{scroll-snap-align:start}
  .delivery-product{grid-template-columns:auto minmax(0,1fr) 72px}
  .delivery-public-products{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))}
  .popover{right:12px;left:12px;top:68px;width:auto;max-height:calc(100dvh - 90px);overflow:auto}
  .top-user{max-width:48px;width:42px;padding:5px;justify-content:center}
  .top-user>b{display:none}
  .user-menu-popover{position:fixed;right:12px;top:58px;width:min(280px,calc(100vw - 24px));max-height:calc(100dvh - 74px);overflow:auto}
  .public-hero{padding:22px 14px}
  .public-brand h1{font-size:25px}
  .menu-category-grid{grid-template-columns:1fr}
  .menu-public,.public-menu{padding-left:12px;padding-right:12px}
  .sticky-call{padding:10px 12px calc(10px + env(safe-area-inset-bottom))}
  .public-orders-head,.public-order-row{align-items:flex-start}
  .public-order-row{flex-wrap:wrap}
  .settings-section-head{flex-direction:column}
  .settings-section-head>.actions{width:100%}
  .settings-section-head>.actions .btn{flex:1 1 150px}
  .saas-page .page-head .actions{width:100%;display:flex;flex-wrap:wrap}
  .saas-page .page-head .actions .btn{flex:1 1 180px}
  .shell.command-focus .mobile-nav{display:none!important}
  .shell.command-focus .main{padding-bottom:calc(22px + env(safe-area-inset-bottom))}
}

@media(max-width:640px){
  .content{padding:8px 12px 24px}
  .topbar{padding:0 12px}
  .page-head{flex-direction:column;gap:12px}
  .page-head>.btn,.page-head>.actions{width:100%}
  .page-head>.actions .btn{flex:1 1 140px}
  .g4,.master-page .g4{grid-template-columns:1fr}
  .comanda-grid{grid-template-columns:1fr}
  .comanda-card{min-height:0;padding:16px}
  .comanda-card h3{white-space:normal;overflow:visible}
  .comanda-foot{flex-wrap:wrap}
  .card{padding:16px;border-radius:15px}
  .card-head{flex-direction:column;align-items:flex-start;margin-bottom:13px}
  .card-head>.actions{width:100%}
  .stat-card{min-height:92px}
  .dashboard-cash-kpis{grid-template-columns:1fr}
  .report-check-grid,.report-section-picker,.report-choice-list,.plan-module-selector{grid-template-columns:1fr}
  .detail-toolbar{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%;gap:8px}
  .detail-toolbar .btn{width:100%!important;min-width:0;white-space:normal;line-height:1.2;min-height:44px;flex:none}
  .item-row{align-items:flex-start;flex-direction:column}
  .item-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}
  .item-subtotal{margin-right:auto;text-align:left;min-width:0}
  .total-row{align-items:flex-start;gap:8px;flex-direction:column}
  .total{font-size:22px}
  .modal-wrap{place-items:end center;padding:70px 0 0;background:rgba(2,6,23,.76)}
  .modal{width:100%;max-width:none;max-height:calc(100dvh - 70px);border-radius:20px 20px 0 0;border-bottom:0;padding:18px 14px calc(16px + env(safe-area-inset-bottom));animation:modalSheetIn .2s ease}
  .modal-lg{width:100%}
  .modal-head{position:sticky;top:-18px;z-index:3;background:var(--surface);padding:15px 0 11px;margin-bottom:12px;border-bottom:1px solid var(--border)}
  .x{width:40px;height:40px;flex:0 0 40px}
  .modal-actions{position:sticky;bottom:calc(-16px - env(safe-area-inset-bottom));z-index:3;background:var(--surface);padding:12px 0 calc(12px + env(safe-area-inset-bottom));margin-top:16px;flex-wrap:wrap}
  .modal-actions .btn{flex:1 1 130px;min-height:44px}
  .input,.select,.textarea{font-size:16px}
  .btn:not(.compact){min-height:44px}
  .btn{white-space:normal;line-height:1.2;text-align:center}
  .filter-bar{margin-inline:-12px;padding-inline:12px;padding-bottom:5px;scroll-padding-inline:12px}
  .table-wrap{margin-inline:-2px;border-radius:13px}
  .table{min-width:620px}
  .table th,.table td{padding:12px 11px;font-size:11px}
  .master-page .table-wrap table,.saas-page .table,.reports-page .table{min-width:720px}
  .actions{gap:6px}
  .actions .btn.compact{min-height:36px}
  .registered-table-row,.client-detail-list>div{align-items:flex-start;flex-direction:column}
  .registered-table-row .actions{width:100%}
  .registered-table-row .actions .btn{flex:1 1 110px}
  .client-detail-list b{text-align:left;max-width:100%;overflow-wrap:anywhere}
  .delivery-board{grid-template-columns:repeat(6,minmax(86vw,280px))}
  .delivery-product{grid-template-columns:1fr}
  .delivery-product>*{width:100%}
  .delivery-public-products .menu-card{align-items:flex-start;flex-direction:column}
  .public-tools{grid-template-columns:1fr}
  .menu-item{align-items:flex-start}
  .menu-img{width:64px;height:64px;flex-basis:64px}
  .login{padding:14px}
  .login-card{padding:22px 18px;border-radius:18px}
  .login-card h2{font-size:24px}
  #toast-root{top:calc(10px + env(safe-area-inset-top));left:10px;right:10px;width:auto;transform:none}
  body:has(.urgent-call-banner:not(.hidden)) #toast-root{top:78px}
  .toast{padding:12px 13px;font-size:12px;border-radius:13px;transform:translateY(-12px)}
  .toast.show{transform:none}
  .urgent-call-banner{top:calc(8px + env(safe-area-inset-top));width:calc(100% - 16px);max-width:none;left:50%;transform:translateX(-50%);padding:9px 10px}
  .urgent-call-banner>span:nth-child(2){font-size:11px;white-space:normal;line-height:1.25}
  .urgent-action{min-height:36px}
  .public-menu-page{padding-bottom:calc(118px + env(safe-area-inset-bottom))}
}

@media(max-width:420px){
  .content{padding-left:10px;padding-right:10px}
  .topbar{padding-left:10px;padding-right:10px}
  .page-title{font-size:24px}
  .page-sub{font-size:11px}
  .card{padding:14px}
  .detail-toolbar{grid-template-columns:1fr!important}
  .form-row{gap:10px}
  .modal{padding-left:12px;padding-right:12px}
  .mobile-nav .nav-link{flex-basis:62px;min-width:62px}
  .mobile-nav .nav-icon{font-size:12px}
  .public-logo{width:56px;height:56px}
  .public-brand h1{font-size:23px}
  .menu-item{gap:9px;padding:9px}
  .menu-img{width:56px;height:56px;flex-basis:56px}
  .menu-info>b{font-size:12px}
  .menu-price{font-size:12px}
  .qr img{width:min(170px,70vw);height:auto;aspect-ratio:1}
  .closed-cash-card{grid-template-columns:1fr}
  .closed-cash-icon{width:44px;height:44px}
  .closed-cash-card>.btn{grid-column:auto}
  .plan-card-head{flex-direction:column}
  .plan-card-head>b{white-space:normal}
}

@media(max-width:340px){
  .content{padding-left:8px;padding-right:8px}
  .page-title{font-size:22px}
  .top-btn{width:38px;height:38px}
  .top-user{width:38px;height:38px}
  .top-user>span{width:27px;height:27px}
  .mobile-nav .nav-link{flex-basis:58px;min-width:58px;font-size:7px}
  .btn{padding-left:10px;padding-right:10px}
}

@media(max-height:520px) and (orientation:landscape) and (max-width:900px){
  .topbar{height:54px}
  .main{padding-bottom:70px}
  .mobile-nav{padding-top:4px;padding-bottom:calc(4px + env(safe-area-inset-bottom))}
  .mobile-nav .nav-link{min-height:48px}
  .mobile-nav .nav-icon{height:20px}
  .content{padding-top:6px}
  .modal-wrap{padding-top:44px}
  .modal{max-height:calc(100dvh - 44px)}
  .user-menu-popover{top:50px}
}

@media(pointer:coarse){
  .btn,.filter-btn,.top-btn,.top-user,.theme-btn,.qty button,.inline-stepper button,.x{touch-action:manipulation}
  .btn.compact{min-height:36px}
  .nav-link{touch-action:manipulation}
}

@keyframes modalSheetIn{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
body.modal-open{overflow:hidden}


/* IDMIX Tech 1.0.0 — padronização visual e tabelas */
.page-title{font-size:30px;line-height:1.12;letter-spacing:-.035em}
.page-sub{font-size:12px;line-height:1.55;max-width:760px}
.card h3{font-size:14px;line-height:1.35}
.card h2,.sub-head h2{font-size:18px;line-height:1.3}
.table th,.table td{font-size:11px;padding:12px 14px}
.table th{font-size:8px}
.compact-data-table .table{min-width:0}
.compact-data-table .table td:first-child{width:34%;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.07em}
.registered-tables-table .table{min-width:560px}
.row-inactive{opacity:.58}
.public-command-menu{margin-top:20px}
@media(max-width:800px){.page-title{font-size:27px}.card h2,.sub-head h2{font-size:17px}}
@media(max-width:520px){.page-title{font-size:24px}.page-sub{font-size:11px}.card{padding:17px}.table th,.table td{padding:10px 12px}}

/* IDMIX Tech 1.0.0 — tabelas e tipografia padronizadas */
.table-wrap table{width:100%;border-collapse:collapse}
.table-wrap table th,.table-wrap table td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left;font-size:11px;line-height:1.4;vertical-align:middle}
.table-wrap table th{font-size:8px;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);background:var(--surface2);font-weight:800}
.table-wrap table tr:last-child td{border-bottom:0}
.table-wrap table tbody tr:hover{background:color-mix(in srgb,var(--surface2) 55%,transparent)}
.table-wrap table b,.table-wrap table strong{font-size:inherit}
.page-sub,.small,.tiny{overflow-wrap:anywhere}
@media(max-width:520px){.table-wrap table th,.table-wrap table td{padding:10px 11px}.page-head .actions .btn{font-size:11px}}

/* IDMIX Tech 1.0.0 — mensalidade do estabelecimento no Dashboard */
.dashboard-subscription{margin:0 0 18px}
.subscription-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:22px;padding:20px 22px;border:1px solid var(--line)}
.subscription-card.is-overdue{border-color:rgba(239,68,68,.34)}
.subscription-card.is-ok{border-color:rgba(34,197,94,.25)}
.subscription-main{min-width:0}
.subscription-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:3px}
.subscription-title-row h3{margin:0;font-size:18px;line-height:1.25}
.subscription-main p{margin:5px 0 0}
.subscription-amount{display:flex;flex-direction:column;align-items:flex-end;gap:3px;min-width:120px}
.subscription-amount small{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.subscription-amount b{font-size:18px;white-space:nowrap}
.subscription-pay-btn{white-space:nowrap}
.subscription-payment-modal .center-qr{margin:4px auto;max-width:280px}
.subscription-payment-modal .center-qr img{display:block;width:min(260px,72vw);height:auto;margin:auto}
.break-anywhere{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:760px){.subscription-card{grid-template-columns:1fr;gap:14px;padding:18px}.subscription-amount{align-items:flex-start;min-width:0}.subscription-pay-btn{width:100%}}

/* IDMIX Tech 1.0.0 — aparência SaaS, navegação e controles modernos */
.ui-icon{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.nav-icon .ui-icon{width:16px;height:16px}
.brand-name span{font:700 10px "Poppins",sans-serif;color:var(--primary);letter-spacing:0;margin-left:3px}
.autosave-status{min-height:34px;display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid var(--border);border-radius:999px;background:var(--surface2);font-size:10px;font-weight:750;color:var(--muted);white-space:nowrap;transition:.16s}
.autosave-status:before{content:"";width:7px;height:7px;border-radius:999px;background:currentColor;opacity:.75}
.autosave-status.saved{color:var(--green);background:color-mix(in srgb,var(--green) 7%,var(--surface2));border-color:color-mix(in srgb,var(--green) 22%,var(--border))}
.autosave-status.pending{color:var(--warning)}
.autosave-status.saving{color:var(--secondary)}
.autosave-status.saving:before{animation:autosavePulse .8s ease-in-out infinite alternate}
.autosave-status.error{color:var(--danger);background:color-mix(in srgb,var(--danger) 7%,var(--surface2));border-color:color-mix(in srgb,var(--danger) 24%,var(--border))}
@keyframes autosavePulse{to{opacity:.2;transform:scale(.72)}}

:root[data-ui-radius="rounded"]{--radius:18px;--radius-sm:12px}
:root[data-ui-radius="soft"]{--radius:11px;--radius-sm:8px}
:root[data-ui-radius="square"]{--radius:5px;--radius-sm:4px}
:root[data-ui-radius="square"] .btn,:root[data-ui-radius="square"] .input,:root[data-ui-radius="square"] .select,:root[data-ui-radius="square"] .textarea,:root[data-ui-radius="square"] .nav-link,:root[data-ui-radius="square"] .top-btn{border-radius:5px}
:root[data-ui-radius="soft"] .btn,:root[data-ui-radius="soft"] .input,:root[data-ui-radius="soft"] .select,:root[data-ui-radius="soft"] .textarea,:root[data-ui-radius="soft"] .nav-link,:root[data-ui-radius="soft"] .top-btn{border-radius:9px}
:root[data-ui-motion="off"] *,:root[data-ui-motion="off"] *:before,:root[data-ui-motion="off"] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
:root[data-ui-density="compact"] .content{padding-top:4px;padding-bottom:22px}
:root[data-ui-density="compact"] .space{gap:12px}
:root[data-ui-density="compact"] .grid{gap:11px}
:root[data-ui-density="compact"] .card{padding:16px}
:root[data-ui-density="compact"] .stat-card{min-height:88px}
:root[data-ui-density="compact"] .table-wrap table th,:root[data-ui-density="compact"] .table-wrap table td{padding:9px 11px}
:root[data-ui-density="compact"] .btn{min-height:36px;padding:8px 12px}
:root[data-ui-density="compact"] .nav-link{padding:8px 10px}
:root[data-ui-density="compact"] .form-row{gap:10px}

/* Botões mais consistentes e rápidos visualmente */
.btn,.top-btn,.theme-btn,.filter-btn,.public-tool-btn{border:1px solid color-mix(in srgb,var(--border) 92%,transparent);box-shadow:none}
.btn{background:linear-gradient(180deg,color-mix(in srgb,var(--surface2) 96%,#fff 4%),var(--surface2))}
.btn.primary{border-color:color-mix(in srgb,var(--primary) 75%,#0000);background:var(--primary);box-shadow:none}
.btn.green{border-color:color-mix(in srgb,var(--green) 70%,#0000);background:var(--green)}
.btn.danger{border-color:color-mix(in srgb,var(--danger) 70%,#0000);background:var(--danger)}
.btn.outline{background:color-mix(in srgb,var(--surface) 82%,transparent)}
.btn .ui-icon,.top-btn .ui-icon,.public-tool-btn .ui-icon{width:16px;height:16px}
.top-btn{display:grid;place-items:center}
.top-btn .ui-icon{width:16px;height:16px}
.logout,.user-menu-popover button{display:flex;align-items:center;gap:7px}

/* QR contextual no Cardápio: abaixo de "Mesa X" / "Comanda X" */
.public-brand-copy{min-width:0}
.public-brand-copy h2{margin:5px 0 0;font-size:15px;line-height:1.25;letter-spacing:-.02em}
.public-context-qr{display:grid;justify-items:start;gap:5px;margin-top:10px}
.public-context-qr img{display:block;width:112px;height:112px;object-fit:contain;padding:6px;background:#fff;border:1px solid color-mix(in srgb,var(--border) 82%,#fff);border-radius:12px;box-shadow:none}
.public-context-qr small{max-width:180px;font-size:9px;line-height:1.35;color:var(--muted)}

/* Cards de aparência */
.appearance-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.appearance-choice-grid .check{margin:0;min-height:42px;padding:9px 11px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface2);align-items:center}
.appearance-choice-grid .check:has(input:checked){border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 7%,var(--surface2));color:var(--fg)}

/* Menu superior no desktop */
@media(min-width:901px){
  .shell.menu-pos-top .sidebar{position:sticky;inset:auto;top:0;width:100%;height:72px;min-height:72px;padding:9px 22px;display:flex;flex-direction:row;align-items:center;gap:16px;border-right:0;border-bottom:1px solid var(--border);box-shadow:none}
  .shell.menu-pos-top .brand{flex:0 0 auto;margin:0;padding:0;min-width:180px}
  .shell.menu-pos-top .brand-mark{width:38px;height:38px;flex-basis:38px;border-radius:11px}
  .shell.menu-pos-top .brand-sub{display:none}
  .shell.menu-pos-top .brand-name{max-width:none}
  .shell.menu-pos-top .nav{min-width:0;display:flex;flex-direction:row;align-items:center;gap:4px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding:2px 0}
  .shell.menu-pos-top .nav::-webkit-scrollbar{display:none}
  .shell.menu-pos-top .nav-link{flex:0 0 auto;min-height:42px;padding:8px 11px;transform:none!important}
  .shell.menu-pos-top .nav-icon{width:22px;height:22px;background:transparent}
  .shell.menu-pos-top .userbox{flex:0 0 auto;border:0;padding:0 0 0 8px;max-width:170px}
  .shell.menu-pos-top .userbox .small{display:none}
  .shell.menu-pos-top .logout{padding-top:3px;font-size:10px}
  .shell.menu-pos-top .main{margin-left:0;width:100%}
  .shell.menu-pos-top .topbar{height:58px;padding-top:4px}
  .shell.menu-pos-top .content{padding-top:2px}
}

/* Posição do menu no celular */
@media(max-width:900px){
  .shell.mobile-menu-top .main{padding-top:calc(68px + env(safe-area-inset-top));padding-bottom:24px}
  .shell.mobile-menu-top .topbar{top:calc(66px + env(safe-area-inset-top))}
  .shell.mobile-menu-top .mobile-nav{top:0;bottom:auto;padding:calc(6px + env(safe-area-inset-top)) 8px 6px;border-top:0;border-bottom:1px solid var(--border);box-shadow:none}
  .shell.mobile-menu-top.command-focus .main{padding-top:0}
  .shell.mobile-menu-top.command-focus .topbar{top:0}
  .public-context-qr{justify-items:center}
  .public-context-qr small{text-align:center}
}
@media(max-width:640px){
  .autosave-status{width:100%;justify-content:center}
  .appearance-choice-grid{grid-template-columns:1fr}
  .public-context-qr img{width:104px;height:104px}
}

/* Polimento do SaaS */
.saas-page>.card,.master-page>.card,.settings-section-card{contain:layout paint;content-visibility:auto;contain-intrinsic-size:120px}
.saas-page .table-wrap tbody tr{transition:background .12s ease}
.saas-page .page-head,.master-page .page-head{margin-bottom:10px}
.saas-page .stat-card,.master-page .stat-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:18px;box-shadow:none}

/* IDMIX Tech 1.0.0 — otimizações para dispositivos móveis */
@media(max-width:900px){.topbar,.mobile-nav{backdrop-filter:none;-webkit-backdrop-filter:none}.bg-noise:before{display:none}}

/* IDMIX Tech 1.0.0 — múltiplas comandas por mesa e Central do Sistema */
.comanda-thanks{display:flex;align-items:center;gap:13px;border-color:color-mix(in srgb,var(--green) 28%,var(--border));background:color-mix(in srgb,var(--green) 6%,var(--surface))}
.comanda-thanks>.ui-icon{width:27px;height:27px;color:var(--green);flex:0 0 auto}
.comanda-thanks h3{margin:0 0 3px;font-size:15px}.comanda-thanks p{margin:0}
.public-thank-you{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--green) 28%,var(--border));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--green) 7%,var(--surface));color:var(--fg)}
.public-thank-you>.ui-icon{width:23px;height:23px;color:var(--green);flex:0 0 auto}.public-thank-you div{display:grid;gap:2px}.public-thank-you b{font-size:13px}.public-thank-you span{font-size:11px;color:var(--muted)}
.system-center-page{max-width:1280px}.system-status-grid .stat-card b{font-size:22px}
.system-health{padding:0;overflow:hidden}.system-health-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border-bottom:1px solid var(--border);font-size:12px}.system-health-row:last-child{border-bottom:0}.system-health-row span{display:flex;align-items:center;gap:9px;color:var(--muted)}.system-health-row .ui-icon{width:16px;height:16px}.system-health-row b{font-size:11px;text-align:right;overflow-wrap:anywhere}
.system-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.system-tabs .btn{display:inline-flex;align-items:center;gap:7px;text-decoration:none}
.system-tool-card{padding:0;overflow:hidden}.system-tool-head{padding:16px 18px;border-bottom:1px solid var(--border);background:var(--surface2)}.system-tool-head h3{margin:0 0 3px;font-size:14px}.system-tool-head p{margin:0}
.system-tool-frame{display:block;width:100%;height:min(760px,76vh);min-height:520px;border:0;background:transparent}
.comanda-person-hint{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface2);font-size:11px;color:var(--muted)}
@media(max-width:900px){.system-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.system-tool-frame{height:720px;min-height:620px}.system-tabs .btn{flex:1 1 210px;justify-content:center}}
@media(max-width:560px){.system-status-grid{grid-template-columns:1fr 1fr}.system-health-row{align-items:flex-start}.system-tool-card{margin-left:-4px;margin-right:-4px}.system-tool-frame{height:760px}.public-thank-you{align-items:flex-start}}

/* IDMIX Tech 1.0.0 — contexto público, vínculo de comanda e acabamento SaaS */
.theme-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px}.theme-btn .ui-icon{width:16px;height:16px}.theme-btn.active .ui-icon{filter:none}
.public-brand-copy{display:grid;justify-items:center}.public-context-qr{justify-items:center;margin-top:8px}.public-context-qr small{text-align:center}.public-context-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:10px}.public-context-meta>*{display:inline-flex;align-items:center;min-height:26px;padding:5px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface2);font-size:10px}.public-context-meta b{color:var(--primary)}
.public-link-comanda{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));border-radius:16px;background:color-mix(in srgb,var(--primary) 5%,var(--surface))}.public-link-comanda>div{display:grid;gap:3px}.public-link-comanda b{font-size:12px}.public-link-comanda span{font-size:10px;color:var(--muted)}
.public-menu-heading{margin:5px 0 13px}.public-menu-heading h2{font-size:20px;margin:3px 0 0;letter-spacing:-.03em}.public-tool-btn{display:flex;align-items:center;justify-content:center;gap:7px}.public-tool-btn .ui-icon{width:17px;height:17px}.public-tool-btn>span{display:inline!important;min-width:0!important;height:auto!important;padding:0!important;background:transparent!important;color:inherit!important;margin:0!important;font-size:inherit!important}.public-tool-btn em{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--primary);color:#111827;font-size:9px;font-style:normal}
.qr-action-grid{width:100%;align-items:stretch}.comanda-qr-modal{max-width:620px;margin:auto}.comanda-qr-modal .qr{margin:auto}.comanda-qr-modal .code-box{text-align:center}.comanda-qr-modal .btn{justify-content:center}
.system-tabs #system-tab-diagnostic.primary{background:var(--primary);color:#111827}
@media(max-width:700px){.public-link-comanda{align-items:stretch;flex-direction:column}.public-link-comanda .btn{width:100%;justify-content:center}.qr-action-grid{grid-template-columns:1fr}.public-context-meta{gap:5px}.public-context-meta>*{font-size:9px}.public-menu-heading h2{font-size:18px}}


/* IDMIX Tech 1.0.0 — ícones de alertas superiores alinhados ao estilo linear do menu */
#ready-top-btn .ui-icon,#call-top-btn .ui-icon{width:16px;height:16px;color:currentColor}

/* IDMIX Tech 1.0.0 — QR público */
.public-context-qr img{width:132px;height:132px}
@media(max-width:520px){.public-context-qr img{width:124px;height:124px}}

/* IDMIX Tech 1.0.0 — ajuste de escala do ícone de Pedidos prontos */
#ready-top-btn,#call-top-btn{position:relative;display:block;padding:0;line-height:0;overflow:visible}
#ready-top-btn>.ui-icon,#call-top-btn>.ui-icon{position:absolute;left:50%;top:50%;display:block;margin:0;transform:translate(-50%,-50%);transform-origin:center;flex:none}
#ready-top-btn>.ui-icon{width:23px;height:23px}
#call-top-btn>.ui-icon{width:19px;height:19px}
#ready-count,#call-count{position:absolute;inset:0;display:block;pointer-events:none;line-height:normal}
#ready-count>.badge-count,#call-count>.badge-count{right:-6px;top:-6px}

/* Manutenção nativa em blocos */
.maintenance-native{overflow:hidden}
.maintenance-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.maintenance-version{display:flex;align-items:center;gap:6px;white-space:nowrap;padding:9px 12px;border:1px solid var(--border,#dfe5ee);border-radius:999px;background:var(--surface-2,#f7f9fc);font-size:12px}
.maintenance-blocks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.maintenance-block{display:flex;flex-direction:column;gap:12px;min-height:330px;padding:18px;border:1px solid var(--border,#dfe5ee);border-radius:18px;background:var(--surface-2,#f8fafc)}
.maintenance-block-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:rgba(245,165,36,.13);color:var(--accent,#f5a524)}
.maintenance-block-icon svg{width:22px;height:22px}
.maintenance-block-copy h4{margin:4px 0 7px;font-size:17px}
.maintenance-block-copy p{margin:0;color:var(--muted,#6b7280);font-size:13px;line-height:1.55}
.maintenance-file-picker{position:relative;display:flex;align-items:center;min-height:46px;padding:10px 12px;border:1px dashed var(--border-strong,#cbd5e1);border-radius:12px;background:var(--surface,#fff);cursor:pointer;font-weight:700;overflow:hidden}
.maintenance-file-picker input{position:absolute;inset:0;opacity:0;cursor:pointer}
.maintenance-file-picker span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.maintenance-safe-note{display:flex;align-items:center;min-height:46px;padding:10px 12px;border:1px solid var(--border,#dfe5ee);border-radius:12px;background:var(--surface,#fff);color:var(--muted,#6b7280);font-size:12px;line-height:1.4}
.maintenance-block>.btn{margin-top:auto}
.maintenance-action-status{min-height:18px;font-size:12px;line-height:1.45;color:var(--muted,#6b7280)}
.maintenance-action-status.success{color:#22a060}
.maintenance-action-status.error{color:#d84b5f}
.maintenance-action-status.loading{color:var(--accent,#f5a524)}
html.dark .maintenance-block,html.dark .maintenance-file-picker,html.dark .maintenance-safe-note,html.dark .maintenance-version{background:rgba(255,255,255,.035)}
@media(max-width:980px){.maintenance-blocks{grid-template-columns:1fr}.maintenance-block{min-height:0}.maintenance-head{align-items:flex-start;flex-direction:column}}

/* IDMIX Tech 1.0.0 — interface profissional, temas, menu inferior e QR dinâmico */
:root[data-ui-style="modern"] .card{background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,#fff 2%),var(--surface))}
:root[data-ui-style="classic"]{--radius:10px;--radius-sm:8px;--shadow:0 10px 28px rgba(0,0,0,.13);--shadow-soft:0 3px 12px rgba(0,0,0,.08)}
:root[data-ui-style="classic"] body{background-image:none}
:root[data-ui-style="classic"] .card,:root[data-ui-style="classic"] .sidebar,:root[data-ui-style="classic"] .topbar{background:var(--surface);backdrop-filter:none}
:root[data-ui-style="classic"] .card:after{display:none}
:root[data-ui-style="classic"] .btn{background:var(--surface2);border-radius:8px}
:root[data-ui-style="classic"] .btn.primary{background:var(--primary)}
:root[data-ui-style="minimal"]{--radius:12px;--radius-sm:9px;--shadow:0 0 0 transparent;--shadow-soft:0 0 0 transparent}
:root[data-ui-style="minimal"] body{background-image:none}
:root[data-ui-style="minimal"] .card,:root[data-ui-style="minimal"] .sidebar,:root[data-ui-style="minimal"] .table-wrap,:root[data-ui-style="minimal"] .top-btn{box-shadow:none;background:var(--surface)}
:root[data-ui-style="minimal"] .card:after{display:none}
:root[data-ui-style="glass"] .card,:root[data-ui-style="glass"] .sidebar,:root[data-ui-style="glass"] .top-btn,:root[data-ui-style="glass"] .table-wrap{background:color-mix(in srgb,var(--surface) 77%,transparent);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
:root[data-ui-style="glass"] body{background-image:radial-gradient(circle at 88% 0,color-mix(in srgb,var(--primary) 18%,transparent),transparent 34%),radial-gradient(circle at 4% 65%,color-mix(in srgb,var(--secondary) 12%,transparent),transparent 30%)}

/* Todos os botões e ícones seguem o mesmo sistema visual */
.btn,.theme-btn,.top-btn,.public-tool-btn{font-weight:720}
.btn>.ui-icon,.theme-btn>.ui-icon,.top-btn>.ui-icon,.public-tool-btn>.ui-icon,.logout>.ui-icon{display:block;flex:0 0 auto;stroke-width:1.9}
.btn:not(.compact)>.ui-icon{width:16px;height:16px}.btn.compact>.ui-icon{width:14px;height:14px}

/* Menu no computador também pode ficar embaixo */
@media(min-width:901px){
  .shell.menu-pos-bottom .sidebar{position:fixed;left:0;right:0;top:auto;bottom:0;width:100%;height:72px;min-height:72px;padding:9px 20px;display:flex;flex-direction:row;align-items:center;gap:14px;border-right:0;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:none;z-index:90}
  .shell.menu-pos-bottom .brand{flex:0 0 auto;margin:0;padding:0;min-width:auto}
  .shell.menu-pos-bottom .brand-mark{width:36px;height:36px;flex-basis:36px;border-radius:10px}
  .shell.menu-pos-bottom .brand>div:last-child{display:none}
  .shell.menu-pos-bottom .nav{min-width:0;display:flex;flex-direction:row;align-items:center;gap:4px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding:1px 0}
  .shell.menu-pos-bottom .nav::-webkit-scrollbar{display:none}
  .shell.menu-pos-bottom .nav-link{flex:0 0 auto;min-height:42px;padding:8px 11px;transform:none!important}
  .shell.menu-pos-bottom .nav-icon{width:22px;height:22px;background:transparent}
  .shell.menu-pos-bottom .userbox{flex:0 0 auto;border:0;padding:0;display:flex;align-items:center;gap:8px}
  .shell.menu-pos-bottom .userbox .small{display:none}.shell.menu-pos-bottom .user-name{max-width:110px;font-size:11px}
  .shell.menu-pos-bottom .logout{padding:7px;border:1px solid var(--border);border-radius:9px}.shell.menu-pos-bottom .logout span{display:none}
  .shell.menu-pos-bottom .main{margin-left:0;width:100%;padding-bottom:90px}
}

/* QR da mesa vira uma fila de QRs individuais das comandas abertas */
#public-context-qrs-shell{width:min(100%,780px);margin-top:10px}
.public-table-qrs-head{display:grid;gap:3px;text-align:center;margin-bottom:10px}.public-table-qrs-head b{font-size:12px}.public-table-qrs-head span{font-size:10px;color:var(--muted)}
.public-table-qrs{display:flex;gap:10px;max-width:min(86vw,760px);overflow-x:auto;padding:3px 3px 8px;scroll-snap-type:x proximity;scrollbar-width:thin}
.public-person-qr{position:relative;flex:0 0 190px;scroll-snap-align:start;display:grid;justify-items:center;gap:7px;padding:12px;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:none}
.public-person-qr img{width:132px;height:132px;padding:6px;background:#fff;border-radius:12px;border:1px solid #e5e7eb}.public-person-index{position:absolute;right:9px;top:9px;width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:var(--primary);color:#111827;font-size:10px;font-weight:900}
.public-person-copy{display:grid;gap:2px;text-align:center;max-width:100%}.public-person-copy b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-person-copy span{font-size:9px;color:var(--muted)}
.public-person-qr .btn{width:100%}.table-base-qr{justify-items:center}

/* Manutenção fica discreta e recolhida */
.maintenance-discreet{padding:0!important;overflow:visible}
.maintenance-discreet>summary{list-style:none}.maintenance-discreet>summary::-webkit-details-marker{display:none}
.maintenance-summary{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:11px;padding:13px 15px;cursor:pointer;user-select:none}
.maintenance-summary-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--surface2);color:var(--muted)}.maintenance-summary-icon .ui-icon{width:17px;height:17px}
.maintenance-summary>span:nth-child(2){display:grid;gap:2px}.maintenance-summary b{font-size:12px}.maintenance-summary small{font-size:9px;color:var(--muted)}
.maintenance-discreet .maintenance-version{padding:5px 8px;font-size:9px;background:transparent}
.maintenance-discreet .maintenance-blocks{padding:0 13px 13px;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.maintenance-discreet .maintenance-block{display:grid;grid-template-columns:32px 1fr;align-items:center;gap:8px;min-height:0;padding:11px;border-radius:12px;background:var(--surface2)}
.maintenance-discreet .maintenance-block-icon{width:30px;height:30px;border-radius:9px}.maintenance-discreet .maintenance-block-icon svg{width:15px;height:15px}
.maintenance-discreet .maintenance-block-copy h4{margin:0 0 2px;font-size:12px}.maintenance-discreet .maintenance-block-copy p{margin:0;font-size:9px;line-height:1.35}
.maintenance-discreet .maintenance-file-picker,.maintenance-discreet .select,.maintenance-discreet .btn,.maintenance-discreet .maintenance-action-status{grid-column:1/-1}
.maintenance-discreet .maintenance-file-picker{min-height:34px;padding:7px 9px;font-size:10px;border-radius:9px}.maintenance-discreet .select{min-height:34px;padding:7px 9px;font-size:10px;border-radius:9px}.maintenance-discreet .maintenance-action-status{min-height:0;font-size:9px}

/* Conectores e módulos administrativos */
.integration-provider-line{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}
.integration-provider-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--primary) 11%,var(--surface));color:var(--primary)}.integration-provider-icon .ui-icon{width:18px;height:18px}.integration-provider-line>div{display:grid;gap:2px}.integration-provider-line b{font-size:11px}.integration-provider-line small{font-size:9px;color:var(--muted)}
.wa-automation-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.wa-automation-list .check{margin:0;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface2);font-size:10px}
.wa-template-hint{margin-top:10px;padding:9px 11px;border-left:3px solid var(--primary);border-radius:8px;background:color-mix(in srgb,var(--primary) 6%,var(--surface2));font-size:9px;color:var(--muted);line-height:1.5}.wa-template-hint b{color:var(--fg)}
.wa-test-row{display:grid;grid-template-columns:1fr auto;gap:8px}.admin-modules-card{grid-column:1/-1}.admin-modules-card .settings-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.admin-modules-card .settings-section-head>.ui-icon{width:20px;height:20px;color:var(--primary)}.compact-module-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.compact-module-list .module-switch{margin:0}

@media(max-width:900px){
  .maintenance-discreet .maintenance-blocks{grid-template-columns:1fr}.maintenance-discreet .maintenance-block{grid-template-columns:32px 1fr}
  .wa-automation-list{grid-template-columns:1fr}.compact-module-list{grid-template-columns:1fr}.public-table-qrs{max-width:92vw}
}
@media(max-width:560px){.wa-test-row{grid-template-columns:1fr}.public-person-qr{flex-basis:172px}.public-person-qr img{width:120px;height:120px}.maintenance-summary{grid-template-columns:32px 1fr}.maintenance-summary .maintenance-version{display:none}}
.good-text{color:var(--green)!important}.danger-text{color:var(--danger)!important}
.option-icon .ui-icon{width:17px;height:17px;stroke-width:1.9}

/* IDMIX Tech 1.0.0 — acabamento visual, login, recuperação e estoque */
html,body{font-family:"Poppins",sans-serif;letter-spacing:-.006em}
button,input,select,textarea{font-family:inherit}.mono{font-family:"Poppins",sans-serif}.page-title,.login-title,.card h3,.card h4{font-family:"Poppins",sans-serif}
.login-v120{overflow:hidden;isolation:isolate}.login-v120 .login-background{position:absolute;inset:0;z-index:-2}.login-v120 .login-background img{width:100%;height:100%;object-fit:cover;display:block}.login-v120 .login-background span{position:absolute;inset:0;background:linear-gradient(115deg,rgba(6,10,18,.82),rgba(6,10,18,.45) 50%,rgba(6,10,18,.72)),linear-gradient(0deg,rgba(6,10,18,.38),transparent 45%)}
.login-v120 .login-box{position:relative;z-index:2}.login-v120 .login-brand-v6{justify-content:center;flex-direction:column;text-align:center;padding:0 8px}.login-v120 .login-brand-v6.login-brand-horizontal{flex-direction:row;text-align:left;align-items:center;gap:14px}.login-brand-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.login-brand-copy .brand-sub{margin-top:3px}.login-client-logo{overflow:hidden}.login-client-logo img{width:100%;height:100%;object-fit:contain;background:#fff;border-radius:inherit}.login-logo-fallback{font-size:22px;font-weight:900}.login-intro{margin:0 0 22px}.login-help-row{display:flex;justify-content:flex-end;margin-top:9px}.link-button{border:0;background:transparent;color:var(--primary);padding:4px 0;font-size:12px;font-weight:750}.login-copyright{text-align:center;margin-top:15px;color:color-mix(in srgb,var(--muted) 88%,transparent);font-size:10px;letter-spacing:.01em}.login-back{margin-bottom:15px}.recovery-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.recovery-method{position:relative}.recovery-method>input{position:absolute;opacity:0;pointer-events:none}.recovery-method>span{display:grid;grid-template-columns:22px 1fr;gap:2px 8px;align-items:center;border:1px solid var(--border);border-radius:13px;padding:12px;background:var(--surface2);cursor:pointer}.recovery-method svg{grid-row:1/3;width:18px}.recovery-method small{color:var(--muted);font-size:9px;overflow:hidden;text-overflow:ellipsis}.recovery-method>input:checked+span{border-color:var(--primary);box-shadow:none;background:color-mix(in srgb,var(--primary) 8%,var(--surface2))}
.login-bg-settings{display:grid;gap:9px}.login-bg-preview{height:135px;border:1px dashed var(--border);border-radius:14px;background:var(--surface2);overflow:hidden;display:grid;place-items:center;color:var(--muted);font-size:11px}.login-bg-preview img{width:100%;height:100%;object-fit:cover}.settings-subsection{margin-top:16px;padding:13px;border:1px solid var(--border);border-radius:14px;background:var(--surface2);display:grid;gap:10px}.settings-subsection>div:first-child{display:grid;gap:2px}.settings-subsection small{color:var(--muted);font-size:10px}
.product-code{font:800 9px "Poppins",sans-serif;color:var(--primary);letter-spacing:.07em;margin-bottom:3px}.image-error{opacity:.25}.inventory-import{min-width:0}.import-columns{display:grid;gap:7px;padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--surface2)}.import-columns code{display:block;white-space:normal;word-break:break-word;color:var(--primary);font-size:10px}.import-columns small{color:var(--muted);font-size:10px}.inventory-drop{display:grid;border:1px dashed var(--border);border-radius:15px;background:var(--surface2);min-height:120px;cursor:pointer}.inventory-drop input{display:none}.inventory-drop>span{display:grid;place-items:center;align-content:center;gap:5px;text-align:center;padding:18px}.inventory-drop svg{width:24px;height:24px;color:var(--primary)}.inventory-drop small{color:var(--muted)}
.wa-qr-panel{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:16px;align-items:center}.wa-qr-box{min-height:250px;border:1px dashed var(--border);border-radius:16px;background:var(--surface2);display:grid;place-items:center;padding:14px;text-align:center}.wa-qr-box>img{width:min(220px,100%);aspect-ratio:1;object-fit:contain;background:#fff;border-radius:12px;padding:8px}.wa-qr-box>small{display:block;margin-top:7px;color:var(--muted);font-size:9px}.wa-qr-placeholder,.wa-connected{display:grid;place-items:center;gap:6px;color:var(--muted)}.wa-qr-placeholder svg,.wa-connected svg{width:30px;height:30px;color:var(--primary)}.wa-qr-placeholder b,.wa-connected b{color:var(--fg)}.wa-connected svg{color:var(--green)}.wa-qr-side{display:grid;gap:12px}.wa-qr-side .actions{align-items:center}
.public-waiting-comanda{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--surface2) 88%,transparent);max-width:390px}.public-waiting-comanda>div{display:grid;gap:2px}.public-waiting-comanda small{color:var(--muted);font-size:9px;line-height:1.4}.waiting-pulse{width:10px;height:10px;border-radius:50%;background:var(--primary);box-shadow:none;animation:waitingPulse 1.7s infinite}@keyframes waitingPulse{0%{box-shadow:none}70%{box-shadow:none}100%{box-shadow:none}}
@media(max-width:680px){.wa-qr-panel{grid-template-columns:1fr}.recovery-methods{grid-template-columns:1fr}.login-v120 .login-brand-v6{justify-content:center}.login-v120 .login-background span{background:linear-gradient(0deg,rgba(6,10,18,.83),rgba(6,10,18,.54))}}

.settings-section-label{grid-column:1/-1;font-size:11px;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);padding:4px 2px 0}.comanda-code-read-row{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end}.comanda-code-read-row .btn{min-height:44px}.scan-success{border:1px solid color-mix(in srgb,#22c55e 48%,var(--border));background:color-mix(in srgb,#22c55e 8%,var(--surface));border-radius:12px;padding:10px 12px}


/* IDMIX Tech 1.0.3 — Delivery, manutenção, paginação e desempenho */
.delivery-page-pro .delivery-kpis .stat-card{min-height:104px}.delivery-controlbar{display:grid;gap:12px;padding:14px}.delivery-search-wrap{position:relative;display:flex;align-items:center}.delivery-search-wrap>.ui-icon{position:absolute;left:13px;width:17px;height:17px;color:var(--muted);z-index:2}.delivery-search-wrap .input{padding-left:40px}.delivery-filters{margin:0;overflow-x:auto;flex-wrap:nowrap}.delivery-board.professional{grid-template-columns:repeat(var(--delivery-cols,6),minmax(250px,1fr));gap:14px}.delivery-col-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}.delivery-col-head h3{margin:0;font-size:13px}.delivery-col-head span{display:grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:var(--surface3);font:800 10px "Poppins",sans-serif}.delivery-card{box-shadow:none;transition:transform .16s ease,border-color .16s ease}.delivery-card:hover{transform:none;border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}.delivery-card.is-overdue{border-color:color-mix(in srgb,#ef4444 66%,var(--border));box-shadow:none}.delivery-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.delivery-card-top>div{display:grid;gap:2px}.delivery-card-top b{font:800 10px "Poppins",sans-serif;color:var(--primary)}.delivery-card-top strong{font-size:13px}.delivery-overdue-badge{font-size:8px;font-weight:900;letter-spacing:.08em;background:#ef4444;color:#fff;padding:4px 6px;border-radius:999px}.delivery-card-meta{display:grid;gap:4px;font-size:9px;color:var(--muted)}.delivery-card-meta span{display:flex;align-items:center;gap:5px}.delivery-card-meta .ui-icon{width:12px;height:12px}.delivery-address{font-size:10px;line-height:1.45;padding:8px;border-radius:9px;background:var(--surface);border:1px solid var(--border)}.delivery-empty-col{display:grid;place-items:center;min-height:110px;color:var(--muted);font-size:10px;border:1px dashed var(--border);border-radius:11px}.delivery-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px;border-radius:15px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,var(--surface)),var(--surface));border:1px solid var(--border)}.delivery-detail-hero.is-overdue{border-color:#ef4444}.delivery-detail-hero h2{margin:4px 0 5px}.delivery-detail-hero p{margin:0;color:var(--muted);font-size:11px}.delivery-detail-total{text-align:right}.delivery-detail-total small{display:block;color:var(--muted)}.delivery-detail-total b{font-size:25px}.delivery-detail-item{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.delivery-detail-item>div{display:grid;gap:3px}.delivery-detail-item small{color:var(--muted)}.total-row.grand{font-size:15px}.delivery-timeline{display:grid;gap:12px;margin-top:12px}.delivery-timeline>div{display:grid;grid-template-columns:12px 1fr;gap:10px}.delivery-timeline i{width:10px;height:10px;border-radius:50%;background:var(--primary);margin-top:4px;box-shadow:none}.delivery-timeline span{display:grid;gap:2px}.delivery-timeline small,.delivery-timeline em{color:var(--muted);font-size:9px;font-style:normal}.section-title{display:flex;align-items:end;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--border);margin-top:4px}.section-title b{font-size:13px}.section-title span{font-size:9px;color:var(--muted)}.physical-card-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.physical-card-toolbar p{margin:4px 0 0}.compact-select{min-width:74px;width:auto}.physical-code{font-size:16px;letter-spacing:.12em}.physical-cards-panel .table-wrap{max-height:58vh;overflow:auto}
@media(max-width:800px){.delivery-board.professional{grid-template-columns:repeat(var(--delivery-cols,6),minmax(86vw,310px))}.delivery-detail-hero,.physical-card-toolbar{flex-direction:column}.delivery-detail-total{text-align:left}.section-title{align-items:flex-start;flex-direction:column}.delivery-kpis{grid-template-columns:1fr 1fr!important}}

.maintenance-inline-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.maintenance-inline-actions .btn{flex:0 0 auto}

/* IDMIX Tech 1.0.3 — paginação e manutenção */
.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 4px 4px;color:var(--muted,#7a8494);font-size:12px}.pagination-bar>div{display:flex;align-items:center;gap:10px}.pagination-bar b{min-width:62px;text-align:center;color:var(--text,#172033)}.pagination-bar button:disabled{opacity:.45;cursor:not-allowed}.maintenance-warning{display:flex;gap:10px;align-items:flex-start}.maintenance-warning b{white-space:nowrap}.maintenance-warning span{color:var(--muted,#7a8494)}.system-center-page .system-tool-frame{min-height:720px;width:100%;border:0;border-radius:14px;background:transparent}.system-center-page .system-tool-card{padding:6px}.system-status-grid .stat-card small{overflow-wrap:anywhere}@media(max-width:720px){.pagination-bar{align-items:stretch;flex-direction:column}.pagination-bar>div{justify-content:space-between}.system-center-page .system-tool-frame{min-height:900px}.maintenance-warning{flex-direction:column}}

/* IDMIX Tech 1.0.5 — configurações recolhíveis e permissões por perfil */
.settings-collapsible-card{padding:0!important;overflow:hidden}
.settings-card-summary{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:0;background:transparent;color:var(--fg);cursor:pointer;text-align:left}
.settings-card-summary>span:first-child{display:grid;gap:3px}.settings-card-summary b{font-size:12px}.settings-card-summary small{font-size:9px;color:var(--muted);font-weight:500}
.settings-card-chevron{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:var(--surface2);color:var(--muted);font-size:18px;transition:transform .16s ease}
.settings-collapse-body{display:none;padding:0 16px 16px}.settings-collapsible-card.open .settings-collapse-body{display:block}.settings-collapsible-card.open .settings-card-chevron{transform:rotate(180deg)}
.settings-collapsible-card .page-head.compact-head{margin-top:0}.settings-collapsible-card .permission-admin-note{margin-top:0}
@media(max-width:560px){.settings-card-summary{padding:12px 13px}.settings-collapse-body{padding:0 13px 13px}}


/* IDMIX Tech 1.0.5 — padronização visual, configurações sempre abertas e Delivery vertical */
:root{
  --ui-text:13px;
  --ui-small:11px;
  --ui-tiny:10px;
  --ui-label:10px;
  --ui-heading:15px;
  --ui-control-height:40px;
  --ui-icon-size:16px;
  --ui-gap:16px;
  --ui-card-padding:18px;
  --ui-control-radius:11px;
  --ui-card-radius:16px;
}
body{font-size:var(--ui-text);line-height:1.45}
.small{font-size:var(--ui-small);line-height:1.5}.tiny{font-size:var(--ui-tiny);line-height:1.45}
.page-title{font-size:32px;line-height:1.08}.page-sub{font-size:var(--ui-text);line-height:1.5}.eyebrow{font-size:var(--ui-tiny);line-height:1.3}
.space{gap:var(--ui-gap)}.grid{gap:var(--ui-gap)}.actions{gap:8px}
.card{padding:var(--ui-card-padding);border-radius:var(--ui-card-radius)}.card h3{font-size:var(--ui-heading);line-height:1.3}.card h4{font-size:13px;line-height:1.35}
.btn,.theme-btn,.filter-btn{min-height:var(--ui-control-height);font-size:12px;line-height:1.2;border-radius:var(--ui-control-radius);padding:10px 14px;font-weight:700}
.btn.compact{min-height:34px;font-size:11px;line-height:1.2;padding:7px 10px;border-radius:9px}
.input,.select,.textarea{font-size:12px;line-height:1.35;border-radius:var(--ui-control-radius);padding:10px 12px}.input,.select{min-height:var(--ui-control-height)}
.label{font-size:var(--ui-label);line-height:1.3;margin-bottom:6px}.field-gap{margin-top:14px}.form-row{gap:12px}
.ui-icon{width:var(--ui-icon-size);height:var(--ui-icon-size)}.btn>.ui-icon,.theme-btn>.ui-icon,.filter-btn>.ui-icon{width:var(--ui-icon-size);height:var(--ui-icon-size)}.btn.compact>.ui-icon{width:14px;height:14px}
.table th,.table td,.table-wrap table th,.table-wrap table td{font-size:12px;line-height:1.4}.table th,.table-wrap table th{font-size:var(--ui-label)}
.pill,.date-chip,.data-badge{font-size:var(--ui-tiny);line-height:1.2}.filter-btn{font-size:11px}.filter-btn b{font-size:var(--ui-tiny)}
.settings-grid{gap:var(--ui-gap);align-items:start}.settings-page .card{height:auto;min-height:0}.settings-page .settings-collapsible-card{padding:var(--ui-card-padding)!important;overflow:visible}.settings-page .settings-card-summary{display:none!important}.settings-page .settings-collapse-body{display:block!important;padding:0!important}.settings-page .settings-collapsible-card.open .settings-collapse-body{display:block!important}
.settings-subsection,.permission-role-card,.module-switch{border-radius:12px}.module-switch{min-height:64px;padding:11px 12px}.module-switch b{font-size:12px}.module-switch small,.permission-role-head p,.system-version-box small,.role-lock-note span{font-size:var(--ui-tiny);line-height:1.4}
.settings-section-head{gap:12px;padding-bottom:11px}.permission-admin-note{padding:12px;border-radius:13px}.permission-admin-icon{width:38px;height:38px;border-radius:11px;font-size:16px}
.registered-table-row{padding:11px 12px;border-radius:12px}

/* Delivery segue o fluxo vertical da operação: cada etapa fica em um bloco, uma abaixo da outra. */
.delivery-board.professional{display:flex;flex-direction:column;gap:14px;overflow:visible;padding-bottom:0;grid-template-columns:none!important}
.delivery-board.professional .delivery-col{width:100%;min-height:0;padding:14px;border-radius:18px;background:color-mix(in srgb,var(--surface) 86%,transparent)}
.delivery-board.professional .delivery-col-head{margin-bottom:12px}.delivery-board.professional .delivery-col-head h3{font-size:13px;line-height:1.35}
.delivery-board.professional .delivery-card{width:100%;margin:10px 0 0;padding:14px;border-radius:14px;gap:9px;background:var(--surface2)}
.delivery-board.professional .delivery-card:first-of-type{margin-top:0}
.delivery-card-top strong{font-size:13px;line-height:1.35}.delivery-card-meta{font-size:var(--ui-tiny);line-height:1.4}.delivery-address{font-size:var(--ui-small);line-height:1.45;padding:9px 10px}
.delivery-overdue-badge{font-size:9px}.delivery-empty-col{min-height:72px;font-size:var(--ui-small)}
.delivery-controlbar{gap:10px;padding:14px}.delivery-search-wrap>.ui-icon{width:var(--ui-icon-size);height:var(--ui-icon-size)}
.delivery-filters{flex-wrap:wrap;overflow:visible}

@media(max-width:800px){
  .page-title{font-size:28px}
  .delivery-board.professional{display:flex;grid-template-columns:none!important;overflow:visible}
  .delivery-board.professional .delivery-col{width:100%;scroll-snap-align:none}
  .delivery-kpis{grid-template-columns:1fr 1fr!important}
}
@media(max-width:520px){
  :root{--ui-card-padding:15px;--ui-gap:14px}
  .btn,.theme-btn,.filter-btn{min-height:40px}
  .settings-grid{grid-template-columns:1fr}
}
.settings-page .maintenance-always-open{padding:0!important;overflow:visible}
.settings-page .maintenance-always-open .maintenance-summary{cursor:default}
.settings-page .maintenance-always-open .maintenance-blocks{display:grid}

/* IDMIX Tech 1.0.6 — ajustes de navegação, permissões obrigatórias e indicadores do Delivery */
.module-switch-locked{position:relative;background:color-mix(in srgb,var(--primary) 5%,var(--surface2));border-color:color-mix(in srgb,var(--primary) 25%,var(--border));padding-right:94px}.module-switch-locked input{pointer-events:none}.module-switch-locked i{opacity:.75}.module-required-badge{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-style:normal;font-size:9px;font-weight:850;letter-spacing:.04em;color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 24%,var(--border));border-radius:999px;padding:5px 8px}.delivery-kpi-card{overflow:hidden}.delivery-kpi-card>div:last-child{min-width:0}.delivery-kpi-card small{display:block;margin-top:4px;color:var(--muted);font-size:var(--ui-tiny);line-height:1.35}.delivery-kpi-card.danger-soft .stat-icon{color:var(--danger);background:color-mix(in srgb,var(--danger) 10%,var(--surface2))}.delivery-filters .filter-btn b{display:inline-grid;place-items:center;min-width:23px;height:23px;padding:0 6px;margin-left:5px;border-radius:999px;background:var(--surface3);color:var(--muted);font:800 10px "Poppins",sans-serif}.delivery-filters .filter-btn.active b{background:color-mix(in srgb,var(--primary) 16%,var(--surface));color:var(--primary)}
@media(max-width:560px){.module-switch-locked{padding-right:12px;padding-bottom:42px}.module-required-badge{right:auto;left:12px;top:auto;bottom:10px;transform:none}}


/* IDMIX Tech 1.0.7 — origem da cozinha, itens do delivery, entregador e acompanhamento */
.k-origin-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:4px}.order-origin{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:3px 8px;border-radius:999px;border:1px solid var(--border);font-size:9px;font-weight:850;letter-spacing:.06em}.order-origin.delivery{background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);border-color:color-mix(in srgb,var(--primary) 28%,var(--border))}.order-origin.counter{background:var(--surface3);color:var(--muted)}
.delivery-card-products{display:grid;gap:6px;padding:9px 10px;border-radius:10px;background:var(--surface);border:1px solid var(--border)}.delivery-card-products>div{display:grid;grid-template-columns:auto 1fr;gap:4px 7px;align-items:start;font-size:var(--ui-small)}.delivery-card-products>div>b{font-family:"Poppins",sans-serif;color:var(--primary)}.delivery-card-products small{grid-column:2;color:var(--muted);line-height:1.35}.delivery-card-products.empty-products{color:var(--muted);font-size:var(--ui-small)}
.delivery-track-page{display:grid;gap:14px}.delivery-track-hero h2{margin:6px 0}.delivery-track-hero p{margin:0;color:var(--muted)}.track-courier{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--surface2);border:1px solid var(--border)}.track-steps{display:grid;gap:4px}.track-step{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:10px 0;opacity:.48}.track-step i{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--surface3);border:1px solid var(--border);font-style:normal;font-weight:850}.track-step span{display:grid;gap:2px}.track-step small{color:var(--muted)}.track-step.done{opacity:1}.track-step.done i{background:color-mix(in srgb,var(--primary) 14%,var(--surface));border-color:color-mix(in srgb,var(--primary) 35%,var(--border));color:var(--primary)}.track-step.current{opacity:1}.track-step.current span b{color:var(--primary)}

.delivery-courier-note{font-size:var(--ui-small);color:var(--muted);padding:4px 2px}.delivery-courier-note b{color:var(--text)}


/* IDMIX Tech 1.0.8 — fluxo Delivery dirigido pela Cozinha + comanda completa */
.delivery-kitchen-handoff{display:flex;align-items:center;justify-content:center;min-height:40px;padding:9px 12px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--primary);font-size:var(--ui-small);font-weight:800;text-align:center}
.delivery-detail-actions{display:flex;gap:8px;flex-wrap:wrap}.delivery-command-card{padding:var(--ui-card-padding)}.delivery-command-table th:first-child,.delivery-command-table td:first-child{width:70px}.delivery-command-table th:nth-child(3),.delivery-command-table th:nth-child(4),.delivery-command-table td:nth-child(3),.delivery-command-table td:nth-child(4){text-align:right;white-space:nowrap}.delivery-command-totals{display:grid;gap:6px;margin:12px 0 0 auto;width:min(360px,100%)}.delivery-command-totals>div{display:flex;justify-content:space-between;gap:20px;padding:5px 0}.delivery-command-totals .grand{margin-top:3px;padding-top:10px;border-top:1px solid var(--border);font-size:15px}.delivery-command-totals .grand b{color:var(--primary)}
@media(max-width:600px){.delivery-detail-actions>.btn{flex:1 1 auto}.delivery-command-table{min-width:560px}}

/* IDMIX Tech 1.0.9 — consistência Delivery, clientes, tipografia e modais seguros */
:root{
  --ui-scale:1;
  --app-font:"Poppins",sans-serif;
  --ui-text:calc(13px * var(--ui-scale));
  --ui-small:calc(11px * var(--ui-scale));
  --ui-tiny:calc(10px * var(--ui-scale));
  --ui-label:calc(10px * var(--ui-scale));
  --ui-heading:calc(15px * var(--ui-scale));
  --ui-icon-size:calc(16px * var(--ui-scale));
}
html,body,button,input,select,textarea{font-family:var(--app-font)!important}
.page-title{font-size:calc(32px * var(--ui-scale))}.modal-title{font-size:calc(18px * var(--ui-scale))}
.btn,.theme-btn,.filter-btn{font-size:calc(12px * var(--ui-scale))}.btn.compact{font-size:calc(11px * var(--ui-scale))}
.input,.select,.textarea,.table th,.table td,.table-wrap table th,.table-wrap table td{font-size:calc(12px * var(--ui-scale))}

/* Todo modal preserva o cabeçalho/fechar visível e nenhum conteúdo escapa da janela. */
.modal-wrap{padding:18px;overflow:hidden;align-items:center}
.modal{width:min(540px,calc(100vw - 36px));max-width:calc(100vw - 36px);max-height:calc(100dvh - 36px);overflow:auto;overscroll-behavior:contain;position:relative}
.modal-lg{width:min(820px,calc(100vw - 36px))}.modal-xl{width:min(1080px,calc(100vw - 36px))}
.modal-head{position:sticky;top:-23px;z-index:20;margin:-23px -23px 18px;padding:18px 23px 14px;background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.modal-head>*{min-width:0}.modal-title{overflow-wrap:anywhere}.modal .x{position:relative;z-index:22;flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;cursor:pointer}
.modal .grid,.modal .form-row,.modal .row,.modal .actions{min-width:0}.modal .grid>*,.modal .form-row>*,.modal .row>*{min-width:0;max-width:100%}
.modal input,.modal select,.modal textarea,.modal table,.modal img{max-width:100%}.modal .table-wrap{max-width:100%;overflow:auto}.modal pre,.modal code{white-space:pre-wrap;overflow-wrap:anywhere}

.delivery-customer-search{display:grid;gap:8px}.delivery-customer-results{display:grid;gap:6px;max-height:210px;overflow:auto}
.delivery-customer-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:10px 11px;border:1px solid var(--border);border-radius:11px;background:var(--surface2);color:var(--fg);cursor:pointer}.delivery-customer-option:hover{border-color:color-mix(in srgb,var(--primary) 42%,var(--border));background:color-mix(in srgb,var(--primary) 6%,var(--surface2))}.delivery-customer-option>span{display:grid;gap:2px;min-width:0}.delivery-customer-option small{color:var(--muted)}
.delivery-selected-customer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--primary) 7%,var(--surface))}.delivery-selected-customer>span{display:grid;gap:2px;min-width:0}.delivery-customer-editor{display:grid;gap:12px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}
.delivery-product-picker{display:grid;gap:10px}.delivery-product-picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}.delivery-product-picker-main{display:grid;gap:3px;min-width:0}.delivery-product-picker-main small{color:var(--muted)}.delivery-product-picker-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.delivery-product-picker-actions .input{width:70px;text-align:center}.delivery-draft-items{display:grid;gap:8px}.delivery-draft-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}.delivery-draft-row-main{display:grid;gap:3px;min-width:0}.delivery-draft-row-main small{color:var(--muted)}.delivery-draft-row-actions{display:flex;align-items:center;gap:6px}.delivery-draft-total{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;font-weight:850}

/* A comanda completa fica legível diretamente na tela do Delivery. */
.delivery-full-command{display:grid;gap:10px}.delivery-command-ident{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.delivery-command-ident>div{display:grid;gap:2px}.delivery-command-ident .physical-code{color:var(--primary)}
.delivery-card .delivery-command-table{min-width:540px}.delivery-card .table-wrap{background:var(--surface);border-radius:10px}.delivery-card .delivery-command-totals{font-size:var(--ui-small)}
.delivery-copy-link{white-space:normal;text-align:center}

@media(max-width:700px){
  .modal-wrap{padding:44px 0 0;place-items:end center}.modal,.modal-lg,.modal-xl{width:100%;max-width:none;max-height:calc(100dvh - 44px);border-radius:20px 20px 0 0;padding:18px 14px calc(16px + env(safe-area-inset-bottom))}.modal-head{top:-18px;margin:-18px -14px 14px;padding:14px 14px 11px}.page-title{font-size:calc(27px * var(--ui-scale))}
  .delivery-product-picker-row,.delivery-draft-row{grid-template-columns:1fr}.delivery-product-picker-actions,.delivery-draft-row-actions{justify-content:flex-start}.delivery-product-picker-actions .btn{flex:1}
  .delivery-selected-customer{align-items:flex-start;flex-direction:column}.delivery-selected-customer .actions{width:100%}.delivery-selected-customer .actions .btn{flex:1}
}

/* Ajuste pontual — contraste e cores exclusivas da tela de login */
.login-v120 .login-title{
  color:var(--fg);
}
.login-v120 .login-brand-copy .brand-sub,
.login-v120 .login-brand-v6 > .brand-sub{
  color:color-mix(in srgb,var(--fg) 72%,var(--muted));
}
.login-v120 .login-card h2{
  color:var(--fg);
}
.login-v120 .login-card .login-intro,
.login-v120 .login-card .small.muted{
  color:color-mix(in srgb,var(--fg) 58%,var(--muted));
}
.login-v120 .login-card .label{
  color:color-mix(in srgb,var(--fg) 68%,var(--muted));
}
.login-v120 .login-card .input{
  color:var(--fg);
}
.login-v120 .login-card .input::placeholder{
  color:color-mix(in srgb,var(--muted) 78%,transparent);
}
.login-v120 .login-copyright{
  color:color-mix(in srgb,var(--fg) 62%,var(--muted));
}
.login-v120:has(.login-background) .login-title{
  color:#ffffff;
  text-shadow:none;
}
.login-v120:has(.login-background) .login-brand-copy .brand-sub,
.login-v120:has(.login-background) .login-brand-v6 > .brand-sub{
  color:rgba(255,255,255,.78);
  text-shadow:none;
}
.login-v120:has(.login-background) .login-copyright{
  color:rgba(255,255,255,.72);
  text-shadow:none;
}

/* IDMIX Tech v1.0.14 — Central de Gestão e 2FA */
.management-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.management-card{display:flex;flex-direction:column;gap:12px;min-height:230px}.management-card h3{margin:0}.management-card p{margin:0;line-height:1.55}.management-card-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary)}.management-card-icon svg{width:21px;height:21px}.management-card-meta{display:flex;align-items:center;gap:8px;margin-top:auto;font-size:12px;color:var(--muted)}.management-card-meta svg{width:16px;height:16px}.management-security-state{font-size:18px!important;letter-spacing:.04em}.management-lists{align-items:start}.compact-empty{padding:28px 12px}.receipt-row{display:grid;grid-template-columns:minmax(220px,2fr) minmax(100px,.7fr) minmax(120px,.8fr) auto;gap:10px;align-items:center;margin-bottom:10px}.inventory-count-table{max-height:58vh}.inventory-count-input{max-width:160px}.management-product-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:330px;overflow:auto;padding:8px;border:1px solid var(--border);border-radius:var(--radius)}.management-product-checks label{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:10px;border-radius:10px;background:var(--surface-soft)}.management-product-checks b{font-size:12px}.management-simple-checks{display:flex;flex-direction:column;gap:8px;max-height:260px;overflow:auto}.management-simple-checks label{padding:9px 10px;border:1px solid var(--border);border-radius:10px}.management-recipe-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:360px;overflow:auto}.management-recipe-list label{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:10px;align-items:center;padding:9px 10px;border:1px solid var(--border);border-radius:10px}.management-recipe-list small{color:var(--muted)}.management-check{align-self:end;min-height:44px}.login-2fa-wrap{margin-top:14px;padding:12px;border:1px solid color-mix(in srgb,var(--primary) 45%,var(--border));border-radius:var(--radius);background:color-mix(in srgb,var(--primary) 7%,transparent)}.login-2fa-wrap .tiny{margin:7px 0 0}.success-card{padding:16px;border:1px solid color-mix(in srgb,var(--success,#22c55e) 35%,var(--border));border-radius:var(--radius);background:color-mix(in srgb,var(--success,#22c55e) 8%,transparent)}
@media(max-width:1180px){.management-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.management-recipe-list{grid-template-columns:1fr}}
@media(max-width:760px){.management-grid{grid-template-columns:1fr}.receipt-row{grid-template-columns:1fr 1fr}.receipt-row .select{grid-column:1/-1}.management-product-checks{grid-template-columns:1fr}.management-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* IDMIX Tech v1.0.14 — PDV Venda Rápida / Balcão */
.pdv-page{min-height:calc(100vh - 120px)}
.pdv-page-head{align-items:center}
.pdv-head-status{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:999px;padding:8px 12px;font-size:12px;background:var(--card)}
.pdv-head-status span{width:9px;height:9px;border-radius:50%;display:block;background:#ef4444;box-shadow:none}
.pdv-head-status.open span{background:#22c55e;box-shadow:none}
.pdv-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,390px);gap:18px;align-items:start}
.pdv-catalog{min-width:0}
.pdv-search-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.pdv-search-wrap{position:relative;flex:1}
.pdv-search-wrap .ui-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:19px;height:19px;opacity:.65;z-index:2}
.pdv-search-wrap .input{padding-left:44px;height:50px;font-size:15px}
.pdv-shortcut{font-size:11px;color:var(--muted);white-space:nowrap}
.pdv-categories{display:flex;gap:8px;overflow:auto;padding:2px 0 12px;scrollbar-width:thin}
.pdv-cat{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:999px;padding:8px 13px;font-weight:700;font-size:12px;white-space:nowrap;cursor:pointer}
.pdv-cat.active{border-color:var(--primary);box-shadow:none;color:var(--primary)}
.pdv-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.pdv-product{appearance:none;border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:var(--radius,16px);padding:0;overflow:hidden;text-align:left;cursor:pointer;min-height:190px;display:flex;flex-direction:column;transition:border-color .14s ease,background-color .14s ease}
.pdv-product:hover{transform:none;border-color:color-mix(in srgb,var(--primary) 65%,var(--border));box-shadow:none}
.pdv-product:active{transform:none}
.pdv-product.disabled{opacity:.48;cursor:not-allowed;filter:saturate(.7)}
.pdv-product img,.pdv-product-placeholder{width:100%;height:92px;object-fit:cover;background:var(--soft);display:flex;align-items:center;justify-content:center;font-size:26px}
.pdv-product-body{display:grid;gap:5px;padding:11px 12px 12px;min-width:0}
.pdv-product-body small{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pdv-product-body b{font-size:13px;line-height:1.25;min-height:32px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pdv-product-body>span{font-weight:900;color:var(--primary);font-size:15px}
.pdv-product-body em{font-style:normal;font-size:10px;color:var(--muted)}
.pdv-product-body em.low{color:#f59e0b}
.pdv-cart{position:relative;top:auto;padding:16px;max-height:none;display:flex;flex-direction:column;gap:12px}
.pdv-cart-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.pdv-cart-head h2{margin:2px 0 0;font-size:20px}
.pdv-cart-lines{display:grid;gap:10px;overflow:auto;min-height:120px;max-height:44vh;padding-right:2px}
.pdv-cart-line{border:1px solid var(--border);border-radius:13px;padding:11px;background:var(--soft)}
.pdv-line-top,.pdv-line-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}
.pdv-line-top>div{display:grid;gap:2px;min-width:0}
.pdv-line-top b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pdv-line-top small{font-size:10px;color:var(--muted)}
.pdv-remove{border:0;background:transparent;color:var(--muted);font-size:22px;cursor:pointer;line-height:1;padding:2px 4px}
.pdv-line-actions{margin-top:9px}
.pdv-line-actions strong{font-size:13px}
.pdv-note{margin-top:8px;height:34px!important;font-size:11px!important;padding:7px 9px!important}
.pdv-cart-empty{min-height:180px;display:grid;place-items:center;align-content:center;text-align:center;gap:5px;color:var(--muted)}
.pdv-cart-empty>div{font-size:31px;opacity:.55}
.pdv-cart-empty b{color:var(--text)}
.pdv-cart-empty small{font-size:11px}
.pdv-total{display:flex;align-items:end;justify-content:space-between;border-top:1px solid var(--border);padding-top:13px}
.pdv-total span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}
.pdv-total b{font-size:25px;line-height:1;color:var(--primary)}
.pdv-cash-warning,.pdv-cash-ok{border-radius:12px;padding:10px 11px;font-size:11px}
.pdv-cash-warning{display:grid;gap:5px;border:1px solid rgba(239,68,68,.25);background:rgba(239,68,68,.07)}
.pdv-cash-warning b{color:#ef4444}
.pdv-cash-warning span{color:var(--muted)}
.pdv-cash-ok{background:rgba(34,197,94,.08);border:1px solid rgba(34,197,94,.22);color:#22c55e;font-weight:800}
.pdv-checkout{min-height:48px;font-size:14px}
.pdv-checkout .ui-icon{width:18px;height:18px}
.pdv-change{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);background:var(--soft);border-radius:12px;padding:14px}
.pdv-change b{font-size:22px;color:#22c55e}
.pdv-change b.danger{color:#ef4444}
.pdv-empty-products{grid-column:1/-1;padding:36px}
@media(max-width:1280px){.pdv-products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1040px){.pdv-shell{grid-template-columns:minmax(0,1fr) 330px}.pdv-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.pdv-shell{grid-template-columns:1fr}.pdv-cart{position:relative;top:auto;max-height:none;order:-1}.pdv-cart-lines{max-height:34vh}.pdv-products{grid-template-columns:repeat(2,minmax(0,1fr))}.pdv-shortcut{display:none}}
@media(max-width:520px){.pdv-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pdv-product{min-height:166px}.pdv-product img,.pdv-product-placeholder{height:76px}.pdv-product-body{padding:9px}.pdv-product-body b{font-size:12px}.pdv-search-row{display:block}.pdv-page-head{align-items:flex-start}.pdv-head-status{margin-top:8px}}


/* IDMIX Tech 1.0.14 — consistência visual, Configurações organizadas e modais sem sobreposição */
:root{--ui-scale:1;--ui-text:13px;--ui-small:11px;--ui-tiny:10px;--ui-label:10px;--ui-heading:15px;--ui-control-radius:0px;--ui-card-radius:0px;--radius:0px;--radius-sm:0px}
html{scrollbar-gutter:stable}body{font-weight:400;line-height:1.45}b,strong{font-weight:600}
.page-title{font-size:30px;font-weight:600;letter-spacing:-.025em;line-height:1.12}.page-sub{font-size:13px;font-weight:400;line-height:1.5;color:var(--muted);max-width:72ch}.eyebrow{font-size:9px;font-weight:600;letter-spacing:.14em}.card h2,.card h3,.card h4,.modal-title,.settings-group-head h2{font-weight:600;letter-spacing:-.01em}.card h3{font-size:15px}.card p{line-height:1.5}.label{font-weight:500;letter-spacing:.08em}.stat-label{font-weight:500}.stat-value{font-weight:600}.nav-link,.btn,.theme-btn,.filter-btn{font-weight:500}.btn{white-space:normal;line-height:1.25}.btn.compact{white-space:nowrap}.table th{font-weight:500}.table td{font-weight:400}
.card,.btn,.input,.select,.textarea,.top-btn,.nav-link,.nav-icon,.brand-mark,.stat-icon,.table-wrap,.empty,.popover,.pop-item,.settings-subsection,.permission-role-card,.module-switch,.registered-table-row,.info-note,.delivery-card,.delivery-address,.delivery-detail-hero,.delivery-empty-col,.delivery-product-picker-row,.delivery-selected-customer,.delivery-customer-editor,.modal,.x{border-radius:0!important}
:root[data-ui-radius="square"]{--radius:0;--radius-sm:0}:root[data-ui-radius="square"] .btn,:root[data-ui-radius="square"] .input,:root[data-ui-radius="square"] .select,:root[data-ui-radius="square"] .textarea,:root[data-ui-radius="square"] .nav-link,:root[data-ui-radius="square"] .top-btn{border-radius:0}
:root[data-ui-density="compact"] .content{padding-top:4px;padding-bottom:22px}:root[data-ui-density="compact"] .space{gap:12px}:root[data-ui-density="compact"] .grid{gap:12px}:root[data-ui-density="compact"] .card{padding:15px}:root[data-ui-density="compact"] .table-wrap table th,:root[data-ui-density="compact"] .table-wrap table td{padding:9px 11px}
.page-head>*{min-width:0}.page-title,.page-sub,.card h2,.card h3,.card h4,.card p,.modal-title,.module-readonly-head small,.module-switch small{overflow-wrap:anywhere}.actions{min-width:0}.actions>.btn{max-width:100%}
body.modal-open{overflow:hidden;padding-right:0}.modal-wrap{overflow:hidden}.modal{overflow:hidden;display:flex;flex-direction:column;padding:0;scrollbar-gutter:stable}.modal-head{position:relative;top:auto;z-index:20;flex:0 0 auto;margin:0;padding:15px 16px 12px;background:var(--surface);backdrop-filter:none}.modal-body{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:15px 16px 16px}.modal-body>.space:first-child,.modal-body>form:first-child{margin-top:0}.modal .x{flex:0 0 32px;width:32px;height:32px}.modal-actions{position:relative;bottom:auto;background:transparent;padding:0;margin-top:16px}
.settings-grid{display:block}.settings-group{display:grid;gap:10px;margin:0 0 18px}.settings-group-head{display:flex;justify-content:space-between;align-items:end;padding:0 2px 8px;border-bottom:1px solid var(--border)}.settings-group-head h2{font-size:16px;margin:0}.settings-group-head p{font-size:11px;color:var(--muted);margin:3px 0 0}.settings-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.settings-group-grid>.modules-card,.settings-group-grid>.qr-card,.settings-group-grid>[data-module-config="delivery"],.settings-group-grid>[data-module-config="fiscal"],.settings-group-grid>[data-module-config="pagamentos"]{grid-column:1/-1}.settings-page .card{box-shadow:none}.settings-page .module-readonly-head b{font-size:14px;font-weight:600}.settings-page .module-readonly-head small{font-size:11px;line-height:1.45}.settings-page .permission-admin-note h3{font-size:15px;margin:0}.settings-page .permission-admin-note p{margin:3px 0 0}.settings-page .settings-subsection>div>b{font-weight:600}.settings-page .settings-subsection>div>small{font-weight:400}
@media(max-width:820px){.settings-group-grid{grid-template-columns:1fr}.settings-group-grid>*{grid-column:1!important}.page-title{font-size:27px}}
@media(max-width:700px){.modal,.modal-lg,.modal-xl{border-radius:0!important;padding:0}.modal-head{padding:13px 14px 10px}.modal-body{padding:13px 14px calc(14px + env(safe-area-inset-bottom))}}

/* IDMIX Tech v1.0.18 — Financeiro profissional + PWA/Offline */
.connection-indicator{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 9px;border:1px solid var(--border);font-size:10px;color:var(--muted);background:var(--surface);white-space:nowrap}.connection-indicator span{width:7px;height:7px;background:#22c55e}.connection-indicator.offline{color:#b45309;border-color:color-mix(in srgb,#f59e0b 45%,var(--border));background:color-mix(in srgb,#f59e0b 7%,var(--surface))}.connection-indicator.offline span{background:#f59e0b}.pwa-install.hidden{display:none!important}.offline-queue-bar{width:100%;border:1px solid color-mix(in srgb,#f59e0b 45%,var(--border));background:color-mix(in srgb,#f59e0b 8%,var(--surface));color:var(--fg);display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;text-align:left;padding:10px 12px;cursor:pointer;margin:0 0 10px;border-radius:0}.offline-queue-bar strong{font-weight:600}.offline-queue-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px;border:1px solid var(--border);background:var(--surface2)}.offline-queue-item.failed{border-color:color-mix(in srgb,#ef4444 45%,var(--border));background:color-mix(in srgb,#ef4444 5%,var(--surface))}.pdv-head-status.offline span{background:#f59e0b;box-shadow:none}.pdv-head-status.offline{border-color:color-mix(in srgb,#f59e0b 45%,var(--border));color:#b45309}.pdv-head-status,.pdv-cat,.pdv-cart-line,.pdv-cash-warning,.pdv-cash-ok,.pdv-change{border-radius:0!important}
.professional-finance .sub-head{margin-top:8px}.finance-management{display:grid;gap:12px}.finance-period{flex-wrap:wrap}.finance-period .input{width:auto;min-width:145px}.finance-kpis small{display:block;margin-top:5px;color:var(--muted);font-size:10px}.finance-result-card{border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}.finance-dre-grid,.finance-accounts{align-items:start}.dre-list{display:grid}.dre-list>div{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid var(--border);font-size:12px}.dre-list>div span:last-child{font-variant-numeric:tabular-nums}.dre-list .dre-total{font-size:15px;border-bottom:0;padding-top:13px}.dre-list .dre-total span:first-child{font-weight:600}.finance-cashflow{display:grid;gap:10px}.finance-flow-day{display:grid;grid-template-columns:82px minmax(90px,1fr) 190px;gap:10px;align-items:center;font-size:10px}.finance-flow-day>span{color:var(--muted)}.finance-flow-day>small{text-align:right;color:var(--muted)}.finance-flow-bars{display:grid;gap:3px}.finance-flow-bars i{display:block;height:5px;min-width:2px}.finance-flow-bars .in{background:#22c55e}.finance-flow-bars .out{background:#ef4444}.finance-entry-title{display:block;font-size:12px;color:var(--fg);font-weight:500;line-height:1.3}.finance-entry-title+small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.finance-overdue td{background:color-mix(in srgb,#ef4444 4%,transparent)}
@media(max-width:1100px){.finance-accounts{grid-template-columns:1fr}.finance-flow-day{grid-template-columns:72px minmax(70px,1fr) 160px}}@media(max-width:760px){.connection-indicator{max-width:145px;overflow:hidden;text-overflow:ellipsis}.pwa-install span{display:none}.finance-period{width:100%}.finance-period .input{width:100%}.finance-dre-grid{grid-template-columns:1fr}.finance-flow-day{grid-template-columns:1fr}.finance-flow-day>small{text-align:left}.offline-queue-bar{grid-template-columns:auto 1fr}.offline-queue-bar strong{grid-column:2}}

/* IDMIX Tech v1.0.18 — padronização global, bordas configuráveis, imagens em pedidos e acessos rápidos */
:root{
  --app-font:"Poppins",sans-serif;
  --ui-control-radius:0px;
  --ui-card-radius:0px;
  --ui-modal-radius:0px;
}
html,body,button,input,select,textarea{font-family:var(--app-font)!important}
input,textarea,select{text-transform:none;letter-spacing:normal}
:root[data-ui-radius="rounded"]{
  --ui-control-radius:10px;
  --ui-card-radius:14px;
  --ui-modal-radius:16px;
  --radius:14px;
  --radius-sm:9px;
}
:root[data-ui-radius="square"]{
  --ui-control-radius:0px;
  --ui-card-radius:0px;
  --ui-modal-radius:0px;
  --radius:0px;
  --radius-sm:0px;
}
:root[data-ui-radius="rounded"] :is(.card,.stat-card,.table-wrap,.empty,.popover,.settings-group,.settings-subsection,.permission-role-card,.module-switch,.registered-table-row,.info-note,.delivery-card,.delivery-address,.delivery-detail-hero,.delivery-empty-col,.delivery-product-picker-row,.delivery-selected-customer,.delivery-customer-editor,.management-card,.pdv-product,.pdv-cart,.pdv-cart-line,.pdv-cat,.pdv-change,.pdv-cash-warning,.pdv-cash-ok,.offline-queue-bar,.offline-queue-item,.kcol,.korder,.product-card,.product-pick,.finance-management,.maintenance-block,.system-tool-card){border-radius:var(--ui-card-radius)!important}
:root[data-ui-radius="rounded"] :is(.btn,.input,.select,.textarea,.top-btn,.nav-link,.nav-icon,.brand-mark,.stat-icon,.theme-btn,.filter-btn,.x,.qty button,.inline-stepper button,.icon-btn,.panel-close,.connection-indicator,.data-badge,.pill,.status,.operational-login-btn,.barcode-camera,.order-product-thumb,.product-thumb,.thumb,.logo-preview,.login-bg-preview){border-radius:var(--ui-control-radius)!important}
:root[data-ui-radius="rounded"] .modal{border-radius:var(--ui-modal-radius)!important}
:root[data-ui-radius="square"] :is(.card,.stat-card,.table-wrap,.empty,.popover,.settings-group,.settings-subsection,.permission-role-card,.module-switch,.registered-table-row,.info-note,.delivery-card,.delivery-address,.delivery-detail-hero,.delivery-empty-col,.delivery-product-picker-row,.delivery-selected-customer,.delivery-customer-editor,.management-card,.pdv-product,.pdv-cart,.pdv-cart-line,.pdv-cat,.pdv-change,.pdv-cash-warning,.pdv-cash-ok,.offline-queue-bar,.offline-queue-item,.kcol,.korder,.product-card,.product-pick,.finance-management,.maintenance-block,.system-tool-card,.btn,.input,.select,.textarea,.top-btn,.nav-link,.nav-icon,.brand-mark,.stat-icon,.theme-btn,.filter-btn,.x,.qty button,.inline-stepper button,.icon-btn,.panel-close,.connection-indicator,.data-badge,.pill,.status,.operational-login-btn,.barcode-camera,.order-product-thumb,.product-thumb,.thumb,.logo-preview,.login-bg-preview,.modal){border-radius:0!important}
:root[data-ui-motion="on"] :is(.btn,.card,.input,.select,.textarea,.nav-link,.top-btn,.theme-btn,.filter-btn,.module-switch,.pdv-product,.product-card,.delivery-card,.korder,.modal,.x){transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease,opacity .16s ease}
@media (prefers-reduced-motion:reduce){:root[data-ui-motion="on"] *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Hierarquia tipográfica: títulos se diferenciam por escala, espaçamento e cor — não apenas por peso. */
.page-title{font-weight:560;letter-spacing:-.03em}
.card h2,.card h3,.card h4,.modal-title,.settings-group-head h2{font-weight:560;color:var(--fg);letter-spacing:-.018em;line-height:1.2}
.card h3{font-size:15px}.card h4{font-size:13px}.modal-title{font-size:17px}
.card p,.small,.muted,.module-switch small,.permission-role-head p{line-height:1.52}
.label{font-size:10px;font-weight:520;letter-spacing:.065em;color:color-mix(in srgb,var(--fg) 72%,var(--muted));margin-bottom:6px}
.input,.select,.textarea{font-weight:400;line-height:1.35}
.form-row>div,.grid>div{min-width:0}
.field-gap{margin-top:14px}.field-gap-small{margin-top:9px}

/* Configurações: cada grupo é um bloco coerente e o título fica dentro do próprio card. */
.settings-grid{display:grid;gap:14px}
.settings-group{display:grid;gap:12px;margin:0;padding:14px;border:1px solid var(--border);background:var(--surface);box-shadow:none}
.settings-group-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:0 0 11px;border-bottom:1px solid var(--border)}
.settings-group-head h2{font-size:16px;margin:0}.settings-group-head p{font-size:11px;line-height:1.45;color:var(--muted);margin:4px 0 0}
.settings-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.settings-group-grid>.card{height:100%;margin:0;background:var(--surface2)}
.settings-page .card h3{display:flex;align-items:center;gap:8px}
.settings-page .card h3>.ui-icon{width:18px;height:18px;color:var(--primary);flex:0 0 auto}
.appearance-card h3 span{min-width:0}
.settings-section-head{margin-bottom:12px}
.settings-section-head h3{margin:3px 0 0}.settings-section-head p{margin:4px 0 0}

/* Modal: apenas o corpo rola; selecionar texto ou clicar no fundo não fecha. */
body.modal-open{overflow:hidden!important}
.modal-wrap{overflow:hidden!important;padding:18px}
.modal{max-height:calc(100vh - 36px)!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
.modal-head{flex:0 0 auto;border-bottom:1px solid var(--border)}
.modal-body{flex:1 1 auto;min-height:0;overflow:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:16px}
.modal-body::-webkit-scrollbar{width:10px}.modal-body::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 38%,transparent);border:3px solid transparent;background-clip:padding-box}

/* Fotos dos produtos nas etapas operacionais. */
.item-main-with-image,.delivery-product-cell,.k-product-line{display:flex;align-items:center;gap:10px;min-width:0}
.order-product-thumb{width:42px;height:42px;flex:0 0 42px;object-fit:cover;border:1px solid var(--border);background:var(--surface-soft)}
.order-product-placeholder{display:grid;place-items:center;color:var(--muted);font-size:17px}
.order-product-thumb.image-error{opacity:.25}
.kitchen-product-thumb{width:46px;height:46px;flex-basis:46px}.k-product-line h4{margin:0;min-width:0;overflow-wrap:anywhere}
.delivery-product-cell>div{min-width:0}.delivery-product-cell b{overflow-wrap:anywhere}

/* Scanner de código de barras. */
.product-code-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}
.barcode-camera{position:relative;overflow:hidden;border:1px solid var(--border);background:#05070a;padding:10px;display:grid;gap:9px}
.barcode-camera video{width:100%;max-height:280px;object-fit:cover;background:#000}
.barcode-camera-guide{position:absolute;left:12%;right:12%;top:42%;height:18%;border:2px solid color-mix(in srgb,var(--primary) 85%,white);pointer-events:none}

/* Acesso operacional por PIN. */
.operational-login-separator{display:flex;align-items:center;gap:10px;margin:16px 0 10px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}
.operational-login-separator:before,.operational-login-separator:after{content:"";height:1px;flex:1;background:var(--border)}
.operational-login-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.operational-login-actions>.operational-login-btn:only-child{grid-column:1/-1}
.operational-access-card .operational-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.operational-access-item{display:grid;gap:11px;padding:12px;border:1px solid var(--border);background:var(--surface-soft)}
.operational-access-item>div:first-child b{display:block;font-size:13px;font-weight:560}.operational-access-item>div:first-child small{display:block;margin-top:3px;color:var(--muted);line-height:1.45}

/* Indicadores com pontuação e espaçamento consistentes. */
.connection-indicator{gap:7px}.connection-indicator span{flex:0 0 auto}.autosave-status,.data-badge{font-variant-numeric:tabular-nums}
.product-meta{gap:6px 12px;align-items:center}.product-meta span{white-space:normal}

/* Ajustes responsivos. */
@media(max-width:820px){.settings-group{padding:12px}.settings-group-grid{grid-template-columns:1fr}.operational-access-card .operational-access-grid{grid-template-columns:1fr}.product-code-tools{grid-template-columns:1fr}.modal-wrap{padding:8px}.modal{max-height:calc(100vh - 16px)!important}}

/* IDMIX Tech v1.0.18 — acabamento global, notificações, lotes e gestão */
.reconcile-summary{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 16px;padding:12px 14px!important;line-height:1.35}
.reconcile-summary>span{min-width:0;overflow-wrap:anywhere;color:var(--muted)}
.reconcile-summary>strong{white-space:nowrap;font-size:16px;font-weight:800;color:var(--fg);text-align:right}
.reconcile-summary>.tiny{grid-column:1/-1;margin:0!important}

/* Nome de produto sempre destacado; demais títulos preservam a hierarquia tipográfica global. */
.product-title h3,.product-pick-info b,.pdv-product-body>b,.pdv-line-top>b,.delivery-command-table td:nth-child(2) b,.k-product-line h4,.korder h4,.order-product-name,.management-product-checks b{font-weight:800!important}
.lot-code,.lot-input,[data-lot-code]{text-transform:uppercase!important;letter-spacing:.035em}

.system-notification-popover{width:min(440px,calc(100vw - 24px));max-height:min(70vh,620px);overflow:auto}
.popover-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 3px 8px}
.system-notification-item{width:100%;display:grid!important;grid-template-columns:10px minmax(0,1fr);align-items:start;text-align:left;gap:10px;border:0;background:transparent;color:inherit;cursor:pointer}
.system-notification-item:hover{background:var(--surface2)}
.system-notification-item.read{opacity:.67}
.notification-dot{width:8px;height:8px;border-radius:50%;margin-top:5px;background:var(--muted)}
.notification-dot.warning{background:var(--warning)}.notification-dot.danger{background:var(--danger)}.notification-dot.success{background:var(--green)}.notification-dot.info{background:var(--primary)}

.batch-receipt-row{grid-template-columns:minmax(210px,2fr) minmax(86px,.55fr) minmax(110px,.75fr) minmax(110px,.75fr) minmax(135px,.85fr) auto!important}
.db-clean-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:48vh;overflow:auto;padding:2px}
.db-clean-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:start;padding:11px 12px;border:1px solid var(--border);background:var(--surface2)}
.db-clean-item input{margin-top:3px}.db-clean-item b{display:block;margin-bottom:2px}.db-clean-item small{display:block;color:var(--muted);line-height:1.35}.db-clean-item .data-badge{white-space:nowrap}

.management-integration-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.integration-section{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--border);background:var(--surface2)}
.integration-section h3{margin:0 0 2px;font-size:15px}

/* Cards do sistema com geometria e ritmo equivalentes. */
.settings-group-grid,.management-grid{align-items:stretch}
.settings-group-grid>.card,.settings-group-grid>.settings-subsection,.management-grid>.management-card{height:100%;box-sizing:border-box}
.maintenance-blocks,.maintenance-discreet .maintenance-blocks{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;align-items:stretch}
.maintenance-block{height:100%;box-sizing:border-box;align-content:start}
.maintenance-block .btn{margin-top:auto}

@media(max-width:900px){.management-integration-tabs{grid-template-columns:1fr}.batch-receipt-row{grid-template-columns:1fr 1fr!important}.batch-receipt-row>.select{grid-column:1/-1}.batch-receipt-row>.btn{grid-column:1/-1}.db-clean-grid{grid-template-columns:1fr}.reconcile-summary{grid-template-columns:1fr}.reconcile-summary>strong{text-align:left}}
@media(max-width:560px){.batch-receipt-row{grid-template-columns:1fr!important}.batch-receipt-row>*{grid-column:1!important}}
.item-main>div>b,.delivery-product-cell>div>b{font-weight:800!important}

/* IDMIX Tech v1.0.18 — padrão global de qualidade visual */
:root{
  --ui-control-height:40px;
  --ui-button-font:12px;
  --ui-body-font:13px;
  --ui-caption-font:11px;
  --ui-label-font:10px;
  --ui-icon-size:16px;
}
.btn{min-height:var(--ui-control-height);padding:9px 14px;font-size:var(--ui-button-font);line-height:1.25;gap:8px;font-weight:560;align-items:center}
.btn.compact{min-height:34px;padding:7px 10px;font-size:11px;gap:7px}
.btn .ui-icon{width:16px;height:16px;flex:0 0 16px}
.btn.danger,.btn.ghost-danger{background:var(--danger)!important;color:#fff!important;border-color:var(--danger)!important}
.btn.ghost-danger:hover,.btn.danger:hover{filter:none}
.page-sub,.small,.card p{overflow-wrap:anywhere}
.label{font-size:var(--ui-label-font);line-height:1.35;margin-bottom:7px}
.input,.select,.textarea{min-height:var(--ui-control-height);font-size:var(--ui-body-font);line-height:1.35;padding:9px 11px}
.textarea{min-height:84px}
.ui-separated{display:grid!important;gap:6px!important;align-items:start!important}
.reconcile-summary.ui-separated{grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;column-gap:14px!important}
.code-box>small,.code-box>span{display:block;line-height:1.35}.code-box>b,.code-box>strong{display:block;line-height:1.3}
.settings-page .settings-grid{display:grid!important;grid-template-columns:1fr!important;gap:16px!important}
.settings-page .settings-group{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
.settings-page .settings-group-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
.settings-page .settings-group-grid>*{grid-column:1!important;width:100%!important;height:auto!important;min-height:0!important}
.settings-page .card{width:100%!important;height:auto!important;min-height:0!important}
.settings-page .card-head,.settings-page .settings-section-head{align-items:flex-start}
.settings-page .card h3{font-size:15px;line-height:1.25;gap:8px}
.settings-page .card p{font-size:12px;line-height:1.5;margin-top:6px}
.settings-page .settings-group-head{align-items:flex-start}
.settings-page .settings-group-head h2{font-size:16px;line-height:1.25}
.settings-page .settings-group-head p{font-size:11px;line-height:1.45}
.settings-admin-card .settings-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.settings-admin-card .settings-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;color:var(--muted);font-size:11px}
.settings-admin-card .settings-card-icon{width:36px;height:36px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 10%,var(--surface2));color:var(--primary);flex:0 0 36px}
.settings-admin-card .settings-card-title{display:flex;align-items:flex-start;gap:10px}
.settings-admin-card .settings-card-title>div{min-width:0}
.settings-admin-card .settings-card-title h3{margin:0}
.settings-admin-card .settings-card-title p{margin:4px 0 0}
.menu-order-list{display:grid;gap:7px;margin-top:12px}.menu-order-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 9px;border:1px solid var(--border);background:var(--surface2)}
.menu-order-item .menu-order-index{width:28px;height:28px;display:grid;place-items:center;background:var(--surface3);font-size:11px;font-weight:650}
.menu-order-item b{font-size:12px;font-weight:600}.menu-order-item small{display:block;margin-top:2px;color:var(--muted);font-size:10px}
.menu-order-actions{display:flex;gap:5px}.menu-order-actions .btn{width:34px;min-width:34px;padding:0}
.product-name-input{text-transform:uppercase;font-weight:500;letter-spacing:.01em}
.lot-input{text-transform:uppercase}
.catalog-result{display:grid;grid-template-columns:90px minmax(0,1fr);gap:12px;align-items:start;padding:12px;border:1px solid var(--border);background:var(--surface2)}
.catalog-result img{width:90px;height:90px;object-fit:contain;background:#fff;border:1px solid var(--border)}
.catalog-result h4{margin:0 0 4px;font-size:14px}.catalog-result p{margin:2px 0;font-size:11px;line-height:1.45}
.library-page .library-links,.library-page .library-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.library-link,.library-module{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:11px;border:1px solid var(--border);background:var(--surface2);text-decoration:none;color:var(--fg)}
.library-link>span:first-child,.library-module>span:first-child{display:flex;gap:9px;align-items:flex-start}.library-link b,.library-module b{font-size:12px;font-weight:600}.library-link small,.library-module small{display:block;color:var(--muted);font-size:10px;margin-top:2px;line-height:1.4}
.library-step{display:grid;gap:5px;padding:10px 0;border-bottom:1px solid var(--border)}.library-step:last-child{border-bottom:0}.library-step b{font-size:12px;font-weight:600}.library-step p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
@media(max-width:760px){.library-page .library-links,.library-page .library-modules{grid-template-columns:1fr}.catalog-result{grid-template-columns:1fr}.catalog-result img{width:100%;height:160px}.menu-order-item{grid-template-columns:28px minmax(0,1fr)}.menu-order-actions{grid-column:2;justify-content:flex-start}}

/* IDMIX Tech v1.0.18 — Configurações página por página + Biblioteca */
.settings-page .card h3{display:flex;align-items:center;gap:8px}.settings-page .card h3>.ui-icon{width:17px;height:17px;flex:0 0 17px;color:var(--primary)}
.settings-page .settings-group-grid{grid-template-columns:1fr!important}.settings-page .settings-group-grid>.card,.settings-page .settings-group-grid>.settings-subsection{margin:0!important}
.settings-admin-card .settings-card-meta{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:5px 10px!important;align-items:center!important}.settings-admin-card .settings-card-meta>span{color:var(--muted)}.settings-admin-card .settings-card-meta>b{min-width:0;overflow-wrap:anywhere;font-size:12px;font-weight:600}
.menu-order-actions .btn{display:grid;place-items:center}.menu-order-actions .btn .ui-icon{width:16px;height:16px}
.product-name-input,.lot-input{text-transform:uppercase!important}.product-name-input{font-weight:500!important}
.catalog-result{margin-top:10px}.catalog-result-head{display:flex;align-items:flex-start;gap:8px}.catalog-result-head>.ui-icon,.catalog-result-head>span>.ui-icon{width:17px;height:17px;color:var(--green);flex:0 0 17px}.catalog-result-head>div{display:grid;gap:2px}.catalog-result-head small{color:var(--muted);font-size:10px}.catalog-result-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;margin-top:10px}.catalog-result-details>span{display:grid;gap:2px;padding-top:7px;border-top:1px solid var(--border)}.catalog-result-details small{font-size:9px;color:var(--muted)}.catalog-result-details b{font-size:11px;font-weight:600;overflow-wrap:anywhere}
.library-page{max-width:1180px}.library-section{display:grid;gap:12px}.library-section>.card-head h2,.library-section-heading h2{display:flex;align-items:center;gap:8px;margin:0;font-size:17px}.library-section>.card-head h2 .ui-icon{width:19px;height:19px;color:var(--primary)}.library-section-heading{display:grid;gap:3px;padding:2px}.library-section-heading p{margin:0;color:var(--muted);font-size:11px}
.library-page-list,.library-reference-list,.library-module-list{display:grid;gap:8px}.library-page-link{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,auto) auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);background:var(--surface2);color:var(--fg);text-align:left;cursor:pointer;font:inherit}.library-page-link:hover{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 5%,var(--surface2))}.library-page-link.active{border-color:color-mix(in srgb,var(--primary) 38%,var(--border))}.library-page-link>span{display:flex;align-items:center;gap:9px;min-width:0}.library-page-link>span>.ui-icon{width:17px;height:17px;color:var(--primary);flex:0 0 17px}.library-page-link>b,.library-page-link b{font-size:12px;font-weight:600}.library-page-link>small{font-size:10px;color:var(--muted);overflow-wrap:anywhere}.library-page-link>.ui-icon{width:15px;height:15px;color:var(--muted)}
.library-module-list{grid-template-columns:repeat(2,minmax(0,1fr))}.library-module-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 11px;border:1px solid var(--border);background:var(--surface2)}.library-module-row>span:first-child{min-width:0}.library-module-row b{display:block;font-size:12px;font-weight:600}.library-module-row small{display:block;margin-top:2px;color:var(--muted);font-size:9px;overflow-wrap:anywhere}.library-module-row .status{flex:0 0 auto}
.library-lookup{display:grid;gap:9px}.library-gtin-result:empty{display:none}.library-guides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.library-guide{display:flex;flex-direction:column;gap:12px}.library-guide-title{display:flex;align-items:flex-start;gap:10px}.library-guide-title>.ui-icon{width:22px;height:22px;color:var(--primary);flex:0 0 22px}.library-guide-title h3{margin:0;font-size:14px}.library-guide-title p{margin:3px 0 0}.library-guide ol{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--muted);font-size:11px;line-height:1.5}.library-guide .actions{margin-top:auto}
.library-reference-list .library-page-link{grid-template-columns:minmax(0,1fr) minmax(250px,1.4fr) auto}
@media(max-width:820px){.library-module-list,.library-guides{grid-template-columns:1fr}.catalog-result-details{grid-template-columns:1fr}.library-page-link,.library-reference-list .library-page-link{grid-template-columns:minmax(0,1fr) auto}.library-page-link>small{grid-column:1/-1}.library-page-link>.ui-icon{grid-column:2;grid-row:1}.settings-admin-card .settings-card-meta{grid-template-columns:1fr}.library-page{max-width:none}}
/* Biblioteca · catálogo interno de códigos e imagens */
.library-product-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.library-product-item{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;align-items:center;padding:9px;border:1px solid var(--border);background:var(--surface2);min-width:0}
.library-product-item img,.library-product-placeholder{width:58px;height:58px;object-fit:contain;background:#fff;border:1px solid var(--border);display:grid;place-items:center}
.library-product-placeholder .ui-icon{width:20px;height:20px;color:var(--muted)}
.library-product-item>div:last-child{min-width:0;display:grid;gap:2px}.library-product-item b{font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-product-item small{font-size:9px;color:var(--primary);font-family:"Poppins",sans-serif;overflow-wrap:anywhere}.library-product-item span{font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:980px){.library-product-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.library-product-catalog{grid-template-columns:1fr}}
/* Os componentes adicionados nesta versão respeitam a preferência global de bordas. */
.library-page-link,.library-module-row,.library-guide,.library-product-item,.library-product-item img,.library-product-placeholder,.menu-order-item,.settings-admin-card .settings-card-icon{border-radius:var(--radius-sm)}
:root[data-ui-radius="square"] :is(.library-page-link,.library-module-row,.library-guide,.library-product-item,.library-product-item img,.library-product-placeholder,.menu-order-item,.settings-admin-card .settings-card-icon){border-radius:0!important}
:root[data-ui-radius="rounded"] :is(.library-page-link,.library-module-row,.library-guide,.library-product-item,.library-product-item img,.library-product-placeholder,.menu-order-item,.settings-admin-card .settings-card-icon){border-radius:var(--ui-control-radius)!important}
/* Configurações: cada bloco administrativo em linha própria para leitura consistente. */
.settings-page .maintenance-blocks,.settings-page .maintenance-discreet .maintenance-blocks{grid-template-columns:1fr!important;gap:9px!important}
.settings-page .maintenance-block{height:auto!important;min-height:0!important}


/* IDMIX Tech v1.0.20 — geometria global consistente e controles padronizados */
:root[data-ui-radius="rounded"]{
  --bp-control-radius:10px;
  --bp-card-radius:14px;
  --bp-modal-radius:16px;
  --bp-pill-radius:999px;
}
:root[data-ui-radius="square"]{
  --bp-control-radius:0px;
  --bp-card-radius:0px;
  --bp-modal-radius:0px;
  --bp-pill-radius:0px;
}

/* No modo reto nenhum componente visual pode manter arredondamento residual. */
:root[data-ui-radius="square"] *{border-radius:0!important}

/* Controles — seguem a mesma geometria em qualquer página ou modal. */
:root[data-ui-radius="rounded"] :where(
  button,.btn,.top-btn,.top-user,.back,.input,input:not([type="checkbox"]):not([type="radio"]),select,.select,textarea,
  .theme-btn,.filter-btn,.nav-link,.nav-icon,.x,.qty button,.inline-stepper button,.icon-danger,
  .maintenance-file-picker,.file-picker,.settings-action,.library-page-link,.menu-order-item,.product-code-tools,
  .table-action,.payment-option,.picker-add,.kitchen-action,.pagination button
){border-radius:var(--bp-control-radius)!important}

/* Superfícies — card, modal, painel, caixas e itens visuais usam a mesma família de raio. */
:root[data-ui-radius="rounded"] :where(
  .card,.modal,.popover,.table-wrap,.settings-group,.settings-subsection,.settings-admin-card,.permission-role-card,
  .maintenance-block,.maintenance-native,.management-card,.operational-access-item,.integration-section,.info-note,.danger-note,
  .warning-card,.code-box,.login-card,.login-box,.product-card,.product-pick,.pdv-product,.pdv-cart,.pdv-cart-line,
  .comanda-card,.items-card,.payment-card,.kcol,.korder,.delivery-card,.delivery-address,.delivery-detail-hero,
  .delivery-empty-col,.delivery-product-card,.offline-settings-card,.offline-queue-bar,.offline-queue-item,.db-clean-item,
  .library-guide,.library-module-row,.library-product-item,.catalog-result,.barcode-camera,.selected-customer-chip,
  .physical-cards-panel,.settings-card-meta,.reconcile-summary,.notification-panel,.system-notification-panel
){border-radius:var(--bp-card-radius)!important}

/* Elementos com função de badge permanecem proporcionais ao estilo escolhido. */
:root[data-ui-radius="rounded"] :where(
  .pill,.status,.status-pill,.data-badge,.badge-count,.date-chip,.order-origin,.kcount,.delivery-overdue-badge,
  .autosave-status,.connection-indicator,.notification-dot,.waiting-pulse,.swatch,.top-user>span
){border-radius:var(--bp-pill-radius)!important}

:root[data-ui-radius="rounded"] :where(
  .modal,.modal-card,.dialog,.dialog-card
){border-radius:var(--bp-modal-radius)!important}

/* Imagens e prévias visuais também respeitam o padrão global. */
:root[data-ui-radius="rounded"] :where(
  .thumb,.order-product-thumb,.product-thumb,.brand-mark,.logo-preview img,.login-bg-preview img,
  .library-product-item img,.library-product-placeholder,.catalog-result img,.product-image,.image-preview
){border-radius:var(--bp-control-radius)!important}

/* Alerta do sistema: mesmo eixo, tamanho e centralização do chamado da mesa. */
#system-notification-btn{
  position:relative;
  display:block;
  padding:0!important;
  line-height:0;
  overflow:visible;
}
#system-notification-btn>.ui-icon{
  position:absolute;
  left:50%;
  top:50%;
  width:19px!important;
  height:19px!important;
  margin:0!important;
  transform:translate(-50%,-50%);
}

/* Manutenção: todos os controles de ação têm a mesma largura e proporção. */
.maintenance-block>.btn,
.maintenance-block>.select,
.maintenance-block>.maintenance-file-picker,
.maintenance-block>.file-picker{
  width:100%;
  min-height:36px;
  box-sizing:border-box;
}
.maintenance-block>.btn{
  justify-content:center;
  align-items:center;
  gap:8px;
}
#maintenance-restore-btn{margin:0!important}

/* v1.0.20 — cobre componentes legados que antes forçavam cantos retos. */
:root[data-ui-radius="rounded"] :where(
  .stat-card,.empty,.pop-item,.stat-icon,.module-switch,.registered-table-row,
  .delivery-product-picker-row,.delivery-selected-customer,.delivery-customer-editor,
  .finance-management,.system-tool-card,.icon-btn,.panel-close,.operational-login-btn,
  .pdv-head-status,.pdv-cat,.pdv-cash-warning,.pdv-cash-ok,.pdv-change,
  .logo-preview,.login-bg-preview,.settings-card-icon,.toast,.toast-icon
){border-radius:var(--bp-control-radius)!important}
:root[data-ui-radius="rounded"] :where(.stat-card,.empty,.finance-management,.system-tool-card){border-radius:var(--bp-card-radius)!important}
:root[data-ui-radius="rounded"] :where(.pdv-head-status){border-radius:var(--bp-pill-radius)!important}

/* ========================================================================== */
/* IDMIX Tech 1.1 — Interface clara inspirada no padrão de usabilidade Codental.  */
/* Referência apenas de linguagem visual/UX. Não utiliza marca ou ativos       */
/* proprietários do Codental.                                                  */
/* ========================================================================== */
:root,
html.light{
  --bg:#f7f9fc;
  --bg-soft:#f2f5f9;
  --surface:#ffffff;
  --surface2:#f8fafc;
  --surface3:#eef4f8;
  --fg:#334155;
  --muted:#7b8a9a;
  --border:#e3eaf1;
  --primary:#168bd2;
  --secondary:#5ab7e9;
  --danger:#e45b65;
  --green:#33ad78;
  --purple:#7467d8;
  --warning:#e8a43b;
  --shadow:0 7px 24px rgba(36,64,92,.07);
  --shadow-soft:0 2px 10px rgba(36,64,92,.055);
  --radius:8px;
  --radius-sm:6px;
}
html:not(.light){
  --bg:#f7f9fc;
  --bg-soft:#f2f5f9;
  --surface:#ffffff;
  --surface2:#f8fafc;
  --surface3:#eef4f8;
  --fg:#334155;
  --muted:#7b8a9a;
  --border:#e3eaf1;
  --primary:#168bd2;
  --secondary:#5ab7e9;
  --danger:#e45b65;
  --green:#33ad78;
  --purple:#7467d8;
  --warning:#e8a43b;
}
html,body{background:var(--bg)!important;color:var(--fg);font-family:"Poppins",sans-serif}
body{background-image:none!important}
.bg-noise:before{display:none!important}

/* Header horizontal: compacto, claro e orientado a módulos */
.sidebar{
  position:fixed!important;
  inset:0 0 auto 0!important;
  width:100%!important;
  height:64px!important;
  min-height:64px!important;
  max-height:64px!important;
  padding:0 350px 0 22px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:16px!important;
  overflow:visible!important;
  background:#fff!important;
  backdrop-filter:none!important;
  border:0!important;
  border-bottom:1px solid var(--border)!important;
  box-shadow:none;
  z-index:100!important;
}
.sidebar .brand{
  flex:0 0 auto!important;
  align-items:center!important;
  gap:9px!important;
  padding:0!important;
  margin:0 8px 0 0!important;
  min-width:auto!important;
}
.sidebar .brand-mark{
  width:34px!important;height:34px!important;flex:0 0 34px!important;
  border-radius:7px!important;
  background:#fff!important;
  color:var(--primary)!important;
  border:1px solid #dce6ef!important;
  box-shadow:none;
  font-size:11px!important;
}
.sidebar .brand-name{font-size:16px!important;font-weight:700!important;color:#2486bf!important;letter-spacing:-.025em!important;max-width:128px!important}
.sidebar .brand-sub{display:none!important}
.sidebar .nav{
  flex:1 1 auto!important;
  min-width:0!important;
  height:64px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
  gap:0!important;
  padding:0!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
}
.sidebar .nav::-webkit-scrollbar{display:none!important}
.sidebar .nav-link{
  position:relative!important;
  flex:0 0 auto!important;
  min-height:64px!important;
  height:64px!important;
  padding:0 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  border-radius:0!important;
  border:0!important;
  border-bottom:2px solid transparent!important;
  background:transparent!important;
  color:#607080!important;
  box-shadow:none;
  font-size:12px!important;
  font-weight:500!important;
  transform:none!important;
}
.sidebar .nav-link:hover{color:var(--primary)!important;background:#f8fbfd!important;transform:none!important}
.sidebar .nav-link.active{color:var(--primary)!important;background:#f8fbfd!important;border-bottom-color:var(--primary)!important;box-shadow:none}
.sidebar .nav-icon{width:20px!important;height:20px!important;border-radius:0!important;background:transparent!important;color:currentColor!important;font-size:0!important}
.sidebar .nav-icon .ui-icon{width:17px!important;height:17px!important}
.sidebar .userbox{display:none!important}

.main{margin-left:0!important;padding-top:64px!important;background:var(--bg)!important}
.topbar{
  position:fixed!important;
  top:0!important;right:18px!important;left:auto!important;
  z-index:120!important;
  height:64px!important;
  width:auto!important;
  min-width:300px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none;
}
.topbar-spacer{display:none!important}
.top-btn{
  width:36px!important;height:36px!important;min-width:36px!important;
  border:1px solid transparent!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#7d8d9c!important;
  box-shadow:none;
}
.top-btn:hover{background:#f2f7fb!important;border-color:#e1eaf1!important;color:var(--primary)!important;transform:none!important}
.top-btn .ui-icon{width:18px;height:18px}
.connection-indicator{
  min-width:0!important;
  height:30px!important;
  padding:0 8px!important;
  border-radius:6px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none;
  color:#7c8b99!important;
  font-size:10px!important;
}
.connection-indicator span{width:7px!important;height:7px!important}
.top-user{
  min-height:38px!important;
  padding:3px 6px 3px 4px!important;
  border:0!important;
  border-left:1px solid var(--border)!important;
  border-radius:0!important;
  background:transparent!important;
  color:#526170!important;
  box-shadow:none;
}
.top-user>span{width:30px!important;height:30px!important;border-radius:50%!important;background:#e9f5fb!important;color:var(--primary)!important;font-size:10px!important}
.top-user b{font-size:11px!important;font-weight:600!important;max-width:110px!important}
.user-menu-popover{top:48px!important;border-radius:8px!important;border:1px solid var(--border)!important;box-shadow:none}

/* Conteúdo */
.content{width:min(100%,1500px)!important;max-width:1500px!important;margin:0 auto!important;padding:28px 30px 42px!important}
.space{gap:16px!important}
.page-head{align-items:center!important;min-height:54px!important;margin-bottom:4px!important}
.eyebrow{display:none!important}
.page-title{font-size:24px!important;line-height:1.2!important;font-weight:600!important;letter-spacing:-.025em!important;color:#354454!important}
.page-sub{margin-top:5px!important;font-size:11px!important;color:#82909d!important}
.date-chip,.data-badge{
  border:1px solid var(--border)!important;
  background:#fff!important;
  color:#748492!important;
  border-radius:6px!important;
  padding:7px 10px!important;
  font-size:10px!important;
  font-weight:600!important;
}

/* Cards e indicadores: superfícies planas, bordas leves */
.card{
  padding:18px!important;
  background:#fff!important;
  border:1px solid var(--border)!important;
  border-radius:8px!important;
  box-shadow:none;
  overflow:visible!important;
}
.card:after{display:none!important}
.card h3{font-size:13px!important;font-weight:600!important;color:#445363!important;letter-spacing:-.01em!important}
.card-head{margin-bottom:14px!important;align-items:center!important}
.stat-card{min-height:96px!important;gap:12px!important}
.stat-icon{
  width:34px!important;height:34px!important;
  border-radius:50%!important;
  background:#edf7fc!important;
  color:var(--primary)!important;
  font-size:12px!important;
}
.stat-label{font-size:9px!important;letter-spacing:.08em!important;color:#8b99a6!important}
.stat-value{margin-top:6px!important;font:600 18px "Poppins",sans-serif!important;letter-spacing:-.025em!important;color:#334556!important}
.closed-cash-card,.cash-control{box-shadow:none}

/* Botões */
.btn{
  min-height:36px!important;
  padding:8px 12px!important;
  border-radius:6px!important;
  border:1px solid #dce6ee!important;
  background:#fff!important;
  color:#586a79!important;
  box-shadow:none;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1.2!important;
  transform:none!important;
}
.btn:hover{background:#f7fafc!important;border-color:#cbd9e5!important;filter:none!important;transform:none!important}
.btn.primary{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important;box-shadow:none}
.btn.primary:hover{background:#107fc3!important;border-color:#107fc3!important}
.btn.secondary{background:#e9f5fb!important;border-color:#cfeaf7!important;color:#237eaf!important}
.btn.green{background:#35ad7b!important;border-color:#35ad7b!important;color:#fff!important}
.btn.danger{background:#fff!important;border-color:#efc7cb!important;color:#cf4d59!important}
.btn.danger:hover{background:#fff6f7!important;border-color:#e6aab0!important}
.btn.outline{background:#fff!important;border:1px solid #dce6ee!important;color:#60717f!important}
.btn.compact{min-height:30px!important;padding:6px 9px!important;border-radius:5px!important;font-size:10px!important}
.btn .ui-icon{width:14px!important;height:14px!important}

/* Campos */
.input,.select,.textarea{
  background:#fff!important;
  color:#405261!important;
  border:1px solid #d9e3eb!important;
  border-radius:6px!important;
  padding:10px 11px!important;
  box-shadow:none;
  font-size:12px!important;
}
.input:hover,.select:hover,.textarea:hover{border-color:#c7d5df!important}
.input:focus,.select:focus,.textarea:focus{border-color:#55aedd!important;box-shadow:none}
.label{font-size:9px!important;color:#778795!important;letter-spacing:.08em!important;text-transform:none!important;font-weight:600!important}

/* Tabelas */
.table-wrap{
  border:1px solid var(--border)!important;
  border-radius:7px!important;
  background:#fff!important;
  box-shadow:none;
}
.table th,.table td{padding:12px 14px!important;border-bottom:1px solid #edf1f5!important;font-size:11px!important}
.table th{
  background:#f8fafc!important;
  color:#84929f!important;
  font-size:9px!important;
  font-weight:600!important;
  letter-spacing:.04em!important;
  text-transform:none!important;
}
.table tbody tr:hover{background:#fbfdfe!important}
.pill{padding:4px 8px!important;border-radius:999px!important;font-size:8px!important;letter-spacing:.05em!important;background:#f4f6f8!important;border-color:#e4e9ee!important;color:#748492!important}
.pill.open{background:#edf7fc!important;border-color:#d1eaf7!important;color:#2188c2!important}
.pill.good{background:#edf9f4!important;border-color:#d4eee2!important;color:#2c9b6b!important}
.pill.bad{background:#fff1f2!important;border-color:#f2d4d7!important;color:#c6535d!important}

/* Modais */
.modal-wrap{background:rgba(39,55,70,.28)!important;backdrop-filter:blur(1px)!important}
.modal{
  border:1px solid #dfe7ee!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:none;
  padding:20px!important;
}
.modal-title{font-size:17px!important;font-weight:600!important;color:#3c4d5c!important}
.modal-close{border-radius:6px!important;background:#f6f8fa!important;color:#71808d!important}

/* Gráficos e elementos de dados */
.chart-shell,.chart-empty{background:#fff!important}
.chart-axis{stroke:#e7edf2!important}
.chart-line{stroke:var(--primary)!important;stroke-width:2!important}
.chart-dot{fill:#fff!important;stroke:var(--primary)!important;stroke-width:2!important}
.chart-label,.chart-value{fill:#7a8997!important}
.method-line{background:#edf2f6!important;height:6px!important}
.method-fill{background:var(--primary)!important}

/* Páginas operacionais */
.comanda-card,.product-pick,.delivery-card,.kcol{
  background:#fff!important;
  border:1px solid var(--border)!important;
  border-radius:8px!important;
  box-shadow:none;
}
.comanda-card:hover,.product-pick:hover,.delivery-card:hover{border-color:#c9dce8!important;box-shadow:none}
.qty button,.inline-stepper button{background:#fff!important;color:#5d6d7b!important;border-color:#dbe5ed!important}

/* Login */
.login{background:#f4f8fb!important;background-image:none!important}
.login-background{opacity:.10!important}
.login-background span{background:rgba(244,248,251,.78)!important}
.login-box{width:min(420px,calc(100% - 28px))!important}
.login-brand-v6{margin-bottom:16px!important}
.login-brand-horizontal{justify-content:center!important}
.login-client-logo{width:46px!important;height:46px!important;flex-basis:46px!important;border-radius:8px!important}
.login-title{font-size:23px!important;font-weight:650!important;color:#2486bf!important}
.login-card{
  border:1px solid #dfe8ef!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none;
  padding:26px!important;
}
.login-card h2{font-size:20px!important;font-weight:600!important;color:#3c4d5c!important}
.login-submit{margin-top:18px!important;min-height:40px!important}
.login-copyright{color:#99a6b1!important;font-size:9px!important}
.link-button{color:var(--primary)!important}

/* Barras, alertas e menus */
.urgent-call-banner{border-radius:0!important;box-shadow:none}
.toast{border-radius:7px!important;box-shadow:none}
.ui-separated{border-color:#e4ebf1!important;background:#fafcfd!important}
.empty{background:#fff!important;border-color:#d9e3eb!important;border-radius:8px!important}

/* Mobile permanece com navegação inferior, mas na mesma linguagem visual */
@media(max-width:900px){
  .sidebar{display:none!important}
  .main{padding-top:0!important;margin-left:0!important;padding-bottom:calc(78px + env(safe-area-inset-bottom))!important}
  .topbar{
    position:sticky!important;top:0!important;right:auto!important;
    width:100%!important;min-width:0!important;
    padding:0 12px!important;height:56px!important;
    background:#fff!important;
    border-bottom:1px solid var(--border)!important;
    justify-content:flex-end!important;
  }
  .topbar:before{content:"IDMIX Tech";margin-right:auto;color:#2486bf;font-size:15px;font-weight:700;letter-spacing:-.02em}
  .connection-indicator{display:none!important}
  .top-user b{display:none!important}
  .content{padding:18px 12px 26px!important}
  .mobile-nav{
    display:flex!important;
    background:#fff!important;
    border-top:1px solid var(--border)!important;
    box-shadow:none;
    padding:5px 6px calc(6px + env(safe-area-inset-bottom))!important;
  }
  .mobile-nav .nav-link{color:#83919d!important;background:transparent!important;border-radius:6px!important;font-size:8px!important;font-weight:500!important}
  .mobile-nav .nav-link.active{color:var(--primary)!important;background:#edf7fc!important}
  .mobile-nav .nav-icon{color:currentColor!important}
  .page-title{font-size:22px!important}
}

@media(min-width:901px) and (max-width:1180px){
  .sidebar{padding-right:310px!important;padding-left:14px!important;gap:7px!important}
  .sidebar .nav-link{padding:0 8px!important;font-size:11px!important}
  .sidebar .brand-name{display:none!important}
  .topbar{right:10px!important;min-width:280px!important}
  .content{padding-left:20px!important;padding-right:20px!important}
}

/* Menu "Mais": mantém o cabeçalho curto, no mesmo espírito de apps SaaS clínicos */
.desktop-more-wrap{position:relative!important;display:flex!important;align-items:stretch!important;flex:0 0 auto!important}
.desktop-more-trigger{font-family:inherit!important;cursor:pointer!important}
.desktop-more-menu{
  position:absolute!important;
  top:56px!important;
  right:0!important;
  z-index:160!important;
  width:220px!important;
  padding:7px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  background:#fff!important;
  border:1px solid var(--border)!important;
  border-radius:8px!important;
  box-shadow:none;
}
.desktop-more-menu.hidden{display:none!important}
.sidebar .desktop-more-menu .nav-link{
  width:100%!important;
  min-height:38px!important;
  height:38px!important;
  padding:0 10px!important;
  justify-content:flex-start!important;
  border:0!important;
  border-radius:6px!important;
  font-size:11px!important;
}
.sidebar .desktop-more-menu .nav-link.active{background:#edf7fc!important;color:var(--primary)!important}
@media(max-width:900px){.desktop-more-wrap{display:none!important}}

/* ========================================================================== */
/* IDMIX Tech 1.1.1 — correção estrutural do cabeçalho e alinhamento geral         */
/* ========================================================================== */

/* O cabeçalho agora é uma única estrutura. Evita a antiga sobreposição entre
   sidebar e topbar e impede que o menu “Mais” seja cortado por overflow. */
.app-header{
  position:fixed!important;
  inset:0 0 auto 0!important;
  z-index:120!important;
  height:64px!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  padding:0 18px!important;
  background:#fff!important;
  border-bottom:1px solid var(--border)!important;
  box-shadow:none;
}
.app-header-brand{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  color:inherit!important;
  text-decoration:none!important;
}
.app-header-brand .brand-mark{
  width:34px!important;height:34px!important;flex:0 0 34px!important;
  display:grid!important;place-items:center!important;
  overflow:hidden!important;
  border:1px solid #dce6ef!important;
  border-radius:7px!important;
  background:#fff!important;
  color:var(--primary)!important;
  box-shadow:none;
  font-size:11px!important;font-weight:800!important;
}
.app-header-brand .brand-mark img{width:100%!important;height:100%!important;object-fit:contain!important;background:#fff!important}
.app-header-brand-copy{display:grid!important;min-width:0!important;line-height:1.1!important}
.app-header-brand-copy b{font-size:16px!important;color:#2486bf!important;letter-spacing:-.025em!important}
.app-header-brand-copy small{max-width:145px!important;margin-top:3px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:#95a1ac!important;font-size:9px!important}

.app-header-nav{
  min-width:0!important;
  height:64px!important;
  display:flex!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:0!important;
  overflow:visible!important;
}
.app-header-nav>.nav-link,
.app-header-nav>.desktop-more-wrap>.nav-link{
  position:relative!important;
  flex:0 0 auto!important;
  min-width:0!important;
  min-height:64px!important;
  height:64px!important;
  padding:0 11px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  border:0!important;
  border-bottom:2px solid transparent!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none;
  color:#607080!important;
  font-size:11px!important;
  font-weight:500!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  transform:none!important;
}
.app-header-nav>.nav-link:hover,
.app-header-nav>.desktop-more-wrap>.nav-link:hover{background:#f8fbfd!important;color:var(--primary)!important}
.app-header-nav>.nav-link.active,
.app-header-nav>.desktop-more-wrap>.nav-link.active{background:#f8fbfd!important;color:var(--primary)!important;border-bottom-color:var(--primary)!important}
.app-header-nav .nav-icon{width:19px!important;height:19px!important;display:grid!important;place-items:center!important;background:transparent!important;color:currentColor!important;border-radius:0!important}
.app-header-nav .nav-icon .ui-icon{width:16px!important;height:16px!important}

.app-header-actions{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:5px!important;
  white-space:nowrap!important;
}
.app-header-actions .connection-indicator{position:static!important}
.app-header-actions .top-user-wrap{position:relative!important}
.app-header-actions .top-user{max-width:170px!important}
.app-header-actions .user-menu-popover{top:46px!important;right:0!important}

/* Dropdown fora de qualquer área rolável/cortada. */
.app-header-nav .desktop-more-wrap{position:relative!important;display:flex!important;align-items:stretch!important;flex:0 0 auto!important;overflow:visible!important}
.app-header-nav .desktop-more-menu{
  position:absolute!important;
  top:58px!important;
  left:auto!important;
  right:0!important;
  z-index:260!important;
  width:230px!important;
  max-height:min(70vh,520px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:7px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  background:#fff!important;
  border:1px solid var(--border)!important;
  border-radius:8px!important;
  box-shadow:none;
}
.app-header-nav .desktop-more-menu.hidden{display:none!important}
.app-header-nav .desktop-more-menu .nav-link{
  width:100%!important;
  min-height:38px!important;
  height:auto!important;
  padding:9px 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  border:0!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#607080!important;
  font-size:11px!important;
  line-height:1.25!important;
  text-decoration:none!important;
  white-space:normal!important;
}
.app-header-nav .desktop-more-menu .nav-link:hover{background:#f4f8fb!important;color:var(--primary)!important}
.app-header-nav .desktop-more-menu .nav-link.active{background:#edf7fc!important;color:var(--primary)!important}

/* Corpo: uma única reserva de altura para o cabeçalho. */
.shell>.main{margin-left:0!important;padding-top:64px!important;width:100%!important;min-width:0!important;background:var(--bg)!important}
.shell>.main>.content{min-width:0!important}

/* Proteções de layout para telas com muitos controles. */
.content,.content>*{min-width:0!important}
.grid,.g2,.g3,.g4,.form-row,.settings-grid{min-width:0!important}
.grid>*,.g2>*,.g3>*,.g4>*,.form-row>*,.settings-grid>*{min-width:0!important;max-width:100%!important}
.page-head{min-width:0!important;flex-wrap:wrap!important;align-items:flex-start!important}
.page-head>div:first-child{min-width:220px!important;flex:1 1 360px!important}
.page-head>.actions{min-width:0!important;max-width:100%!important;justify-content:flex-end!important}
.card,.stat-card,.settings-section-card,.management-card{min-width:0!important;max-width:100%!important}
.table-wrap{max-width:100%!important;overflow-x:auto!important;overflow-y:auto!important}
.table-wrap table{max-width:none!important}
.actions{min-width:0!important;max-width:100%!important;align-items:center!important}
.actions>.btn{max-width:100%!important}
img,svg,video,canvas{max-width:100%}

/* Notebooks: reduz ruído sem quebrar nem sobrepor o menu. */
@media(min-width:901px) and (max-width:1180px){
  .app-header{gap:10px!important;padding:0 12px!important}
  .app-header-brand-copy small{display:none!important}
  .app-header-nav>.nav-link,.app-header-nav>.desktop-more-wrap>.nav-link{padding-left:8px!important;padding-right:8px!important;font-size:10px!important}
  .app-header-actions .connection-indicator{display:none!important}
  .app-header-actions .top-user b{display:none!important}
  .app-header-actions .top-user{width:38px!important;padding:3px!important;justify-content:center!important}
  .content{padding-left:20px!important;padding-right:20px!important}
}

/* Tablet/celular: cabeçalho simples + navegação inferior existente. */
@media(max-width:900px){
  .app-header{
    height:56px!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:8px!important;
    padding:0 10px 0 12px!important;
  }
  .app-header-nav{display:none!important}
  .app-header-brand .brand-mark{width:32px!important;height:32px!important;flex-basis:32px!important}
  .app-header-brand-copy small{display:none!important}
  .app-header-actions .connection-indicator,.app-header-actions .pwa-install{display:none!important}
  .app-header-actions .top-user b{display:none!important}
  .app-header-actions .top-user{width:36px!important;min-height:36px!important;padding:2px!important;justify-content:center!important;border-left:0!important}
  .app-header-actions .top-user>span{width:30px!important;height:30px!important}
  .app-header-actions .user-menu-popover{top:42px!important;right:0!important}
  .shell>.main{padding-top:56px!important;padding-bottom:calc(78px + env(safe-area-inset-bottom))!important}
  .content{padding:18px 12px 26px!important}
  .page-head>div:first-child{min-width:0!important;flex-basis:100%!important}
  .page-head>.actions{width:100%!important;justify-content:flex-start!important}
  .mobile-nav{z-index:130!important}
}

@media(max-width:620px){
  .app-header-actions .top-btn{width:34px!important;height:34px!important;min-width:34px!important}
  .page-title{font-size:21px!important}
  .card{padding:14px!important}
  .actions>.btn{flex:1 1 130px!important;justify-content:center!important}
  .g4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* ========================================================================== */
/* IDMIX Tech 1.1.2 — preferências funcionais, tema, tipografia, login e modais   */
/* ========================================================================== */

:root,html.light{
  --bg:#f6f8fb;--surface:#ffffff;--surface2:#f2f6fa;--fg:#1d2935;--muted:#6f7f8d;
  --border:#dce5ed;--border-strong:#c8d5df;--shadow:0 10px 28px rgba(32,52,70,.08);
  color-scheme:light;
}
html:not(.light){
  --bg:#0f1720!important;--surface:#17212b!important;--surface2:#1d2935!important;--fg:#e8eef5!important;
  --muted:#9aa8b6!important;--border:#2b3947!important;--border-strong:#405163!important;
  --shadow:0 14px 34px rgba(0,0,0,.28)!important;color-scheme:dark;
}
html,body{font-family:var(--app-font,"Poppins",sans-serif)!important}
body{font-size:calc(14px * var(--ui-scale,1))!important;line-height:1.48!important;background:var(--bg)!important;color:var(--fg)!important}
.small{font-size:calc(13px * var(--ui-scale,1))!important}.tiny{font-size:calc(11px * var(--ui-scale,1))!important}
.label{font-size:calc(11.5px * var(--ui-scale,1))!important}.input,.select,.textarea{font-size:calc(14px * var(--ui-scale,1))!important}
.btn{font-size:calc(13px * var(--ui-scale,1))!important}.table{font-size:calc(13px * var(--ui-scale,1))!important}.table th{font-size:calc(11px * var(--ui-scale,1))!important}
.page-title{font-size:calc(26px * var(--ui-scale,1))!important}.page-sub{font-size:calc(13px * var(--ui-scale,1))!important}
.app-header-nav>.nav-link,.app-header-nav>.desktop-more-wrap>.nav-link,.app-header-nav .desktop-more-menu .nav-link{font-size:calc(12px * var(--ui-scale,1))!important}
.app-header-brand-copy b,.login-title,.link-button{color:var(--primary)!important}

/* Componentes usam variáveis também no modo escuro. */
html:not(.light) .app-header,html:not(.light) .card,html:not(.light) .modal,html:not(.light) .table-wrap,
html:not(.light) .user-menu-popover,html:not(.light) .popover,html:not(.light) .desktop-more-menu,
html:not(.light) .settings-group,html:not(.light) .management-card,html:not(.light) .permission-role-card,
html:not(.light) .operational-access-item{background:var(--surface)!important;color:var(--fg)!important;border-color:var(--border)!important}
html:not(.light) .input,html:not(.light) .select,html:not(.light) .textarea,html:not(.light) .btn.outline,
html:not(.light) .top-btn,html:not(.light) .top-user,html:not(.light) .theme-btn{background:var(--surface2)!important;color:var(--fg)!important;border-color:var(--border)!important}
html:not(.light) .table th,html:not(.light) .table thead,html:not(.light) .table tr:hover td{background:var(--surface2)!important;color:var(--fg)!important}
html:not(.light) .table td{background:var(--surface)!important;color:var(--fg)!important;border-color:var(--border)!important}
html:not(.light) .app-header-nav>.nav-link,html:not(.light) .app-header-nav>.desktop-more-wrap>.nav-link{color:var(--muted)!important}
html:not(.light) .app-header-nav>.nav-link:hover,html:not(.light) .app-header-nav>.desktop-more-wrap>.nav-link:hover,
html:not(.light) .app-header-nav>.nav-link.active,html:not(.light) .app-header-nav>.desktop-more-wrap>.nav-link.active{background:var(--surface2)!important;color:var(--primary)!important}
html:not(.light) .app-header-nav .desktop-more-menu .nav-link{background:var(--surface)!important;color:var(--muted)!important}
html:not(.light) .app-header-nav .desktop-more-menu .nav-link:hover,html:not(.light) .app-header-nav .desktop-more-menu .nav-link.active{background:var(--surface2)!important;color:var(--primary)!important}
html:not(.light) .muted,html:not(.light) .page-sub,html:not(.light) small{color:var(--muted)!important}

/* Densidade realmente altera espaçamento. */
html[data-ui-density="compact"] .card{padding:14px!important}html[data-ui-density="compact"] .space{gap:12px!important}
html[data-ui-density="comfortable"] .card{padding:18px!important}html[data-ui-density="comfortable"] .space{gap:16px!important}
html[data-ui-density="spacious"] .card{padding:24px!important}html[data-ui-density="spacious"] .space{gap:22px!important}
html[data-ui-radius="square"] .card,html[data-ui-radius="square"] .btn,html[data-ui-radius="square"] .input,html[data-ui-radius="square"] .select,html[data-ui-radius="square"] .textarea,html[data-ui-radius="square"] .modal{border-radius:4px!important}
html[data-ui-radius="rounded"] .card{border-radius:14px!important}html[data-ui-radius="rounded"] .btn,html[data-ui-radius="rounded"] .input,html[data-ui-radius="rounded"] .select,html[data-ui-radius="rounded"] .textarea{border-radius:9px!important}html[data-ui-radius="rounded"] .modal{border-radius:16px!important}

/* Estilos visuais com diferenças reais. */
html[data-ui-style="modern"] .card{border:1px solid var(--border)!important;box-shadow:none}
html[data-ui-style="classic"] .card{border:1px solid var(--border-strong)!important;box-shadow:none}html[data-ui-style="classic"] .btn{font-weight:650!important}
html[data-ui-style="minimal"] .card{border-color:transparent!important;box-shadow:none;background:var(--surface)!important}html[data-ui-style="minimal"] .app-header{box-shadow:none}
html[data-ui-style="glass"] .card,html[data-ui-style="glass"] .modal{background:color-mix(in srgb,var(--surface) 82%,transparent)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;box-shadow:none}
html[data-ui-style="soft"] .card{background:var(--surface2)!important;border-color:transparent!important;box-shadow:none}
html[data-ui-style="contrast"] .card,html[data-ui-style="contrast"] .input,html[data-ui-style="contrast"] .select,html[data-ui-style="contrast"] .btn{border-width:2px!important;border-color:var(--border-strong)!important}html[data-ui-style="contrast"] .page-title,html[data-ui-style="contrast"] h2,html[data-ui-style="contrast"] h3{font-weight:800!important}

/* Paleta de destaque aplicada aos principais estados de ação. */
.btn.primary,.btn.green{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}
.btn.primary:hover,.btn.green:hover{filter:none!important}.theme-btn.active{border-color:var(--primary)!important;box-shadow:none}
.theme-color-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(112px,1fr))!important;gap:7px!important}.theme-color-grid .theme-btn{justify-content:flex-start!important}

/* Modal sempre centralizado na tela; conteúdo ocupa o card corretamente. */
.modal-wrap{position:fixed!important;inset:0!important;z-index:500!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:18px!important;overflow:auto!important}
.modal{position:relative!important;margin:auto!important;width:min(680px,100%)!important;max-height:calc(100dvh - 36px)!important;padding:0!important;display:flex!important;flex-direction:column!important;background:var(--surface)!important;color:var(--fg)!important;border:1px solid var(--border)!important;box-shadow:none}
.modal.modal-lg{width:min(900px,100%)!important}.modal.modal-xl{width:min(1180px,100%)!important}
.modal-head{flex:0 0 auto!important;padding:16px 20px!important;border-bottom:1px solid var(--border)!important}.modal-body{flex:1 1 auto!important;width:100%!important;min-width:0!important;padding:18px 20px 20px!important;overflow:auto!important}
.modal-body>form,.modal-body>.space,.modal-body>.grid{width:100%!important;margin-inline:auto!important}.modal-actions{justify-content:center!important}
@media(max-width:700px){.modal-wrap{align-items:center!important;padding:10px!important}.modal,.modal.modal-lg,.modal.modal-xl{width:min(100%,620px)!important;max-height:calc(100dvh - 20px)!important;border-radius:14px!important}.modal-body{padding:15px!important}}

/* Login/recovery: background visível e marca/copy dentro do card. */
.login{position:relative!important;isolation:isolate!important;background:var(--bg)!important}.login-background{position:fixed!important;inset:0!important;display:block!important;opacity:1!important;z-index:-2!important;pointer-events:none!important;overflow:hidden!important}.login-background img{width:100%!important;height:100%!important;object-fit:cover!important;opacity:1!important;filter:none!important}.login-background span{position:absolute!important;inset:0!important;background:linear-gradient(120deg,rgba(5,15,25,.54),rgba(5,15,25,.22))!important}
.login-box{position:relative!important;z-index:2!important}.login-card{background:color-mix(in srgb,var(--surface) 94%,transparent)!important;color:var(--fg)!important;border:1px solid color-mix(in srgb,var(--border) 80%,transparent)!important;box-shadow:none;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important}
.login-card-brand{display:flex!important;align-items:center!important;gap:13px!important;padding-bottom:17px!important;margin-bottom:20px!important;border-bottom:1px solid var(--border)!important}.login-card-brand .brand-mark{width:52px!important;height:52px!important;flex:0 0 52px!important}.login-card-brand-copy{min-width:0!important}.login-card-brand-copy .login-title{font-size:22px!important;font-weight:800!important}.login-card-brand-copy .brand-sub{font-size:13px!important;font-weight:650!important;color:var(--fg)!important}.login-card-brand-copy p{margin:3px 0 0!important;font-size:12px!important;color:var(--muted)!important}.login-copyright{margin:20px 0 0!important;padding-top:14px!important;border-top:1px solid var(--border)!important;text-align:center!important;font-size:11px!important;color:var(--muted)!important}

/* Acesso operacional: apenas liga/desliga e PIN gerado. */
.operational-access-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}.operational-access-item{padding:18px!important;border:1px solid var(--border)!important;border-radius:12px!important;background:var(--surface)!important}.operational-access-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important}.operational-access-head>div{display:grid!important;gap:4px!important}.operational-access-head small{color:var(--muted)!important}.toggle-control{position:relative!important;width:48px!important;height:26px!important;flex:0 0 48px!important}.toggle-control input{position:absolute!important;opacity:0!important;pointer-events:none!important}.toggle-control span{position:absolute!important;inset:0!important;border-radius:999px!important;background:#cbd5df!important;cursor:pointer!important;transition:.18s!important}.toggle-control span:after{content:""!important;position:absolute!important;width:20px!important;height:20px!important;left:3px!important;top:3px!important;border-radius:50%!important;background:#fff!important;box-shadow:none;transition:.18s!important}.toggle-control input:checked+span{background:var(--primary)!important}.toggle-control input:checked+span:after{transform:translateX(22px)!important}.operational-access-status{margin-top:14px!important;display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important}.generated-pin-box{margin-top:14px!important;padding:14px!important;display:grid!important;grid-template-columns:1fr auto!important;gap:8px 12px!important;align-items:center!important;background:var(--surface2)!important;border:1px solid var(--border)!important;border-radius:10px!important}.generated-pin-box small,.generated-pin-box p{grid-column:1/-1!important;margin:0!important;color:var(--muted)!important}.generated-pin-box strong{font-size:26px!important;letter-spacing:.14em!important;color:var(--primary)!important}
@media(max-width:700px){.operational-access-grid{grid-template-columns:1fr!important}}

/* Menu configurável: superior, inferior ou lateral direita. */
@media(min-width:901px){
  .shell.menu-pos-top>.main{margin-right:0!important;padding-top:64px!important;padding-bottom:0!important}.shell.menu-pos-top .app-header{inset:0 0 auto 0!important;width:auto!important;height:64px!important}
  .shell.menu-pos-bottom .app-header{inset:auto 0 0 0!important;width:auto!important;height:64px!important;border-top:1px solid var(--border)!important;border-bottom:0!important}.shell.menu-pos-bottom>.main{margin-right:0!important;padding-top:0!important;padding-bottom:64px!important}.shell.menu-pos-bottom .desktop-more-menu{top:auto!important;bottom:58px!important}.shell.menu-pos-bottom .user-menu-popover{top:auto!important;bottom:46px!important}
  .shell.menu-pos-right .app-header{inset:0 0 0 auto!important;width:250px!important;height:100dvh!important;padding:14px 12px!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto minmax(0,1fr) auto!important;align-items:stretch!important;gap:12px!important;border-left:1px solid var(--border)!important;border-bottom:0!important;overflow:visible!important}.shell.menu-pos-right>.main{margin-right:250px!important;width:calc(100% - 250px)!important;padding-top:0!important;padding-bottom:0!important}.shell.menu-pos-right .app-header-brand{padding:2px 5px!important}.shell.menu-pos-right .app-header-brand-copy small{max-width:160px!important;display:block!important}.shell.menu-pos-right .app-header-nav{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;overflow-y:auto!important;overflow-x:hidden!important;padding:4px 0!important}.shell.menu-pos-right .app-header-nav>.nav-link{width:100%!important;height:44px!important;min-height:44px!important;justify-content:flex-start!important;padding:0 11px!important;border:0!important;border-left:3px solid transparent!important;border-radius:8px!important}.shell.menu-pos-right .app-header-nav>.nav-link.active{border-left-color:var(--primary)!important}.shell.menu-pos-right .app-header-actions{flex-wrap:wrap!important;justify-content:flex-start!important;border-top:1px solid var(--border)!important;padding-top:10px!important}.shell.menu-pos-right .app-header-actions .top-user{max-width:100%!important}.shell.menu-pos-right .user-menu-popover{top:auto!important;bottom:44px!important;right:0!important}.shell.menu-pos-right .desktop-more-wrap{display:none!important}
}

/* Celular mantém configuração própria independentemente do menu desktop. */
@media(max-width:900px){
  .shell.menu-pos-right>.main,.shell.menu-pos-bottom>.main,.shell.menu-pos-top>.main{margin-right:0!important;width:100%!important;padding-top:56px!important;padding-bottom:calc(78px + env(safe-area-inset-bottom))!important}.shell.menu-pos-right .app-header,.shell.menu-pos-bottom .app-header,.shell.menu-pos-top .app-header{inset:0 0 auto 0!important;width:auto!important;height:56px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;padding:0 10px 0 12px!important;border-left:0!important;border-bottom:1px solid var(--border)!important}
  .shell.mobile-menu-top .mobile-nav{top:56px!important;bottom:auto!important;border-top:0!important;border-bottom:1px solid var(--border)!important}.shell.mobile-menu-top>.main{padding-top:calc(56px + 68px)!important;padding-bottom:24px!important}.shell.mobile-menu-bottom .mobile-nav{top:auto!important;bottom:0!important}
}
.right-nav-only{display:none!important}
@media(min-width:901px){
  .shell.menu-pos-right .app-header-nav>.nav-link,.shell.menu-pos-right .app-header-nav>.desktop-more-wrap{display:none!important}
  .shell.menu-pos-right .right-nav-only{display:flex!important;flex-direction:column!important;gap:3px!important;width:100%!important}
  .shell.menu-pos-right .right-nav-only .nav-link{width:100%!important;min-height:44px!important;height:44px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;padding:0 11px!important;border:0!important;border-left:3px solid transparent!important;border-radius:8px!important;background:transparent!important;color:var(--muted)!important;text-decoration:none!important;font-size:calc(13px * var(--ui-scale,1))!important}
  .shell.menu-pos-right .right-nav-only .nav-link:hover{background:var(--surface2)!important;color:var(--primary)!important}.shell.menu-pos-right .right-nav-only .nav-link.active{background:var(--surface2)!important;color:var(--primary)!important;border-left-color:var(--primary)!important}
}
/* Reforço de legibilidade do tamanho padrão sobre regras legadas compactas. */
body .small{font-size:calc(13px * var(--ui-scale,1))!important}body .tiny{font-size:calc(11.5px * var(--ui-scale,1))!important}body .label{font-size:calc(12px * var(--ui-scale,1))!important}body .input,body .select,body .textarea{font-size:calc(14px * var(--ui-scale,1))!important}body .btn{font-size:calc(13px * var(--ui-scale,1))!important}


/* ===== IDMIX Tech 1.1.3 · estabilização comercial ===== */
:root{--bp-header-h:64px;--bp-side-w:250px}
body{font-size:calc(16px * var(--ui-scale,1))!important}
.input,.select,.textarea,.btn{font-size:calc(14px * var(--ui-scale,1))!important}
.label{font-size:calc(13px * var(--ui-scale,1))!important}
.small{font-size:calc(13px * var(--ui-scale,1))!important}
.tiny{font-size:calc(12px * var(--ui-scale,1))!important}
.page-title{font-size:clamp(24px,2.2vw,32px)!important}
.btn{min-height:40px!important;padding:0 15px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important}
.btn.compact{min-height:34px!important;padding:0 11px!important}
.btn .ui-icon{width:18px!important;height:18px!important;flex:0 0 18px!important}
.icon-btn{width:36px;height:36px;min-width:36px;padding:0!important;border:1px solid transparent;background:transparent;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer}
.icon-btn:hover{background:var(--surface2);color:var(--primary)}
.icon-btn.subtle{border-color:var(--border)}
.icon-btn:disabled{opacity:.35;cursor:not-allowed}
.rotate-180 .ui-icon{transform:rotate(180deg)}
.x{width:34px!important;height:34px!important;border:0!important;background:transparent!important;box-shadow:none;color:var(--muted)!important;font-size:23px!important;line-height:1!important;border-radius:8px!important}
.x:hover{background:var(--surface2)!important;color:var(--text)!important}

/* Modal com margens realmente simétricas e sem cobrir os menus fixos. */
.modal-wrap{padding:18px!important;box-sizing:border-box!important;overflow:auto!important;z-index:480!important}
.modal{padding:0!important;overflow:hidden!important}
.modal-head{padding:15px 18px!important;min-height:58px!important}
.modal-body{padding:18px!important;overflow:auto!important;scrollbar-gutter:stable both-edges!important}
.modal-body>*{max-width:100%!important}
@media(min-width:901px){
  .shell.menu-pos-top~#modal-root .modal-wrap,body:has(.shell.menu-pos-top) .modal-wrap{inset:var(--bp-header-h) 0 0 0!important}
  .shell.menu-pos-bottom~#modal-root .modal-wrap,body:has(.shell.menu-pos-bottom) .modal-wrap{inset:0 0 var(--bp-header-h) 0!important}
  .shell.menu-pos-left~#modal-root .modal-wrap,body:has(.shell.menu-pos-left) .modal-wrap{inset:0 0 0 var(--bp-side-w)!important}
  .shell.menu-pos-right~#modal-root .modal-wrap,body:has(.shell.menu-pos-right) .modal-wrap{inset:0 var(--bp-side-w) 0 0!important}
  .app-header{z-index:520!important}
}
/* Menu lateral esquerdo, equivalente ao direito. */
@media(min-width:901px){
  .shell.menu-pos-left .app-header{inset:0 auto 0 0!important;width:var(--bp-side-w)!important;height:100dvh!important;padding:14px 12px!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto minmax(0,1fr) auto!important;align-items:stretch!important;gap:12px!important;border-right:1px solid var(--border)!important;border-bottom:0!important}
  .shell.menu-pos-left>.main{margin-left:var(--bp-side-w)!important;margin-right:0!important;width:calc(100% - var(--bp-side-w))!important;padding:0!important}
  .shell.menu-pos-left .app-header-nav{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;overflow:auto!important;padding:4px 0!important}
  .shell.menu-pos-left .app-header-nav>.nav-link,.shell.menu-pos-left .app-header-nav>.desktop-more-wrap{display:none!important}
  .shell.menu-pos-left .right-nav-only{display:flex!important;flex-direction:column!important;gap:3px!important;width:100%!important}
  .shell.menu-pos-left .right-nav-only .nav-link{width:100%!important;height:44px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;padding:0 11px!important;border:0!important;border-right:3px solid transparent!important;border-radius:8px!important;background:transparent!important;color:var(--muted)!important;text-decoration:none!important}
  .shell.menu-pos-left .right-nav-only .nav-link:hover,.shell.menu-pos-left .right-nav-only .nav-link.active{background:var(--surface2)!important;color:var(--primary)!important}
  .shell.menu-pos-left .right-nav-only .nav-link.active{border-right-color:var(--primary)!important}
  .shell.menu-pos-left .app-header-actions{flex-wrap:wrap!important;justify-content:flex-start!important;border-top:1px solid var(--border)!important;padding-top:10px!important}
}
/* Switch coerente com a opção de bordas. */
.toggle-control{width:50px!important;height:28px!important;flex:0 0 50px!important}
.toggle-control span{border-radius:8px!important}
.toggle-control span:after{width:20px!important;height:18px!important;left:4px!important;top:5px!important;border-radius:4px!important}
.toggle-control input:checked+span:after{transform:translateX(22px)!important}
html[data-ui-radius="rounded"] .toggle-control span{border-radius:999px!important}
html[data-ui-radius="rounded"] .toggle-control span:after{width:20px!important;height:20px!important;top:4px!important;border-radius:50%!important}

/* PIN sem rótulo redundante. */
.operational-access-status{display:none!important}
.generated-pin-box.persistent{grid-template-columns:1fr auto!important;margin-top:15px!important}
.generated-pin-box.persistent strong{font-size:26px!important}
.pin-actions{display:flex;align-items:center;gap:6px}

/* Ordem do menu em visualização horizontal. */
.menu-order-strip{display:flex!important;gap:10px!important;overflow-x:auto!important;padding:5px 2px 10px!important;scrollbar-width:thin}
.menu-order-chip{min-width:180px;max-width:220px;display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid var(--border);background:var(--surface2);border-radius:10px;padding:8px 9px}
.menu-order-chip-main{display:flex;align-items:center;gap:8px;min-width:0}
.menu-order-chip-main b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}
.menu-order-chip .nav-icon{width:24px;height:24px;display:grid;place-items:center;color:var(--primary)}
.menu-order-chip .menu-order-actions{display:flex;gap:4px}
.menu-order-chip .icon-btn{width:28px;height:28px;min-width:28px}

/* Dashboard / caixa */
.cash-session-title{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important}
.cash-state-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.04em}
.cash-state-badge.open{background:#dcfce7;color:#166534}
.cash-state-badge.closed{background:#e5e7eb;color:#4b5563}
.cash-open-date{font-size:14px!important}
.date-chip{font-size:15px!important;padding:9px 13px!important}

/* PDV */
.pdv-search-wrap{position:relative!important}
.pdv-search-wrap>.ui-icon{position:absolute!important;right:13px!important;left:auto!important;top:50%!important;transform:translateY(-50%)!important;z-index:2!important;color:var(--muted)!important}
.pdv-search-wrap .input{padding-right:42px!important;padding-left:13px!important}
.pdv-cart{position:sticky!important;top:calc(var(--bp-header-h) + 14px)!important;max-height:calc(100dvh - var(--bp-header-h) - 28px)!important;overflow:auto!important;align-self:start!important}
.shell.menu-pos-bottom .pdv-cart,.shell.menu-pos-left .pdv-cart,.shell.menu-pos-right .pdv-cart{top:14px!important;max-height:calc(100dvh - 28px)!important}
.pdv-cart-head h2{margin:0!important;font-size:20px!important}
.pdv-cart-title{font-size:18px!important;margin-bottom:4px!important}
.pdv-remove{background:#fee2e2!important;color:#b91c1c!important;border:1px solid #fecaca!important}
.pdv-print-option{margin-top:10px!important;padding:10px 12px!important;border:1px solid var(--border)!important;border-radius:9px!important;background:var(--surface2)!important}
.pdv-adjust-summary{display:grid;gap:7px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}
.pdv-adjust-summary>div{display:flex;justify-content:space-between;gap:12px}
.pdv-adjust-summary .grand{font-size:18px;border-top:1px solid var(--border);padding-top:8px}
.pdv-checkout{margin-top:10px!important}

/* Comandas e cardápio público */
.comanda-physical-scan{display:flex;align-items:center;justify-content:center;gap:9px;min-height:46px}
.public-brand-v113{display:grid!important;grid-template-columns:auto 1fr!important;gap:16px!important;align-items:start!important}
.public-brand-v113 .public-logo,.public-brand-v113 .brand-mark{grid-row:1}
.public-context-qr-v113{margin-top:10px;width:92px}
.public-context-qr-v113 img{width:86px;height:86px;display:block}
.public-context-main-v113{display:grid;gap:4px;align-content:start}
.public-context-main-v113 h2{margin:0;font-size:19px}
.public-context-actions-v113{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}

/* Delivery */
.delivery-change-wrap.hidden-by-payment{display:none!important}
.delivery-customer-results{position:relative;z-index:5}
.delivery-draft-fee{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--border)}
.delivery-draft-total-final{display:flex;align-items:center;justify-content:space-between;padding:14px 0 2px;border-top:2px solid var(--border);font-size:18px}
.delivery-order-card .delivery-meta-line{display:flex;gap:5px;align-items:baseline}
.track-brand-v113{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center}
.track-brand-v113 img{max-width:72px;max-height:72px;object-fit:contain}
.track-brand-copy{display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:center}
.track-brand-copy b{font-size:20px;color:var(--primary)}
.track-brand-copy small{grid-column:1/-1}
.track-estimate{display:flex;align-items:center;justify-content:space-between;gap:12px}
.track-estimate strong{font-size:18px}
.track-order-item{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--border)}
.track-order-item img,.track-order-thumb{width:58px;height:58px;border-radius:9px;object-fit:cover;background:var(--surface2)}
.track-order-thumb{display:grid;place-items:center;color:var(--muted)}

/* Cozinha: colunas visualmente separadas por etapa. */
.kitchen-col[data-status="pendente"],.kanban-col.pendente{border-top:4px solid #f59e0b!important}
.kitchen-col[data-status="preparando"],.kanban-col.preparando{border-top:4px solid #3b82f6!important}
.kitchen-col[data-status="pronto"],.kanban-col.pronto{border-top:4px solid #22c55e!important}
.kitchen-col[data-status="entregue"],.kanban-col.entregue{border-top:4px solid #94a3b8!important}

/* Produtos */
.product-form .label{font-weight:500!important}
.product-name-input{text-transform:uppercase!important}
.product-code-tools{grid-template-columns:auto minmax(0,1fr)!important}
.product-code-tools>.btn{order:1!important}
.product-code-tools>#p-code{order:2!important}

/* Financeiro */
.reconcile-live{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.reconcile-live>div{padding:10px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}
.reconcile-live small{display:block;color:var(--muted)}
.reconcile-live b{display:block;margin-top:4px}

/* Notificações com tamanho semelhante ao popover de chamados. */
.system-notification-popover{width:min(390px,calc(100vw - 24px))!important;max-height:min(560px,72vh)!important}
.system-notification-item{min-height:68px!important}
.wa-qr-box{text-align:center;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}
.wa-qr-box img{width:min(260px,80%);aspect-ratio:1;object-fit:contain;background:#fff;padding:8px}

/* Botões responsivos: em telas estreitas preserva o ícone e oculta texto onde houver ambos. */
@media(max-width:760px){
  .btn:has(.ui-icon)>span:not(.option-icon),.actions .btn:has(.ui-icon)>span{display:none}
  .btn:has(.ui-icon){padding-inline:10px!important;min-width:40px!important}
  .pdv-shell{grid-template-columns:1fr!important}
  .pdv-cart{position:relative!important;top:auto!important;max-height:none!important}
  .operational-access-grid{grid-template-columns:1fr!important}
  .public-brand-v113{grid-template-columns:1fr!important}
}

/* ========================================================================== */
/* IDMIX Tech 1.1.3 — acabamento comercial e componentes proporcionais            */
/* ========================================================================== */

/* Fechar modal discreto, sem preenchimento. */
.modal-head .x{width:32px!important;height:32px!important;min-width:32px!important;border:0!important;background:transparent!important;box-shadow:none;color:var(--muted)!important;font-size:22px!important;font-weight:400!important;display:grid!important;place-items:center!important;padding:0!important;line-height:1!important;border-radius:6px!important}
.modal-head .x:hover{background:transparent!important;color:var(--fg)!important;transform:none!important}
.modal-body{padding-left:20px!important;padding-right:20px!important;scrollbar-gutter:stable both-edges!important}

/* Switch operacional segue a opção de bordas. */
.operational-access-main{display:flex;align-items:center;justify-content:space-between;gap:16px}
.operational-access-main>div{display:grid;gap:3px}.operational-access-main small{color:var(--muted)}
.switch{position:relative;width:50px;height:28px;flex:0 0 50px;display:inline-block}
.switch input{position:absolute;opacity:0;pointer-events:none}
.switch span{position:absolute;inset:0;background:#cbd5df;border-radius:8px;cursor:pointer;transition:.18s}
.switch span:after{content:"";position:absolute;left:4px;top:5px;width:20px;height:18px;background:#fff;border-radius:4px;box-shadow:none;transition:.18s}
.switch input:checked+span{background:var(--primary)}.switch input:checked+span:after{transform:translateX(22px)}
html[data-ui-radius="rounded"] .switch span{border-radius:999px}
html[data-ui-radius="rounded"] .switch span:after{width:20px;height:20px;top:4px;border-radius:50%}
.operational-pin-row{margin-top:14px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:7px;padding:11px 12px;background:var(--surface2);border:1px solid var(--border);border-radius:10px}
.operational-pin-row code{font-size:24px;letter-spacing:.14em;font-weight:800;color:var(--primary);text-align:center}
.icon-btn{width:36px;height:36px;min-width:36px;padding:0!important;display:grid!important;place-items:center!important;border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--fg)!important;border-radius:8px!important}
.icon-btn .ui-icon{width:17px!important;height:17px!important;margin:0!important}.icon-btn.danger{color:#b91c1c!important;border-color:#fecaca!important;background:#fff7f7!important}.rotate-180{transform:rotate(180deg)}

/* PDV */
.pdv-adjustment-summary{display:grid;gap:5px;margin-top:8px}.pdv-adjustment-summary>div{display:flex;justify-content:space-between;gap:12px;font-size:13px}.pdv-adjustment-summary>div b{font-weight:700}
.pdv-adjust-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--border);background:var(--surface2);border-radius:10px}.pdv-adjust-preview b{font-size:19px}
.pdv-print-option{display:flex!important;align-items:center!important;gap:9px!important}.pdv-print-option input{width:17px;height:17px;accent-color:var(--primary)}.pdv-print-option span{display:flex;align-items:center;gap:8px}.pdv-print-option .ui-icon{width:17px;height:17px}
.pdv-cart .ghost-danger,.pdv-cart .icon-btn.danger{color:#b91c1c!important}

/* Cardápio público com QR sob a marca e contexto ao lado. */
.public-context-v113{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start;width:100%}
.public-context-left{display:grid;justify-items:start;gap:10px}.public-context-left .public-logo{max-width:105px;max-height:82px;object-fit:contain}.public-context-qr-v113{width:88px!important;height:88px!important;object-fit:contain;background:#fff;padding:4px;border:1px solid var(--border);border-radius:8px;margin:0!important}
.public-context-right{display:grid;gap:7px;align-content:start;min-width:0}.public-context-right h1{font-size:19px!important;line-height:1.25;margin:0!important}.public-context-right small{color:var(--muted)}.public-context-right b{font-size:13px;font-weight:650}.public-context-right .btn{justify-self:start}
.public-hero:has(.public-context-v113.has-command)+.menu-public>#public-service-tools{display:none!important}

/* Delivery: autocomplete, taxa como item e total no fim. */
.delivery-name-autocomplete{position:relative}.delivery-name-autocomplete .delivery-customer-results{position:absolute;left:0;right:0;top:100%;z-index:20;background:var(--surface);border:1px solid var(--border);box-shadow:none;max-height:260px;overflow:auto;border-radius:9px;margin-top:4px}
.delivery-customer-option{width:100%;border:0;border-bottom:1px solid var(--border);background:var(--surface);color:var(--fg);padding:10px 12px;text-align:left;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.delivery-customer-option:last-child{border-bottom:0}.delivery-customer-option:hover{background:var(--surface2)}.delivery-customer-option span{display:grid;gap:3px}.delivery-customer-option small{color:var(--muted)}
.delivery-fee-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,220px);align-items:end;gap:14px;padding:12px 0;border-top:1px solid var(--border)}
.delivery-draft-grand-total{display:grid;gap:8px}.delivery-fee-as-item,.delivery-draft-grand-total>.grand{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}.delivery-fee-as-item span{display:flex;align-items:center;gap:8px}.delivery-fee-as-item .ui-icon{width:17px;height:17px;color:var(--primary)}.delivery-draft-grand-total>.grand{font-size:19px;background:var(--surface);border-width:2px}.delivery-draft-grand-total>.grand b{font-size:21px}
.delivery-comanda-grid>div>span{white-space:normal!important;margin-right:4px!important}.delivery-comanda-grid>div>b{overflow-wrap:anywhere}

/* Tracking do cliente. */
.track-brand-v113{display:grid!important;gap:5px!important;padding:4px 2px 10px}.track-brand-top{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px}.track-brand-top strong{justify-self:end;font-size:20px;color:var(--primary)}.track-brand-v113>small{color:var(--muted);font-size:13px}.track-logo{width:auto;max-width:86px;height:64px;object-fit:contain;object-position:left center}
.track-greeting{display:grid;gap:6px;padding:8px 1px}.track-greeting>span{font-size:12px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.track-greeting h1{margin:0;font-size:24px;line-height:1.25}.track-thanks{margin:3px 0 0;color:#16733a;font-weight:650}
.track-eta{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--border);background:var(--surface);border-radius:12px}.track-eta>.ui-icon{width:25px;height:25px;color:var(--primary)}.track-eta>div{display:grid;gap:2px}.track-eta small{color:var(--muted)}.track-eta b{font-size:16px}
.track-status-card>h2,.track-order-card>h2{margin:0 0 14px;font-size:19px}.track-order-items{display:grid}.track-order-item{display:grid!important;grid-template-columns:62px minmax(0,1fr) auto!important;gap:11px!important;align-items:center!important;padding:10px 0!important}.track-order-item img,.track-item-placeholder{width:62px;height:62px;border-radius:9px;object-fit:cover;background:var(--surface2)}.track-item-placeholder{display:grid;place-items:center;color:var(--muted)}.track-order-item>div{display:grid;gap:3px}.track-order-item small{color:var(--muted)}

/* Cozinha por cor conforme classes reais. */
.kitchen .kcol.status-pendente{border-top:4px solid #f59e0b!important}.kitchen .kcol.status-preparando{border-top:4px solid #3b82f6!important}.kitchen .kcol.status-pronto{border-top:4px solid #22c55e!important}.kitchen .kcol.status-entregue{border-top:4px solid #94a3b8!important}
.kitchen .kcol.status-pendente .khead{background:color-mix(in srgb,#f59e0b 10%,var(--surface))!important}.kitchen .kcol.status-preparando .khead{background:color-mix(in srgb,#3b82f6 10%,var(--surface))!important}.kitchen .kcol.status-pronto .khead{background:color-mix(in srgb,#22c55e 10%,var(--surface))!important}

/* Conciliação */
.reconcile-live-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.reconcile-live-grid>div{padding:11px 12px;border:1px solid var(--border);background:var(--surface2);border-radius:9px}.reconcile-live-grid small{display:block;color:var(--muted)}.reconcile-live-grid b{display:block;margin-top:3px;font-size:17px}

/* Notificações do sistema proporcionais às de chamados. */
.system-notification-popover .pop-item{width:100%;min-height:68px;padding:10px 12px;grid-template-columns:auto 1fr!important;align-items:center!important}.system-notification-popover .pop-title{font-size:13px;font-weight:700}.system-notification-popover .tiny{line-height:1.35}

/* Botões e ícones nunca extrapolam o próprio controle. */
.btn>.ui-icon{flex:0 0 auto}.btn:has(>.ui-icon){gap:7px!important}.btn.icon-only,.btn:empty{padding:0!important;place-items:center!important}.btn.icon-only .ui-icon{margin:0!important}

@media(max-width:760px){
  .public-context-v113{grid-template-columns:auto minmax(0,1fr)!important;gap:12px!important}.public-context-left .public-logo{max-width:78px}.public-context-qr-v113{width:72px!important;height:72px!important}.public-context-right h1{font-size:16px!important}
  .delivery-fee-row{grid-template-columns:1fr!important}
  .track-greeting h1{font-size:20px}.track-order-item{grid-template-columns:50px minmax(0,1fr)!important}.track-order-item>strong{grid-column:2}.track-order-item img,.track-item-placeholder{width:50px;height:50px}
}

/* v1.1.3: o modal respeita qualquer posição fixa do menu sem depender de :has(). */
@media(min-width:901px){
  html[data-menu-position="top"] #modal-root .modal-wrap{inset:var(--bp-header-h) 0 0 0!important}
  html[data-menu-position="bottom"] #modal-root .modal-wrap{inset:0 0 var(--bp-header-h) 0!important}
  html[data-menu-position="left"] #modal-root .modal-wrap{inset:0 0 0 var(--bp-side-w)!important}
  html[data-menu-position="right"] #modal-root .modal-wrap{inset:0 var(--bp-side-w) 0 0!important}
}
/* Padroniza controles para que tema/cor/tipografia definidos em Aparência alcancem todos os módulos. */
:where(.card,.modal,.popover,.table-wrap,.kcol,.korder,.pdv-cart,.pdv-product,.delivery-card,.management-card,.settings-group){color:var(--fg)}
:where(.btn.primary,.theme-btn.active,.filter-btn.active){background:var(--primary)!important;border-color:var(--primary)!important}
:where(.input,.select,.textarea,.btn,.card,.modal,.popover,.table-wrap){font-family:var(--app-font)!important}


/* v1.1.3 final proportional refinements */
.cash-open-date{font-size:16px!important;line-height:1.45!important}
.operational-access-main>div>small:empty{display:none!important}
@media(max-width:760px){
  .btn.has-icon>span,.btn.icon-text>span{display:none}
  .btn.has-icon,.btn.icon-text{min-width:40px;padding-inline:10px;justify-content:center}
}


/* =========================================================
   IDMIX Tech 1.1.4 — acabamento comercial / KDS agrupado
   Native HTML5 + CSS Grid/Flex/Custom Properties.
   ========================================================= */
:root{
  --bp-modern-chrome:#14243a;
  --bp-modern-chrome-2:#1b304c;
  --bp-modern-page:#f4f7fb;
  --bp-modern-surface:#ffffff;
  --bp-modern-border:#e3e9f1;
  --bp-modern-text:#172235;
  --bp-modern-muted:#69788d;
  --bp-finance-in:#1677c8;
  --bp-finance-out:#dc3f4f;
}
html.light[data-ui-style="modern"]{
  --bg:var(--bp-modern-page)!important;
  --surface:var(--bp-modern-surface)!important;
  --surface2:#f8fafc!important;
  --fg:var(--bp-modern-text)!important;
  --muted:var(--bp-modern-muted)!important;
  --border:var(--bp-modern-border)!important;
  --border-strong:#d4dde8!important;
}
html[data-ui-style="modern"] body{background:var(--bg)!important;background-image:linear-gradient(180deg,color-mix(in srgb,var(--primary) 3%,transparent),transparent 240px)!important}
html[data-ui-style="modern"] .app-header{background:linear-gradient(135deg,var(--bp-modern-chrome),var(--bp-modern-chrome-2))!important;border-color:color-mix(in srgb,#fff 10%,transparent)!important;box-shadow:none}
html[data-ui-style="modern"] .app-header .brand-name,html[data-ui-style="modern"] .app-header .nav-link,html[data-ui-style="modern"] .app-header .top-user,html[data-ui-style="modern"] .app-header .top-btn{color:#eef5ff!important}
html[data-ui-style="modern"] .app-header .brand-sub,html[data-ui-style="modern"] .app-header .muted{color:#aebed2!important}
html[data-ui-style="modern"] .app-header .nav-link:hover,html[data-ui-style="modern"] .app-header .nav-link.active{background:color-mix(in srgb,var(--primary) 42%,transparent)!important;color:#fff!important;border-color:color-mix(in srgb,#fff 12%,transparent)!important}
html[data-ui-style="modern"] .app-header .nav-link.active{box-shadow:none}
html[data-ui-style="modern"] .app-header .top-btn,html[data-ui-style="modern"] .app-header .top-user{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.12)!important}
html[data-ui-style="modern"] .card,html[data-ui-style="modern"] .table-wrap,html[data-ui-style="modern"] .modal{background:var(--surface)!important;border:1px solid var(--border)!important;box-shadow:none}
html[data-ui-style="modern"] .stat-card{background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--primary) 2.5%,var(--surface)))!important}
html[data-ui-style="modern"] .page-title{color:var(--fg)!important;font-weight:720!important;letter-spacing:-.035em!important}
html[data-ui-style="modern"] .btn.primary{box-shadow:none}

/* Cada estilo altera de fato a moldura do sistema. */
html[data-ui-style="classic"] .app-header{background:var(--surface)!important;border-color:var(--border)!important;box-shadow:none}
html[data-ui-style="classic"] .app-header :is(.brand-name,.nav-link,.top-user,.top-btn){color:var(--fg)!important}
html[data-ui-style="minimal"] .app-header{background:var(--surface)!important;border-color:var(--border)!important;box-shadow:none}
html[data-ui-style="minimal"] .app-header :is(.brand-name,.nav-link,.top-user,.top-btn){color:var(--fg)!important}
html[data-ui-style="glass"] .app-header{background:color-mix(in srgb,var(--surface) 72%,transparent)!important;backdrop-filter:blur(22px)!important;-webkit-backdrop-filter:blur(22px)!important;border-color:color-mix(in srgb,var(--primary) 15%,var(--border))!important}
html[data-ui-style="glass"] .app-header :is(.brand-name,.nav-link,.top-user,.top-btn){color:var(--fg)!important}
html[data-ui-style="soft"] .app-header{background:color-mix(in srgb,var(--primary) 10%,var(--surface))!important;border-color:color-mix(in srgb,var(--primary) 16%,var(--border))!important}
html[data-ui-style="soft"] .app-header :is(.brand-name,.nav-link,.top-user,.top-btn){color:var(--fg)!important}
html[data-ui-style="contrast"] .app-header{background:#10141b!important;border-color:#000!important}
html[data-ui-style="contrast"] .app-header :is(.brand-name,.nav-link,.top-user,.top-btn){color:#fff!important}

/* A escolha de tema/cor é apenas marcada, nunca vira um bloco azul. */
:where(.appearance-card,.settings-section-card) .theme-btn.active{
  background:var(--surface2)!important;
  color:var(--fg)!important;
  border-color:var(--primary)!important;
  box-shadow:none;
}
:where(.appearance-card,.settings-section-card) .theme-btn.active .ui-icon{color:var(--primary)!important}
.theme-color-grid .theme-btn.active{background:var(--surface2)!important;color:var(--fg)!important}

/* Ordem do menu: lado a lado e quebra para a linha seguinte. */
.menu-order-strip{display:flex!important;flex-wrap:wrap!important;overflow:visible!important;gap:9px!important;padding:5px 0 3px!important}
.menu-order-chip{flex:1 1 185px!important;min-width:170px!important;max-width:245px!important}

/* Tipografia comercial legível em toda a aplicação. */
body{font-size:calc(14px * var(--ui-scale,1))!important}
.input,.select,.textarea{font-size:calc(13px * var(--ui-scale,1))!important}
.btn,.theme-btn,.filter-btn{font-size:calc(13px * var(--ui-scale,1))!important}
.table{font-size:calc(13px * var(--ui-scale,1))!important}
.small{font-size:calc(12.5px * var(--ui-scale,1))!important}.tiny{font-size:calc(11.5px * var(--ui-scale,1))!important}

/* Cozinha KDS — pedido completo, itens individuais somente em preparo. */
.kds-board{align-items:start!important;gap:14px!important}
.kds-column{padding:10px!important;border:1px solid var(--border)!important;background:var(--surface2)!important;min-width:0!important}
.kds-column.status-pendente{border-top:4px solid #f0a128!important}
.kds-column.status-preparando{border-top:4px solid #3088d6!important}
.kds-column.status-pronto{border-top:4px solid #28a869!important}
.kds-column-body{display:grid;gap:12px;margin-top:10px}
.kds-order-card{display:grid!important;gap:13px!important;padding:15px!important;background:var(--surface)!important;border:1px solid var(--border)!important;box-shadow:none}
.kds-order-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.kds-order-title>div{display:grid;gap:3px;min-width:0}
.kds-order-number{font-size:18px;font-weight:800;color:var(--fg);line-height:1.15}
.kds-origin{font-size:11px;letter-spacing:.12em;color:var(--primary);margin-top:3px}
.kds-comanda{font-size:13px;color:var(--fg)}
.kds-items{display:grid;gap:7px}
.kds-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px;border:1px solid var(--border);background:var(--surface2);border-radius:var(--ui-control-radius)}
.kds-item.done{opacity:.7;background:color-mix(in srgb,#22c55e 7%,var(--surface2))}
.kds-item-copy{display:grid;gap:3px;min-width:0}.kds-item-copy b{font-size:13px}.kds-item-copy small{color:var(--muted)}
.kds-item .kitchen-product-thumb{width:42px!important;height:42px!important}
.kds-item-check{width:36px;height:36px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));background:var(--surface);color:var(--primary);cursor:pointer}
html[data-ui-radius="rounded"] .kds-item-check{border-radius:50%}html[data-ui-radius="square"] .kds-item-check{border-radius:4px}
.kds-item-check.done{background:#dcfce7;color:#15803d;border-color:#86efac}
.delivery-kitchen-handoff{padding:10px 12px;text-align:center;border:1px solid #86efac;background:#ecfdf5;color:#166534;font-weight:700;border-radius:var(--ui-control-radius)}

/* Financeiro: entradas azuis e saídas negativas vermelhas. */
.finance-value{font-weight:800!important;white-space:nowrap}.finance-value.inflow{color:var(--bp-finance-in)!important}.finance-value.outflow{color:var(--bp-finance-out)!important}

/* Usuários. */
.user-disabled{opacity:.62}.user-row-actions{justify-content:flex-end!important;gap:6px!important}.ghost-danger{color:#c93645!important;border-color:#f1b8bf!important;background:transparent!important}

/* Recebimento no PDV: conteúdo e rótulos centralizados. */
.payment-options,.pdv-payment-options{align-items:stretch!important}.payment-option{justify-content:center!important;text-align:center!important;align-items:center!important}.payment-option>span{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}

/* O checkbox de impressão da v1.1.3 não existe mais. */
.pdv-print-option{display:none!important}

@media(max-width:900px){
  .menu-order-chip{flex:1 1 155px!important;max-width:none!important}
  .kds-board{grid-template-columns:1fr!important}
  .user-row-actions .btn span{display:none!important}.user-row-actions .btn{width:38px!important;min-width:38px!important;padding:0!important}
}

/* =========================================================
   IDMIX Tech 1.1.5 — Modern Corporate shell
   Referência visual: UDesign Corporate. Implementação própria,
   sem dependências de Bootstrap ou assets do tema.
   ========================================================= */
:root{
  --bp-corp-ink:#172033;
  --bp-corp-ink-2:#202b42;
  --bp-corp-page:#f6f7f9;
  --bp-corp-surface:#ffffff;
  --bp-corp-soft:#f1f4f8;
  --bp-corp-line:#e4e8ef;
  --bp-corp-muted:#697386;
}

/* O modo Moderno muda o shell inteiro, não apenas os cards. */
html.light[data-ui-style="modern"]{
  --bg:var(--bp-corp-page)!important;
  --surface:var(--bp-corp-surface)!important;
  --surface2:var(--bp-corp-soft)!important;
  --surface3:#e9eef5!important;
  --fg:var(--bp-corp-ink)!important;
  --muted:var(--bp-corp-muted)!important;
  --border:var(--bp-corp-line)!important;
  --border-strong:#cfd6e1!important;
}
html:not(.light)[data-ui-style="modern"]{
  --bg:#111722!important;
  --surface:#171f2d!important;
  --surface2:#1d2737!important;
  --surface3:#263246!important;
  --fg:#f4f7fb!important;
  --muted:#9eabbc!important;
  --border:#2b384d!important;
  --border-strong:#3a4960!important;
  --bp-corp-ink:#0c1220;
  --bp-corp-ink-2:#151f31;
}
html[data-ui-style="modern"] body{
  background:var(--bg)!important;
  background-image:none!important;
}

/* Navegação: barra clara e precisa no topo; lateral/bottom seguem a mesma linguagem. */
html[data-ui-style="modern"] .app-header{
  background:var(--surface)!important;
  border-color:var(--border)!important;
  box-shadow:none;
  position:fixed;
}
html[data-ui-style="modern"] .app-header:before{
  content:"";
  position:absolute;
  z-index:2;
  left:0;right:0;top:0;
  height:3px;
  background:var(--primary);
  pointer-events:none;
}
html[data-ui-style="modern"] .app-header-brand-copy b{
  color:var(--fg)!important;
  font-weight:800!important;
  letter-spacing:-.035em!important;
}
html[data-ui-style="modern"] .app-header-brand-copy small{color:var(--muted)!important}
html[data-ui-style="modern"] .app-header :is(.nav-link,.top-user,.top-btn){color:var(--muted)!important}
html[data-ui-style="modern"] .app-header .nav-link{
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none;
  font-weight:650!important;
}
html[data-ui-style="modern"] .app-header .nav-link:hover{
  background:var(--surface2)!important;
  color:var(--fg)!important;
}
html[data-ui-style="modern"] .app-header .nav-link.active{
  background:transparent!important;
  color:var(--primary)!important;
  box-shadow:none;
  border-bottom-color:var(--primary)!important;
}
html[data-ui-style="modern"] .app-header .top-btn,
html[data-ui-style="modern"] .app-header .top-user{
  background:transparent!important;
  border-color:var(--border)!important;
  box-shadow:none;
}
html[data-ui-style="modern"] .app-header .top-btn:hover,
html[data-ui-style="modern"] .app-header .top-user:hover{background:var(--surface2)!important;color:var(--fg)!important}
html[data-ui-style="modern"] .app-header-nav .desktop-more-menu,
html[data-ui-style="modern"] .user-menu-popover{
  background:var(--surface)!important;
  border:1px solid var(--border)!important;
  box-shadow:none;
}

/* Navegação vertical: ativo marcado por faixa, sem bloco pesado. */
html[data-ui-style="modern"] .shell.menu-pos-left .right-nav-only .nav-link,
html[data-ui-style="modern"] .shell.menu-pos-right .right-nav-only .nav-link{
  color:var(--muted)!important;
  background:transparent!important;
}
html[data-ui-style="modern"] .shell.menu-pos-left .right-nav-only .nav-link:hover,
html[data-ui-style="modern"] .shell.menu-pos-right .right-nav-only .nav-link:hover{
  background:var(--surface2)!important;
  color:var(--fg)!important;
}
html[data-ui-style="modern"] .shell.menu-pos-left .right-nav-only .nav-link.active,
html[data-ui-style="modern"] .shell.menu-pos-right .right-nav-only .nav-link.active{
  background:color-mix(in srgb,var(--primary) 7%,var(--surface))!important;
  color:var(--primary)!important;
}

/* Cabeçalho de cada módulo vira a faixa corporativa forte do template Moderno. */
html[data-ui-style="modern"] .content>.space>.page-head,
html[data-ui-style="modern"] .content>.space>.dashboard-v6>.page-head{
  position:relative!important;
  overflow:hidden!important;
  min-height:118px!important;
  margin:-8px -8px 4px!important;
  padding:24px 26px!important;
  align-items:center!important;
  border:0!important;
  border-radius:var(--ui-card-radius)!important;
  background:linear-gradient(120deg,var(--bp-corp-ink),var(--bp-corp-ink-2))!important;
  color:#fff!important;
}
html[data-ui-style="modern"] .content>.space>.page-head:after,
html[data-ui-style="modern"] .content>.space>.dashboard-v6>.page-head:after{
  content:"";
  position:absolute;
  width:220px;height:220px;
  right:-105px;top:-118px;
  border:34px solid color-mix(in srgb,var(--primary) 38%,transparent);
  transform:rotate(18deg);
  pointer-events:none;
}
html[data-ui-style="modern"] .page-head .eyebrow{color:color-mix(in srgb,var(--primary) 82%,#fff)!important;font-size:10px!important}
html[data-ui-style="modern"] .page-head .page-title{color:#fff!important;font-size:clamp(27px,2.4vw,38px)!important;font-weight:780!important;letter-spacing:-.045em!important}
html[data-ui-style="modern"] .page-head .page-sub{color:#c9d2df!important;max-width:820px!important;line-height:1.55!important}
html[data-ui-style="modern"] .page-head .date-chip,
html[data-ui-style="modern"] .page-head .data-badge,
html[data-ui-style="modern"] .page-head>.pill{
  background:rgba(255,255,255,.09)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.2)!important;
  backdrop-filter:none!important;
}
html[data-ui-style="modern"] .page-head .btn.outline{
  background:transparent!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.3)!important;
}
html[data-ui-style="modern"] .page-head .btn.outline:hover{background:rgba(255,255,255,.09)!important;border-color:rgba(255,255,255,.5)!important}
html[data-ui-style="modern"] .page-head .pdv-head-status{border-color:rgba(255,255,255,.22)!important;background:rgba(255,255,255,.08)!important;color:#fff!important}

/* Superfícies do sistema: planas, nítidas e com hierarquia por borda/acento. */
html[data-ui-style="modern"] :is(.card,.table-wrap,.modal,.popover,.pdv-cart,.delivery-card,.management-card,.settings-group){
  background:var(--surface)!important;
  border:1px solid var(--border)!important;
  box-shadow:none;
}
html[data-ui-style="modern"] .card:after{display:none!important}
html[data-ui-style="modern"] .stat-card{
  background:var(--surface)!important;
  border-top:3px solid color-mix(in srgb,var(--primary) 75%,var(--border))!important;
}
html[data-ui-style="modern"] .stat-icon{
  background:color-mix(in srgb,var(--primary) 10%,var(--surface2))!important;
  color:var(--primary)!important;
  box-shadow:none;
}
html[data-ui-style="modern"] .card-head h3{font-size:15px!important;font-weight:760!important;color:var(--fg)!important}
html[data-ui-style="modern"] .table th{
  background:var(--surface2)!important;
  color:var(--muted)!important;
  border-bottom-color:var(--border)!important;
}
html[data-ui-style="modern"] .table tbody tr:hover{background:color-mix(in srgb,var(--primary) 3.5%,var(--surface))!important}
html[data-ui-style="modern"] :is(.input,.select,.textarea){
  background:var(--surface)!important;
  border-color:var(--border-strong)!important;
  box-shadow:none;
}
html[data-ui-style="modern"] :is(.input,.select,.textarea):focus{
  border-color:var(--primary)!important;
  box-shadow:none;
}
html[data-ui-style="modern"] .btn{box-shadow:none;font-weight:700!important}
html[data-ui-style="modern"] .btn.primary{background:var(--primary)!important;color:#fff!important;box-shadow:none}
html[data-ui-style="modern"] .btn.primary:hover{filter:none!important}
html[data-ui-style="modern"] .btn.outline{background:var(--surface)!important;border:1px solid var(--border-strong)!important;color:var(--fg)!important}

/* KDS: status por borda/cor plana. Nenhuma sombra, glow ou halo colorido. */
.kitchen-kds-page :is(.kds-board,.kds-column,.kcol,.khead,.kds-column-body,.kds-order-card,.korder,.kds-item,.kds-item-check,.kitchen-product-thumb){
  box-shadow:none;
  filter:none!important;
  text-shadow:none;
}
.kitchen-kds-page .kds-column{
  background:var(--surface2)!important;
  box-shadow:none;
}
.kitchen-kds-page .khead{
  background:var(--surface)!important;
  box-shadow:none;
  padding:10px 11px!important;
  margin:-10px -10px 10px!important;
  border-bottom:1px solid var(--border)!important;
}
.kitchen-kds-page .kds-order-card,
.kitchen-kds-page .korder{
  background:var(--surface)!important;
  box-shadow:none;
}
.kitchen-kds-page .korder.overdue,
.kitchen-kds-page .kds-order-card.overdue{
  box-shadow:none;
  outline:0!important;
  border-color:var(--danger)!important;
}
.kitchen-kds-page .kds-item.done{
  background:var(--surface2)!important;
  border-color:#9fd7bb!important;
}
.kitchen-kds-page .kds-item-check.done{box-shadow:none}

@media(max-width:900px){
  html[data-ui-style="modern"] .content>.space>.page-head,
  html[data-ui-style="modern"] .content>.space>.dashboard-v6>.page-head{
    min-height:104px!important;
    margin:-4px -4px 2px!important;
    padding:20px!important;
  }
}
@media(max-width:600px){
  html[data-ui-style="modern"] .content>.space>.page-head,
  html[data-ui-style="modern"] .content>.space>.dashboard-v6>.page-head{
    min-height:0!important;
    border-radius:0!important;
    margin:-6px -16px 2px!important;
    padding:18px 16px!important;
  }
  html[data-ui-style="modern"] .page-head .page-title{font-size:28px!important}
}
.kitchen-kds-page .k-time.overdue{animation:none!important;box-shadow:none}
/* Login/recuperação também acompanham o Modern Corporate. */
html[data-ui-style="modern"] .login-v120{
  background:linear-gradient(135deg,color-mix(in srgb,var(--bp-corp-ink) 94%,transparent),color-mix(in srgb,var(--bp-corp-ink-2) 88%,transparent)),var(--bg)!important;
}
html[data-ui-style="modern"] .login-v120 .login-background{opacity:.28!important}
html[data-ui-style="modern"] .login-v120 .login-card{
  background:var(--surface)!important;
  border:1px solid var(--border)!important;
  border-top:4px solid var(--primary)!important;
  box-shadow:none;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html[data-ui-style="modern"] .login-v120 .login-card-brand{border-color:var(--border)!important}
html[data-ui-style="modern"] .login-v120 .login-title{color:var(--fg)!important;font-weight:820!important}
html[data-ui-style="modern"] .login-v120 .brand-sub{color:var(--primary)!important}

/* ========================================================================== */
/* IDMIX Tech 1.1.6 — barra superior fixa independente da posição do menu         */
/* Shell próprio em HTML5 + CSS Grid/Flex; sem Bootstrap.                     */
/* ========================================================================== */
:root{--bp-topbar-h:64px;--bp-menu-h:54px;--bp-side-w:250px}

/* A barra do sistema nunca se move: logo à esquerda, alertas/usuário/sair à direita. */
.shell .app-header,
.shell.menu-pos-top .app-header,
.shell.menu-pos-bottom .app-header,
.shell.menu-pos-left .app-header,
.shell.menu-pos-right .app-header{
  position:fixed!important;
  inset:0 0 auto 0!important;
  top:0!important;right:0!important;bottom:auto!important;left:0!important;
  width:100%!important;height:var(--bp-topbar-h)!important;
  min-height:var(--bp-topbar-h)!important;
  padding:0 18px!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  grid-template-rows:1fr!important;
  align-items:center!important;
  gap:18px!important;
  overflow:visible!important;
  border-left:0!important;border-right:0!important;border-top:0!important;
  border-bottom:1px solid var(--border)!important;
  z-index:700!important;
}
.app-header-center{min-width:0!important;height:1px!important}
.shell .app-header-actions,
.shell.menu-pos-left .app-header-actions,
.shell.menu-pos-right .app-header-actions{
  border:0!important;padding:0!important;
  flex-wrap:nowrap!important;justify-content:flex-end!important;
}
.shell .app-header-brand{padding:0!important}
.shell .app-header .user-menu-popover{top:46px!important;bottom:auto!important;right:0!important}

/* O menu é um elemento separado e é o único que muda de posição. */
.app-menu{
  position:fixed!important;
  z-index:610!important;
  background:var(--surface)!important;
  border-color:var(--border)!important;
  overflow:visible!important;
}
@media(min-width:901px){
  .shell.menu-pos-top .app-menu{
    top:var(--bp-topbar-h)!important;right:0!important;bottom:auto!important;left:0!important;
    width:100%!important;height:var(--bp-menu-h)!important;min-height:var(--bp-menu-h)!important;
    padding:0 18px!important;
    display:flex!important;flex-direction:row!important;align-items:stretch!important;justify-content:flex-start!important;
    border:0!important;border-bottom:1px solid var(--border)!important;
  }
  .shell.menu-pos-top .app-menu>.nav-link,
  .shell.menu-pos-top .app-menu>.desktop-more-wrap>.nav-link{height:var(--bp-menu-h)!important;min-height:var(--bp-menu-h)!important}
  .shell.menu-pos-top>.main{margin:0!important;width:100%!important;padding-top:calc(var(--bp-topbar-h) + var(--bp-menu-h))!important;padding-bottom:0!important}

  .shell.menu-pos-bottom .app-menu{
    top:auto!important;right:0!important;bottom:0!important;left:0!important;
    width:100%!important;height:var(--bp-menu-h)!important;min-height:var(--bp-menu-h)!important;
    padding:0 18px!important;
    display:flex!important;flex-direction:row!important;align-items:stretch!important;justify-content:flex-start!important;
    border:0!important;border-top:1px solid var(--border)!important;
  }
  .shell.menu-pos-bottom .app-menu>.nav-link,
  .shell.menu-pos-bottom .app-menu>.desktop-more-wrap>.nav-link{height:var(--bp-menu-h)!important;min-height:var(--bp-menu-h)!important;border-top:2px solid transparent!important;border-bottom:0!important}
  .shell.menu-pos-bottom .app-menu>.nav-link.active,
  .shell.menu-pos-bottom .app-menu>.desktop-more-wrap>.nav-link.active{border-top-color:var(--primary)!important}
  .shell.menu-pos-bottom .app-menu .desktop-more-menu{top:auto!important;bottom:calc(var(--bp-menu-h) - 3px)!important}
  .shell.menu-pos-bottom>.main{margin:0!important;width:100%!important;padding-top:var(--bp-topbar-h)!important;padding-bottom:var(--bp-menu-h)!important}

  .shell.menu-pos-left .app-menu,
  .shell.menu-pos-right .app-menu{
    top:var(--bp-topbar-h)!important;bottom:0!important;
    width:var(--bp-side-w)!important;height:calc(100dvh - var(--bp-topbar-h))!important;
    padding:12px!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
    overflow-y:auto!important;overflow-x:hidden!important;
    border-top:0!important;border-bottom:0!important;
  }
  .shell.menu-pos-left .app-menu{left:0!important;right:auto!important;border-left:0!important;border-right:1px solid var(--border)!important}
  .shell.menu-pos-right .app-menu{right:0!important;left:auto!important;border-right:0!important;border-left:1px solid var(--border)!important}
  .shell.menu-pos-left>.main{margin-left:var(--bp-side-w)!important;margin-right:0!important;width:calc(100% - var(--bp-side-w))!important;padding-top:var(--bp-topbar-h)!important;padding-bottom:0!important}
  .shell.menu-pos-right>.main{margin-right:var(--bp-side-w)!important;margin-left:0!important;width:calc(100% - var(--bp-side-w))!important;padding-top:var(--bp-topbar-h)!important;padding-bottom:0!important}

  .shell.menu-pos-left .app-menu>.nav-link,
  .shell.menu-pos-left .app-menu>.desktop-more-wrap,
  .shell.menu-pos-right .app-menu>.nav-link,
  .shell.menu-pos-right .app-menu>.desktop-more-wrap{display:none!important}
  .shell.menu-pos-left .app-menu .right-nav-only,
  .shell.menu-pos-right .app-menu .right-nav-only{display:flex!important;flex-direction:column!important;gap:4px!important;width:100%!important}
  .shell.menu-pos-left .app-menu .right-nav-only .nav-link,
  .shell.menu-pos-right .app-menu .right-nav-only .nav-link{
    width:100%!important;height:44px!important;min-height:44px!important;
    display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;
    padding:0 11px!important;border:1px solid transparent!important;border-radius:8px!important;
    background:transparent!important;color:var(--muted)!important;text-decoration:none!important;
  }
  .shell.menu-pos-left .app-menu .right-nav-only .nav-link:hover,
  .shell.menu-pos-right .app-menu .right-nav-only .nav-link:hover{background:var(--surface2)!important;color:var(--primary)!important}
  .shell.menu-pos-left .app-menu .right-nav-only .nav-link.active,
  .shell.menu-pos-right .app-menu .right-nav-only .nav-link.active{background:color-mix(in srgb,var(--primary) 9%,var(--surface2))!important;color:var(--primary)!important;border-color:color-mix(in srgb,var(--primary) 20%,var(--border))!important}

  /* Modal respeita simultaneamente a barra superior fixa e a posição do menu. */
  body:has(.shell.menu-pos-top) #modal-root .modal-wrap{inset:calc(var(--bp-topbar-h) + var(--bp-menu-h)) 0 0 0!important}
  body:has(.shell.menu-pos-bottom) #modal-root .modal-wrap{inset:var(--bp-topbar-h) 0 var(--bp-menu-h) 0!important}
  body:has(.shell.menu-pos-left) #modal-root .modal-wrap{inset:var(--bp-topbar-h) 0 0 var(--bp-side-w)!important}
  body:has(.shell.menu-pos-right) #modal-root .modal-wrap{inset:var(--bp-topbar-h) var(--bp-side-w) 0 0!important}
}

/* Mobile: barra superior continua fixa; só a barra de navegação móvel muda top/bottom. */
@media(max-width:900px){
  :root{--bp-topbar-h:56px}
  .shell .app-header,
  .shell.menu-pos-top .app-header,
  .shell.menu-pos-bottom .app-header,
  .shell.menu-pos-left .app-header,
  .shell.menu-pos-right .app-header{
    width:100%!important;height:var(--bp-topbar-h)!important;min-height:var(--bp-topbar-h)!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    padding:0 10px 0 12px!important;gap:8px!important;
  }
  .app-header-center{display:none!important}
  .app-menu{display:none!important}
  .shell.menu-pos-top>.main,.shell.menu-pos-bottom>.main,.shell.menu-pos-left>.main,.shell.menu-pos-right>.main{
    margin:0!important;width:100%!important;padding-top:var(--bp-topbar-h)!important;padding-bottom:calc(78px + env(safe-area-inset-bottom))!important;
  }
  .shell.mobile-menu-top>.main{padding-top:calc(var(--bp-topbar-h) + 68px)!important;padding-bottom:24px!important}
  .shell.mobile-menu-top .mobile-nav{top:var(--bp-topbar-h)!important;bottom:auto!important}
  .shell.mobile-menu-bottom .mobile-nav{top:auto!important;bottom:0!important}
  #modal-root .modal-wrap{inset:var(--bp-topbar-h) 0 0 0!important}
}


/* IDMIX Tech 1.1.7 hotfix — restaura Sair no final do menu sem alterar o restante */
.nav-logout{font:inherit;cursor:pointer;background:transparent}
@media(min-width:901px){
  .shell.menu-pos-top .app-menu>.nav-logout,
  .shell.menu-pos-bottom .app-menu>.nav-logout{margin-left:auto!important}
  .shell.menu-pos-left .app-menu .right-nav-only .nav-logout,
  .shell.menu-pos-right .app-menu .right-nav-only .nav-logout{margin-top:auto!important}
  .shell.menu-pos-left .app-menu .right-nav-only,
  .shell.menu-pos-right .app-menu .right-nav-only{min-height:100%!important}
}
@media(max-width:900px){
  .mobile-nav .nav-logout{flex:0 0 auto}
}


/* ==========================================================================
   IDMIX Tech 1.1.8 — Modern Corporate / referência UDesign Corporate
   Camada final de normalização visual. Não altera fluxos ou comportamento.
   ========================================================================== */
:root{
  --bp-type-body:15px;--bp-type-small:13px;--bp-type-tiny:12px;--bp-type-label:12px;
  --bp-type-button:13.5px;--bp-type-table:13.5px;--bp-type-nav:13.5px;
  --bp-type-h1:32px;--bp-type-h2:24px;--bp-type-h3:17px;--bp-type-h4:15px;
}
html[data-ui-style="modern"]{
  --bg:#f6f7f9;--bg-soft:#f0f2f5;--surface:#ffffff;--surface2:#f8f9fb;--surface3:#eef1f4;
  --fg:#24282f;--muted:#727982;--border:#e3e6ea;--border-strong:#d5d9de;
  --radius:8px;--radius-sm:6px;--shadow:none;--shadow-soft:none;
}
html:not(.light)[data-ui-style="modern"]{
  --bg:#11151a;--bg-soft:#151a20;--surface:#1b2026;--surface2:#20262d;--surface3:#272e36;
  --fg:#f5f7fa;--muted:#a4abb4;--border:#313943;--border-strong:#3b4550;
}
html[data-ui-style="modern"] body{font-family:var(--app-font)!important;font-size:calc(var(--bp-type-body) * var(--ui-scale,1))!important;line-height:1.6!important;letter-spacing:0!important;background:var(--bg)!important;background-image:none!important}
html[data-ui-style="modern"] :is(h1,h2,h3,h4,h5,h6,.page-title,.login-title,.brand-name,.card h3,.card h4){font-family:var(--heading-font,var(--app-font))!important;letter-spacing:-.025em!important}
html[data-ui-style="modern"] .page-title{font-size:calc(var(--bp-type-h1) * var(--ui-scale,1))!important;line-height:1.18!important;font-weight:700!important;color:var(--fg)!important}
html[data-ui-style="modern"] .page-sub{font-size:calc(14px * var(--ui-scale,1))!important;line-height:1.6!important;color:var(--muted)!important}
html[data-ui-style="modern"] .eyebrow{font-size:calc(11px * var(--ui-scale,1))!important;line-height:1.35!important;font-weight:700!important;letter-spacing:.12em!important;color:var(--primary)!important}
html[data-ui-style="modern"] .card h3,html[data-ui-style="modern"] .card-head h3{font-size:calc(var(--bp-type-h3) * var(--ui-scale,1))!important;line-height:1.35!important;font-weight:600!important}
html[data-ui-style="modern"] .card h4{font-size:calc(var(--bp-type-h4) * var(--ui-scale,1))!important;line-height:1.4!important;font-weight:600!important}
html[data-ui-style="modern"] .small{font-size:calc(var(--bp-type-small) * var(--ui-scale,1))!important;line-height:1.55!important}
html[data-ui-style="modern"] .tiny{font-size:calc(var(--bp-type-tiny) * var(--ui-scale,1))!important;line-height:1.5!important}
html[data-ui-style="modern"] .label{font-size:calc(var(--bp-type-label) * var(--ui-scale,1))!important;line-height:1.35!important;font-weight:600!important;letter-spacing:.045em!important}
html[data-ui-style="modern"] :is(.input,.select,.textarea){font-size:calc(14px * var(--ui-scale,1))!important;line-height:1.45!important;min-height:44px!important;padding:10px 12px!important;border-radius:5px!important;background:var(--surface)!important;border:1px solid var(--border-strong)!important;box-shadow:none}
html[data-ui-style="modern"] :is(.input,.select,.textarea):focus{border-color:var(--primary)!important;box-shadow:none}
html[data-ui-style="modern"] .btn{font-size:calc(var(--bp-type-button) * var(--ui-scale,1))!important;line-height:1.2!important;min-height:42px!important;padding:10px 16px!important;border-radius:5px!important;font-weight:600!important;box-shadow:none;transform:none!important}
html[data-ui-style="modern"] .btn:hover{transform:none!important;filter:none!important}
html[data-ui-style="modern"] .btn.primary{background:var(--primary)!important;color:#fff!important}
html[data-ui-style="modern"] .btn.outline{background:var(--surface)!important;border:1px solid var(--border-strong)!important;color:var(--fg)!important}
html[data-ui-style="modern"] .table th,html[data-ui-style="modern"] .table td{font-size:calc(var(--bp-type-table) * var(--ui-scale,1))!important;line-height:1.45!important;padding:13px 15px!important}
html[data-ui-style="modern"] .table th{font-size:calc(11.5px * var(--ui-scale,1))!important;font-weight:700!important;letter-spacing:.055em!important;background:#f4f5f7!important;color:#666d76!important}
html:not(.light)[data-ui-style="modern"] .table th{background:var(--surface2)!important;color:var(--muted)!important}
html[data-ui-style="modern"] :is(.pill,.date-chip,.data-badge){font-size:calc(11px * var(--ui-scale,1))!important;line-height:1.25!important;font-weight:600!important;letter-spacing:.04em!important}

/* Cabeçalho corporativo: branco, limpo, linha de destaque como na referência. */
html[data-ui-style="modern"] .app-header{background:var(--surface)!important;border-top:3px solid var(--primary)!important;border-bottom:1px solid var(--border)!important;box-shadow:none}
html[data-ui-style="modern"] .app-header:before{display:none!important}
html[data-ui-style="modern"] .app-header-brand-copy b{font-size:18px!important;font-weight:700!important;color:var(--fg)!important}
html[data-ui-style="modern"] .app-header-brand-copy small{font-size:11px!important;color:var(--muted)!important}
html[data-ui-style="modern"] .app-header :is(.top-btn,.top-user){background:transparent!important;color:var(--fg)!important;border-color:var(--border)!important;box-shadow:none}
html[data-ui-style="modern"] .app-header :is(.top-btn,.top-user):hover{background:var(--surface2)!important}

/* Menu separado, plano, com ativo por linha de destaque. */
html[data-ui-style="modern"] .app-menu{background:var(--surface)!important;border-color:var(--border)!important;box-shadow:none}
html[data-ui-style="modern"] .app-menu .nav-link{font-size:calc(var(--bp-type-nav) * var(--ui-scale,1))!important;font-weight:500!important;color:var(--muted)!important;border-radius:0!important;background:transparent!important;box-shadow:none}
html[data-ui-style="modern"] .app-menu .nav-link:hover{color:var(--fg)!important;background:color-mix(in srgb,var(--primary) 4%,var(--surface))!important}
html[data-ui-style="modern"] .app-menu .nav-link.active{color:var(--primary)!important;background:transparent!important;font-weight:600!important}
html[data-ui-style="modern"] .app-menu .nav-icon{background:transparent!important;color:currentColor!important}

/* Cabeçalho de página: deixa de parecer banner escuro e vira seção corporativa. */
html[data-ui-style="modern"] .content>.space>.page-head,
html[data-ui-style="modern"] .content>.space>.dashboard-v6>.page-head{
  position:relative!important;min-height:auto!important;margin:0 0 22px!important;padding:22px 24px!important;
  background:var(--surface)!important;border:1px solid var(--border)!important;border-left:4px solid var(--primary)!important;
  border-radius:6px!important;box-shadow:none;overflow:visible!important;
}
html[data-ui-style="modern"] .content>.space>.page-head:after,html[data-ui-style="modern"] .content>.space>.dashboard-v6>.page-head:after{display:none!important}
html[data-ui-style="modern"] .page-head :is(.page-title,.page-sub,.eyebrow){color:inherit!important}
html[data-ui-style="modern"] .page-head .page-title{color:var(--fg)!important}
html[data-ui-style="modern"] .page-head .page-sub{color:var(--muted)!important}
html[data-ui-style="modern"] .page-head .eyebrow{color:var(--primary)!important}
html[data-ui-style="modern"] .page-head :is(.date-chip,.data-badge,.pill){background:var(--surface2)!important;color:var(--muted)!important;border-color:var(--border)!important}

/* Cards e painéis: sem sombras cinza; separação por borda e respiro. */
html[data-ui-style="modern"] :is(.card,.table-wrap,.modal,.popover,.pdv-cart,.delivery-card,.management-card,.settings-group,.user-menu-popover,.desktop-more-menu){background:var(--surface)!important;border:1px solid var(--border)!important;box-shadow:none}
html[data-ui-style="modern"] .card{padding:20px!important;border-radius:6px!important}
html[data-ui-style="modern"] .card:after{display:none!important}
html[data-ui-style="modern"] .stat-card{min-height:108px!important;background:var(--surface)!important}
html[data-ui-style="modern"] .stat-label{font-size:calc(11px * var(--ui-scale,1))!important;letter-spacing:.065em!important}
html[data-ui-style="modern"] .stat-value{font-size:calc(23px * var(--ui-scale,1))!important}
html[data-ui-style="modern"] .stat-icon{border-radius:5px!important;background:color-mix(in srgb,var(--primary) 9%,var(--surface2))!important}
html[data-ui-style="modern"] .table-wrap{border-radius:6px!important}
html[data-ui-style="modern"] .modal{border-radius:7px!important}

/* Configuração de tema: seleção discreta, sem preencher o botão inteiro. */
html[data-ui-style="modern"] .theme-btn{font-size:calc(13px * var(--ui-scale,1))!important;background:var(--surface)!important;color:var(--muted)!important;border:1px solid var(--border-strong)!important;border-radius:5px!important}
html[data-ui-style="modern"] .theme-btn.active{background:var(--surface)!important;color:var(--fg)!important;border-color:var(--primary)!important;box-shadow:none}

/* KDS continua plano e sem glow/sombras. */
html[data-ui-style="modern"] .kitchen-kds-page :is(.k-board,.k-col,.k-card,.k-product,.k-time,.k-order){box-shadow:none;filter:none!important}

@media(max-width:900px){
  :root{--bp-type-h1:27px}
  html[data-ui-style="modern"] .content{padding-left:16px!important;padding-right:16px!important}
  html[data-ui-style="modern"] .content>.space>.page-head,html[data-ui-style="modern"] .content>.space>.dashboard-v6>.page-head{padding:18px!important;margin-bottom:16px!important}
  html[data-ui-style="modern"] .app-header-brand-copy b{font-size:16px!important}
  html[data-ui-style="modern"] .btn{min-height:40px!important;padding:9px 13px!important}
}

/* ========================================================================== */
/* IDMIX Tech 1.1.9 — UDesign Corporate: template global visível                  */
/* Referência visual: UDesign Corporate. Implementação própria, sem Bootstrap.*/
/* ========================================================================== */
html[data-ui-template="udesign"]{
  --ud-navy:#172b3d;
  --ud-navy-deep:#0e1d2a;
  --ud-ink:#263746;
  --ud-muted:#768591;
  --ud-bg:#f5f6f8;
  --ud-line:#e5e9ed;
  --ud-soft:#eef2f5;
  --ud-white:#ffffff;
  --ud-card-shadow:0 7px 22px rgba(22,43,61,.055);
  --radius:4px;
  --radius-sm:3px;
}
html:not(.light)[data-ui-template="udesign"]{
  --ud-ink:#eff4f7;
  --ud-muted:#9aabb7;
  --ud-bg:#101820;
  --ud-line:#2b3944;
  --ud-soft:#1a2630;
  --ud-white:#15212b;
  --ud-card-shadow:none;
}
html[data-ui-template="udesign"] body{
  font-family:var(--app-font,"Poppins",sans-serif)!important;
  color:var(--ud-ink)!important;
  background:var(--ud-bg)!important;
  background-image:none!important;
  font-size:calc(15px * var(--ui-scale,1))!important;
  line-height:1.62!important;
}
html[data-ui-template="udesign"] .bg-noise:before{display:none!important}
html[data-ui-template="udesign"] :is(h1,h2,h3,h4,h5,h6,.page-title,.modal-title,.login-title,.brand-name,.app-header-brand-copy b){
  font-family:var(--heading-font,var(--app-font))!important;
  letter-spacing:-.025em!important;
}

/* Barra superior fixa: identidade clara, leve e corporativa. */
html[data-ui-template="udesign"] .shell .app-header{
  background:var(--ud-white)!important;
  border:0!important;
  border-top:4px solid var(--primary)!important;
  border-bottom:1px solid var(--ud-line)!important;
  box-shadow:none;
  padding-inline:26px!important;
}
html[data-ui-template="udesign"] .app-header-brand{gap:13px!important;text-decoration:none!important;color:var(--ud-ink)!important}
html[data-ui-template="udesign"] .app-header .brand-mark{
  width:42px!important;height:42px!important;flex-basis:42px!important;
  border-radius:2px!important;background:var(--primary)!important;color:#fff!important;
  box-shadow:none;border:0!important;
}
html[data-ui-template="udesign"] .app-header-brand-copy{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:1px!important}
html[data-ui-template="udesign"] .app-header-brand-copy b{font-size:19px!important;line-height:1.1!important;font-weight:700!important;color:var(--ud-navy)!important}
html:not(.light)[data-ui-template="udesign"] .app-header-brand-copy b{color:var(--ud-ink)!important}
html[data-ui-template="udesign"] .app-header-brand-copy small{font-size:10px!important;line-height:1.2!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:var(--ud-muted)!important}
html[data-ui-template="udesign"] .app-header :is(.top-btn,.top-user){
  background:transparent!important;color:var(--ud-ink)!important;border:1px solid var(--ud-line)!important;
  border-radius:2px!important;box-shadow:none;min-height:40px!important;
}
html[data-ui-template="udesign"] .app-header .top-btn{width:40px!important;height:40px!important}
html[data-ui-template="udesign"] .app-header :is(.top-btn,.top-user):hover{background:var(--ud-soft)!important;border-color:color-mix(in srgb,var(--primary) 45%,var(--ud-line))!important}

/* Menu inspirado na faixa de navegação escura do UDesign. Só ele muda de posição. */
html[data-ui-template="udesign"] .app-menu{
  background:var(--ud-navy)!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:none;
}
html[data-ui-template="udesign"] .app-menu .nav-link{
  color:#d5dee5!important;background:transparent!important;border:0!important;border-radius:0!important;
  font-size:calc(12.5px * var(--ui-scale,1))!important;font-weight:600!important;letter-spacing:.02em!important;
  box-shadow:none;transform:none!important;
}
html[data-ui-template="udesign"] .app-menu .nav-icon{background:transparent!important;color:#9eb0be!important;border-radius:0!important}
html[data-ui-template="udesign"] .app-menu .nav-link:hover{background:rgba(255,255,255,.06)!important;color:#fff!important}
html[data-ui-template="udesign"] .app-menu .nav-link:hover .nav-icon{color:#fff!important}
html[data-ui-template="udesign"] .app-menu .nav-link.active{
  background:var(--primary)!important;color:#fff!important;font-weight:700!important;box-shadow:none;
}
html[data-ui-template="udesign"] .app-menu .nav-link.active .nav-icon{color:#fff!important}
html[data-ui-template="udesign"] .app-menu .desktop-more-menu{
  background:var(--ud-navy-deep)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:2px!important;
  box-shadow:none;padding:5px!important;
}
html[data-ui-template="udesign"] .app-menu .desktop-more-menu .nav-link{border-radius:2px!important;min-height:40px!important}
html[data-ui-template="udesign"] .app-menu .nav-logout{color:#ffb4b4!important}
html[data-ui-template="udesign"] .app-menu .nav-logout:hover{background:rgba(239,68,68,.16)!important;color:#fff!important}

/* Área de conteúdo com respiro de site corporativo. */
html[data-ui-template="udesign"] .content{width:min(100%,1540px)!important;padding-left:32px!important;padding-right:32px!important;padding-bottom:48px!important}
html[data-ui-template="udesign"] .space{gap:22px!important}
html[data-ui-template="udesign"] .grid{gap:18px!important}

/* Cabeçalho de módulo em forma de hero corporativo, mudança visual deliberada. */
html[data-ui-template="udesign"] .content>.space>.page-head,
html[data-ui-template="udesign"] .content>.space>.dashboard-v6>.page-head,
html[data-ui-template="udesign"] .page-head{
  position:relative!important;isolation:isolate!important;overflow:hidden!important;
  min-height:148px!important;margin:0 0 4px!important;padding:29px 32px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:22px!important;
  background:linear-gradient(112deg,var(--ud-navy-deep),var(--ud-navy))!important;
  border:0!important;border-left:0!important;border-radius:2px!important;box-shadow:none;color:#fff!important;
}
html[data-ui-template="udesign"] .page-head:before{
  content:""!important;display:block!important;position:absolute!important;z-index:-1!important;pointer-events:none!important;
  width:330px!important;height:330px!important;right:-150px!important;top:-185px!important;border:54px solid color-mix(in srgb,var(--primary) 28%,transparent)!important;
  border-radius:50%!important;opacity:.68!important;
}
html[data-ui-template="udesign"] .page-head:after{
  content:""!important;display:block!important;position:absolute!important;z-index:-1!important;pointer-events:none!important;
  right:0!important;bottom:0!important;width:34%!important;height:4px!important;background:var(--primary)!important;
}
html[data-ui-template="udesign"] .page-head .eyebrow{color:color-mix(in srgb,var(--primary) 82%,#fff)!important;font-size:10px!important;font-weight:700!important;letter-spacing:.16em!important}
html[data-ui-template="udesign"] .page-head .page-title{color:#fff!important;font-size:calc(34px * var(--ui-scale,1))!important;line-height:1.12!important;font-weight:700!important;margin:4px 0 0!important}
html[data-ui-template="udesign"] .page-head .page-sub{color:#c4d0d9!important;font-size:calc(13.5px * var(--ui-scale,1))!important;max-width:780px!important;margin-top:9px!important}
html[data-ui-template="udesign"] .page-head :is(.date-chip,.data-badge,.pill){
  background:rgba(255,255,255,.08)!important;color:#fff!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:2px!important;
}
html[data-ui-template="udesign"] .page-head .btn.outline{background:rgba(255,255,255,.08)!important;color:#fff!important;border-color:rgba(255,255,255,.24)!important}

/* Cards, números e blocos — aparência de seção UDesign em vez de dashboard cinza. */
html[data-ui-template="udesign"] :is(.card,.table-wrap,.pdv-cart,.delivery-card,.management-card,.settings-group,.appearance-card){
  background:var(--ud-white)!important;border:1px solid var(--ud-line)!important;border-radius:2px!important;
  box-shadow:none;color:var(--ud-ink)!important;
}
html[data-ui-template="udesign"] .card{padding:22px!important}
html[data-ui-template="udesign"] .card:after{display:none!important}
html[data-ui-template="udesign"] .card-head{border-bottom:1px solid var(--ud-line)!important;padding-bottom:13px!important;margin-bottom:17px!important}
html[data-ui-template="udesign"] .card :is(h3,h4),html[data-ui-template="udesign"] .card-head h3{color:var(--ud-ink)!important;font-weight:650!important}
html[data-ui-template="udesign"] .stat-card{position:relative!important;min-height:118px!important;border-top:3px solid var(--primary)!important;align-items:center!important}
html[data-ui-template="udesign"] .stat-icon{width:45px!important;height:45px!important;border-radius:2px!important;background:var(--ud-navy)!important;color:#fff!important}
html[data-ui-template="udesign"] .stat-label{font-size:10.5px!important;color:var(--ud-muted)!important;font-weight:650!important;letter-spacing:.08em!important}
html[data-ui-template="udesign"] .stat-value{font-size:calc(24px * var(--ui-scale,1))!important;color:var(--ud-navy)!important;font-weight:700!important}
html:not(.light)[data-ui-template="udesign"] .stat-value{color:#fff!important}
html[data-ui-template="udesign"] :is(.small,.tiny,.muted){color:var(--ud-muted)}

/* Botões e formulários com proporções da linguagem corporativa. */
html[data-ui-template="udesign"] .btn{
  min-height:43px!important;padding:10px 17px!important;border-radius:2px!important;
  font-size:calc(13px * var(--ui-scale,1))!important;font-weight:650!important;letter-spacing:.005em!important;
  box-shadow:none;transform:none!important;
}
html[data-ui-template="udesign"] .btn:hover{transform:none!important;filter:none!important}
html[data-ui-template="udesign"] .btn.primary{background:var(--primary)!important;color:#fff!important;border:1px solid var(--primary)!important}
html[data-ui-template="udesign"] .btn.outline{background:var(--ud-white)!important;color:var(--ud-ink)!important;border:1px solid #cfd7dd!important}
html[data-ui-template="udesign"] .btn.danger,html[data-ui-template="udesign"] .ghost-danger{background:#d94343!important;color:#fff!important;border-color:#d94343!important}
html[data-ui-template="udesign"] .btn.green{background:#2f9e68!important;color:#fff!important}
html[data-ui-template="udesign"] .btn.compact{min-height:34px!important;padding:7px 11px!important;font-size:calc(11.5px * var(--ui-scale,1))!important}
html[data-ui-template="udesign"] :is(.input,.select,.textarea){
  min-height:45px!important;padding:10px 13px!important;border-radius:2px!important;
  border:1px solid #d7dde2!important;background:var(--ud-white)!important;color:var(--ud-ink)!important;
  box-shadow:none;font-size:calc(13.5px * var(--ui-scale,1))!important;
}
html:not(.light)[data-ui-template="udesign"] :is(.input,.select,.textarea){border-color:var(--ud-line)!important}
html[data-ui-template="udesign"] :is(.input,.select,.textarea):focus{border-color:var(--primary)!important;box-shadow:none}
html[data-ui-template="udesign"] .label{font-size:calc(11.5px * var(--ui-scale,1))!important;color:#596a77!important;font-weight:650!important;letter-spacing:.045em!important;text-transform:uppercase!important}
html:not(.light)[data-ui-template="udesign"] .label{color:var(--ud-muted)!important}

/* Tabelas mais editoriais e limpas. */
html[data-ui-template="udesign"] .table-wrap{overflow:auto!important}
html[data-ui-template="udesign"] .table th{
  background:var(--ud-navy)!important;color:#fff!important;border-bottom:0!important;
  font-size:calc(10.5px * var(--ui-scale,1))!important;font-weight:650!important;letter-spacing:.08em!important;padding:13px 15px!important;
}
html[data-ui-template="udesign"] .table td{font-size:calc(13px * var(--ui-scale,1))!important;padding:14px 15px!important;border-color:var(--ud-line)!important}
html[data-ui-template="udesign"] .table tbody tr:hover{background:color-mix(in srgb,var(--primary) 4%,var(--ud-white))!important}
html[data-ui-template="udesign"] .pill{border-radius:2px!important;font-size:10px!important;letter-spacing:.06em!important}

/* Modais: moldura limpa e X discreto. */
html[data-ui-template="udesign"] .modal{background:var(--ud-white)!important;border:1px solid var(--ud-line)!important;border-radius:3px!important;box-shadow:none}
html[data-ui-template="udesign"] .modal-head{background:var(--ud-white)!important;border-bottom:1px solid var(--ud-line)!important}
html[data-ui-template="udesign"] .modal-title{font-size:18px!important;color:var(--ud-ink)!important;font-weight:650!important}
html[data-ui-template="udesign"] .modal .x{background:transparent!important;border:0!important;color:var(--ud-muted)!important;border-radius:0!important;box-shadow:none}
html[data-ui-template="udesign"] .modal .x:hover{color:var(--ud-ink)!important;background:transparent!important}

/* Listagens específicas também passam pela mesma linguagem. */
html[data-ui-template="udesign"] :is(.comanda-card,.product-pick,.delivery-col,.kcol,.korder,.pdv-product){
  border-radius:2px!important;box-shadow:none;
}
html[data-ui-template="udesign"] .comanda-card{background:var(--ud-white)!important;border:1px solid var(--ud-line)!important}
html[data-ui-template="udesign"] .comanda-card:hover{border-color:color-mix(in srgb,var(--primary) 52%,var(--ud-line))!important;transform:none!important}
html[data-ui-template="udesign"] .filter-bar{background:var(--ud-white)!important;border:1px solid var(--ud-line)!important;border-radius:2px!important;padding:5px!important}
html[data-ui-template="udesign"] .filter-btn{border-radius:2px!important}
html[data-ui-template="udesign"] .filter-btn.active{background:var(--ud-navy)!important;color:#fff!important}

/* Configuração de aparência: selecionado discreto, sem bloco inteiro azul. */
html[data-ui-template="udesign"] .theme-btn{background:var(--ud-white)!important;color:var(--ud-ink)!important;border:1px solid var(--ud-line)!important;border-radius:2px!important;box-shadow:none}
html[data-ui-template="udesign"] .theme-btn.active{background:var(--ud-white)!important;color:var(--ud-ink)!important;border-color:var(--primary)!important;box-shadow:none}

/* Login/recuperação também seguem o mesmo template. */
html[data-ui-template="udesign"] :is(.login-card,.recovery-card){border-radius:3px!important;border:1px solid var(--ud-line)!important;box-shadow:none;background:var(--ud-white)!important}
html[data-ui-template="udesign"] .login-title{color:var(--ud-navy)!important;font-weight:700!important}
html:not(.light)[data-ui-template="udesign"] .login-title{color:#fff!important}

/* KDS: plano, nenhuma sombra/halo de cor. */
html[data-ui-template="udesign"] .kitchen-kds-page :is(.kitchen,.kds-board,.kcol,.kds-column,.korder,.kds-order-card,.kds-item,.k-time,.kds-item-check){
  box-shadow:none;filter:none!important;text-shadow:none;
}
html[data-ui-template="udesign"] .kitchen-kds-page .kcol{background:var(--ud-white)!important;border:1px solid var(--ud-line)!important}
html[data-ui-template="udesign"] .kitchen-kds-page .korder{background:var(--ud-white)!important;border:1px solid var(--ud-line)!important}
html[data-ui-template="udesign"] .kitchen-kds-page .korder.overdue{box-shadow:none;filter:none!important}

/* Alertas e dropdowns NUNCA ficam atrás da barra fixa, menu ou modal. */
#toast-root{z-index:3200!important;top:calc(var(--bp-topbar-h,64px) + 12px)!important}
.popover{z-index:3100!important;top:calc(var(--bp-topbar-h,64px) + 8px)!important;right:18px!important}
.system-notification-popover{z-index:3150!important}
.user-menu-popover{z-index:3050!important}
html[data-ui-template="udesign"] .popover{background:var(--ud-white)!important;border:1px solid var(--ud-line)!important;border-radius:2px!important;box-shadow:none}
html[data-ui-template="udesign"] .pop-item{background:var(--ud-soft)!important;border-radius:2px!important}

/* Em tela menor, preserva a hierarquia e reduz o hero sem achatar a interface. */
@media(max-width:900px){
  html[data-ui-template="udesign"] .content{padding-left:14px!important;padding-right:14px!important;padding-bottom:34px!important}
  html[data-ui-template="udesign"] .shell .app-header{padding-inline:12px!important}
  html[data-ui-template="udesign"] .content>.space>.page-head,html[data-ui-template="udesign"] .page-head{min-height:126px!important;padding:22px 19px!important;border-radius:2px!important}
  html[data-ui-template="udesign"] .page-head .page-title{font-size:calc(27px * var(--ui-scale,1))!important}
  html[data-ui-template="udesign"] .page-head:before{width:210px!important;height:210px!important;right:-100px!important;top:-125px!important;border-width:38px!important}
  html[data-ui-template="udesign"] .card{padding:17px!important}
  #toast-root{top:calc(var(--bp-topbar-h,56px) + 9px)!important}
  .popover{top:calc(var(--bp-topbar-h,56px) + 7px)!important;right:10px!important;left:auto!important;width:min(390px,calc(100vw - 20px))!important}
}

/* ============================================================
   IDMIX Tech v1.2.0 — padronização Corporate e comportamento global
   ============================================================ */
:root{
  --bp-card-radius:14px;
  --bp-control-radius:10px;
  --bp-modal-radius:16px;
  --bp-ui-gap:18px;
}
html,body,button,input,select,textarea{font-family:"Poppins",sans-serif!important}
html[data-ui-template="udesign"] body{font-family:"Poppins",sans-serif!important}

/* A opção de cantos das Configurações é a autoridade final. */
html[data-ui-radius="square"] :is(.card,.table-wrap,.pdv-cart,.delivery-card,.management-card,.settings-group,.appearance-card,.modal,.popover,.pop-item,.page-head,.btn,.input,.select,.textarea,.filter-btn,.pdv-category,.pdv-product,.catalog-product-card,.status,.pill,.data-badge,.cash-status,.code-box,.info-note,.alert,.toast,.toggle-control,.payment-option,.delivery-comanda-grid,.delivery-command-totals,.map-preview){border-radius:0!important}
html[data-ui-radius="rounded"] :is(.card,.table-wrap,.pdv-cart,.delivery-card,.management-card,.settings-group,.appearance-card,.page-head){border-radius:var(--bp-card-radius)!important}
html[data-ui-radius="rounded"] :is(.modal,.popover){border-radius:var(--bp-modal-radius)!important}
html[data-ui-radius="rounded"] :is(.pop-item,.btn,.input,.select,.textarea,.filter-btn,.pdv-category,.pdv-product,.catalog-product-card,.status,.pill,.data-badge,.cash-status,.code-box,.info-note,.alert,.toast,.toggle-control,.payment-option,.delivery-comanda-grid,.delivery-command-totals,.map-preview){border-radius:var(--bp-control-radius)!important}

/* Espaçamento padrão Corporate. */
html[data-ui-template="udesign"] .space{gap:var(--bp-ui-gap)!important}
html[data-ui-template="udesign"] .grid{gap:var(--bp-ui-gap)!important}
html[data-ui-template="udesign"] .actions{gap:10px!important;align-items:center!important}
html[data-ui-template="udesign"] .card-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important}
html[data-ui-template="udesign"] .page-head>.actions{margin-left:auto!important;justify-content:flex-end!important;flex-wrap:wrap!important}

/* Botões padronizados: forte, contorno, suave e destrutivo. */
html[data-ui-template="udesign"] .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;white-space:nowrap!important}
html[data-ui-template="udesign"] .btn .ui-icon{flex:0 0 auto!important}
html[data-ui-template="udesign"] .btn.soft-button{background:color-mix(in srgb,var(--primary) 12%,var(--ud-white))!important;color:var(--primary)!important;border:1px solid color-mix(in srgb,var(--primary) 28%,var(--ud-line))!important}
html[data-ui-template="udesign"] .btn.danger,
html[data-ui-template="udesign"] .btn.ghost-danger{background:#c62828!important;color:#fff!important;border:1px solid #c62828!important}
html[data-ui-template="udesign"] .btn.danger:hover,
html[data-ui-template="udesign"] .btn.ghost-danger:hover{background:#a71f1f!important;border-color:#a71f1f!important}

/* Menu superior/inferior: conteúdo centralizado e Sair sempre visível. */
@media(min-width:901px){
  .shell.menu-pos-top .app-menu,.shell.menu-pos-bottom .app-menu{
    left:0!important;right:0!important;width:100%!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    padding-left:92px!important;padding-right:92px!important;
    overflow:visible!important;
  }
  .shell.menu-pos-top .app-menu>.nav-link:not(.nav-logout),
  .shell.menu-pos-bottom .app-menu>.nav-link:not(.nav-logout){flex:0 0 auto!important}
  .shell.menu-pos-top .app-menu>.nav-logout,
  .shell.menu-pos-bottom .app-menu>.nav-logout{
    display:flex!important;position:absolute!important;right:18px!important;left:auto!important;
    margin:0!important;visibility:visible!important;opacity:1!important;z-index:4!important;
  }
  .shell.menu-pos-top .app-menu .right-nav-only,
  .shell.menu-pos-bottom .app-menu .right-nav-only{display:none!important}
}

/* Ícones do topo sem borda; popovers com a mesma largura e troca imediata. */
html[data-ui-template="udesign"] .app-header :is(.top-btn,.top-user){
  border:0!important;background:transparent!important;box-shadow:none;border-radius:var(--bp-control-radius)!important;
}
html[data-ui-template="udesign"] .app-header :is(.top-btn,.top-user):hover{border:0!important;background:var(--ud-soft)!important}
#user-menu-popover,.system-notification-popover,.ready-popover,.calls-popover{width:min(390px,calc(100vw - 36px))!important;max-width:390px!important}
.user-menu-popover{min-width:0!important}

/* Modais simétricos no viewport, independente da posição do menu. */
.modal-wrap{left:0!important;right:0!important;padding-left:24px!important;padding-right:24px!important;justify-content:center!important}
.modal{margin-left:auto!important;margin-right:auto!important;max-width:calc(100vw - 48px)!important}
.modal-body,.modal-content{scrollbar-gutter:stable both-edges}

/* Rolagens continuam funcionais, mas sem barra visual desnecessária. */
.pdv-categories,.pdv-products,.product-list,.delivery-items-list,.delivery-added-items,.catalog-picker-modal .pdv-products,.table-wrap{
  scrollbar-width:none!important;-ms-overflow-style:none!important;
}
.pdv-categories::-webkit-scrollbar,.pdv-products::-webkit-scrollbar,.product-list::-webkit-scrollbar,.delivery-items-list::-webkit-scrollbar,.delivery-added-items::-webkit-scrollbar,.catalog-picker-modal .pdv-products::-webkit-scrollbar,.table-wrap::-webkit-scrollbar{display:none!important}
.catalog-picker-modal .pdv-categories,.pdv-catalog .pdv-categories,.delivery-product-picker .pdv-categories{margin-bottom:14px!important}
.catalog-picker-modal .pdv-products,.pdv-catalog .pdv-products,.delivery-product-picker .pdv-products{margin-top:0!important}

/* Produtos: imagem proporcional, nunca deformada. */
.pdv-product img,.catalog-product-card img,.product-card img,.delivery-product-card img{
  width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;
}
.pdv-product .catalog-product-main>img,.catalog-product-main>img{aspect-ratio:1/1!important;max-height:138px!important;background:var(--ud-soft)!important}

/* Formas de pagamento: bloco centralizado e textos internos alinhados à esquerda. */
.payment-option{justify-content:center!important;text-align:left!important}
.payment-option>span:last-child{display:grid!important;justify-items:start!important;text-align:left!important;min-width:0!important}
.payment-option .option-icon{display:grid!important;place-items:center!important}

/* Busca com ação à direita. */
.pdv-search-row,.delivery-search-row,.catalog-search-actions{display:flex!important;align-items:center!important;gap:10px!important}
.pdv-search-wrap,.catalog-search-wrap,.delivery-search-wrap{flex:1 1 auto!important;min-width:0!important}
.delivery-search-wrap{position:relative!important}
.delivery-search-wrap .ui-icon{position:absolute!important;right:12px!important;left:auto!important;top:50%!important;transform:translateY(-50%)!important;pointer-events:none!important}
.delivery-search-wrap .input{padding-right:42px!important}

/* Listas de itens devem rolar sem expandir indefinidamente o modal. */
.delivery-items-list,.delivery-added-items,.catalog-picker-modal .product-list,.catalog-picker-modal .pdv-products{max-height:48vh!important;overflow:auto!important;overscroll-behavior:contain!important}

/* Mapa dentro de Delivery/Entregador. */
.map-preview,.delivery-map-preview{width:100%!important;min-height:220px!important;overflow:hidden!important;border:1px solid var(--ud-line)!important;background:var(--ud-soft)!important}
.map-preview iframe,.delivery-map-preview iframe{display:block!important;width:100%!important;height:240px!important;border:0!important}

/* Cozinha: ações V/X compactas e inequívocas. */
.kitchen-item-actions{display:flex!important;gap:8px!important;align-items:center!important}
.kitchen-item-actions .btn{min-width:42px!important;width:42px!important;padding-inline:0!important;font-weight:800!important}

/* Produto: status no topo, com menos espaço residual no formulário. */
.product-form-v120{gap:14px!important}
.product-form-v120 .product-active-switch{margin:0 0 2px!important;padding:10px 12px!important}
.product-form-v120 .image-upload-row,.product-form-v120 .product-image-actions{margin-bottom:0!important;padding-bottom:0!important}
.product-active-switch{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important}
.product-active-switch>span{display:grid!important;gap:1px!important}

/* Tabelas e cards mantêm uma leitura consistente. */
html[data-ui-template="udesign"] .table-wrap{overflow:auto!important}
html[data-ui-template="udesign"] .table{width:100%!important}
.batch-actions,.product-actions{display:flex!important;gap:7px!important;flex-wrap:nowrap!important;align-items:center!important}

/* Em largura reduzida, ações secundárias viram ícone para não quebrar o layout. */
@media(max-width:820px){
  .batch-actions .btn span,.product-actions .btn span,.responsive-icon-actions .btn span{display:none!important}
  .batch-actions .btn,.product-actions .btn,.responsive-icon-actions .btn{width:42px!important;min-width:42px!important;padding-inline:0!important}
  .page-head{align-items:flex-start!important;flex-direction:column!important}
  .page-head>.actions{width:100%!important;margin-left:0!important;justify-content:flex-start!important}
  .modal-wrap{padding-left:12px!important;padding-right:12px!important}
  .modal{max-width:calc(100vw - 24px)!important}
}

/* Complementos de listas e ações operacionais v1.2.0 */
.scroll-list{max-height:42vh!important;overflow:auto!important;overscroll-behavior:contain!important;scrollbar-width:none!important;-ms-overflow-style:none!important}
.scroll-list::-webkit-scrollbar{display:none!important}
.kds-item-actions{display:flex!important;align-items:center!important;gap:7px!important;margin-left:auto!important}
.kds-item-actions :is(.kds-item-check,.kds-item-cancel){width:38px!important;height:38px!important;min-width:38px!important;display:grid!important;place-items:center!important;border-radius:var(--bp-control-radius)!important;font-weight:800!important;cursor:pointer!important}
.kds-item-actions .kds-item-check{background:color-mix(in srgb,#1f9d55 14%,var(--ud-white))!important;color:#14753f!important;border:1px solid color-mix(in srgb,#1f9d55 42%,var(--ud-line))!important}
.kds-item-actions .kds-item-check.done{background:#1f9d55!important;color:#fff!important;border-color:#1f9d55!important}
.kds-item-actions .kds-item-cancel{background:#c62828!important;color:#fff!important;border:1px solid #c62828!important}
html[data-ui-radius="square"] .kds-item-actions :is(.kds-item-check,.kds-item-cancel){border-radius:0!important}
.courier-card-map{margin:14px 0!important}
.finance-courier-payables{margin-top:18px!important}
.courier-payables-list{display:grid!important;gap:8px!important}
.courier-payables-list>div{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;padding:10px 12px!important;border:1px solid var(--ud-line)!important;border-radius:var(--bp-control-radius)!important}
html[data-ui-radius="square"] .courier-payables-list>div{border-radius:0!important}
.courier-payables-list small{grid-column:1/2!important;color:var(--ud-muted)!important}

/* IDMIX Tech v1.2.0 — revisão final de listas e navegação */
:is(.pdv-cart-lines,.items-card .items,#delivery-draft-items,.track-order-items,.public-orders-list){
  max-height:42vh!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
:is(.pdv-cart-lines,.items-card .items,#delivery-draft-items,.track-order-items,.public-orders-list)::-webkit-scrollbar{display:none!important}

/* Menu configurado em cima/baixo permanece visualmente centralizado também em larguras intermediárias. */
html[data-menu-position="top"] .desktop-nav,
html[data-menu-position="bottom"] .desktop-nav{
  justify-content:center!important;
  text-align:center!important;
}
html[data-menu-position="top"] .desktop-nav .nav-main,
html[data-menu-position="bottom"] .desktop-nav .nav-main{
  margin-inline:auto!important;
  justify-content:center!important;
}

/* Endereço e mapa mantêm o mesmo componente no Delivery interno e público. */
.address-with-map{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important}
.delivery-map-preview{overflow:hidden!important;border:1px solid var(--ud-line)!important;border-radius:var(--bp-card-radius)!important;min-height:220px!important;background:var(--ud-white)!important}
.delivery-map-preview iframe{display:block!important;width:100%!important;height:260px!important;border:0!important}
html[data-ui-radius="square"] .delivery-map-preview{border-radius:0!important}

@media(max-width:640px){
  .address-with-map{grid-template-columns:1fr!important}
  .address-with-map .btn{width:100%!important}
}


/* IDMIX Tech 1.2.1 — interface plana, acessos operacionais em linha e manual integrado */
html *,html *::before,html *::after{box-shadow:none!important;text-shadow:none!important}
.chart-line{filter:none!important}
.operational-login-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch}
.operational-login-actions>.operational-login-btn{min-width:0!important;width:100%!important;justify-content:center!important}
.operational-login-actions>.operational-login-btn:only-child{grid-column:1/-1}
.library-user-manual{scroll-margin-top:110px}
.library-manual-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px}
.library-manual-tools .input-icon-wrap{flex:1 1 320px;max-width:560px}
.library-manual-index{display:flex;gap:7px;overflow:auto;padding:10px 0 4px;scrollbar-width:none}
.library-manual-index::-webkit-scrollbar{display:none}
.library-manual-index button{flex:0 0 auto;border:1px solid var(--border);background:var(--surface);color:var(--fg);padding:7px 10px;font:inherit;font-size:11px;cursor:pointer;border-radius:var(--ui-control-radius)}
.library-manual-sections{display:grid;gap:8px;margin-top:10px}
.library-manual-item{border:1px solid var(--border);background:var(--surface);border-radius:var(--ui-card-radius);overflow:hidden;scroll-margin-top:110px}
.library-manual-item.hidden{display:none!important}
.library-manual-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;user-select:none}
.library-manual-item summary::-webkit-details-marker{display:none}
.library-manual-item summary>span:first-child{display:flex;align-items:flex-start;gap:10px;min-width:0}
.library-manual-item summary>span:first-child>.ui-icon{margin-top:2px;flex:0 0 auto;color:var(--primary)}
.library-manual-item summary b{display:block;font-size:13px;line-height:1.35}
.library-manual-item summary small{display:block;color:var(--muted);font-size:11px;line-height:1.4;margin-top:2px;font-weight:400}
.library-manual-item[open] summary{border-bottom:1px solid var(--border);background:var(--surface2)}
.library-manual-body{padding:14px 16px 16px;color:var(--fg);font-size:12px;line-height:1.65}
.library-manual-body p{margin:0 0 10px}
.library-manual-body h4{margin:14px 0 6px;font-size:12px}
.library-manual-body ul,.library-manual-body ol{margin:6px 0 12px;padding-left:20px}
.library-manual-body li+li{margin-top:4px}
.library-manual-body code{font-family:"Poppins",sans-serif;font-size:11px;background:var(--surface2);border:1px solid var(--border);padding:1px 5px;border-radius:var(--ui-control-radius)}
:root[data-ui-radius="square"] .library-manual-index button,:root[data-ui-radius="square"] .library-manual-item,:root[data-ui-radius="square"] .library-manual-body code{border-radius:0!important}
@media(max-width:560px){.operational-login-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px}.operational-login-actions .operational-login-btn{padding-inline:8px!important}.library-manual-tools{align-items:stretch}.library-manual-tools .actions{width:100%}.library-manual-tools .actions .btn{flex:1}.library-manual-body{padding:12px}}


/* ============================================================
   IDMIX Tech v1.2.2 — acabamento final sem sombras
   ============================================================ */
/* Padrão visual fixo: Poppins/Corporate, sem sombras em toda a aplicação. */
html,body,button,input,select,textarea{font-family:Poppins,"Poppins",sans-serif!important}
:where(.card,.stat-card,.table-wrap,.modal,.popover,.user-menu-popover,.desktop-more-menu,.btn,.input,.select,.textarea,.app-header,.app-menu,.mobile-nav,.login-card,.product-pick,.pdv-product,.pdv-cart,.delivery-card,.management-card,.settings-group,.toast,.alert,.info-note,.page-head,.cash-status-badge){box-shadow:none!important}

/* Login: Gestão Inteligente fino e encostado ao nome IDMIX Tech. */
.login-card-brand-copy{gap:0!important}
.login-card-brand-copy .login-title{line-height:1.02!important;margin:0!important}
.login-card-brand-copy .brand-sub{font-weight:400!important;font-size:12px!important;line-height:1.1!important;letter-spacing:.01em!important;margin-top:1px!important;color:var(--muted)!important}
.operational-login-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}

/* Badges do card de título seguem a mesma altura dos botões. */
.page-head :is(.data-badge,.date-chip,.pill,.title-badge){min-height:38px!important;height:38px!important;padding:0 13px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;white-space:nowrap!important;border:1px solid var(--border)!important;background:var(--surface2)!important;font-size:11px!important;font-weight:600!important;line-height:1!important}
.title-badge{appearance:none;cursor:pointer;color:var(--muted)}
.cash-status-badge.open{background:color-mix(in srgb,var(--green) 10%,var(--surface))!important;border-color:color-mix(in srgb,var(--green) 32%,var(--border))!important;color:var(--green)!important}
.cash-status-badge.closed{background:var(--surface2)!important;color:var(--muted)!important}
.cash-status-badge .ui-icon{width:15px!important;height:15px!important}

/* Menu horizontal: todos os links ficam disponíveis; ícones quando a largura faltar. */
@media(min-width:901px){
  .shell.menu-pos-top .app-menu,.shell.menu-pos-bottom .app-menu{padding-left:14px!important;padding-right:14px!important;justify-content:center!important;gap:2px!important;overflow-x:auto!important;overflow-y:visible!important;scrollbar-width:none!important}
  .shell.menu-pos-top .app-menu::-webkit-scrollbar,.shell.menu-pos-bottom .app-menu::-webkit-scrollbar{display:none!important}
  .shell.menu-pos-top .app-menu>.nav-link,.shell.menu-pos-bottom .app-menu>.nav-link{position:static!important;margin:0!important;display:flex!important;visibility:visible!important;opacity:1!important;flex:0 0 auto!important;padding-left:9px!important;padding-right:9px!important}
  .shell.menu-pos-top .app-menu>.nav-logout,.shell.menu-pos-bottom .app-menu>.nav-logout{position:static!important;right:auto!important;margin-left:4px!important;color:#ffb4b4!important}
  .shell.menu-icons-only .app-menu>.nav-link{width:42px!important;min-width:42px!important;padding-left:0!important;padding-right:0!important;justify-content:center!important}
  .shell.menu-icons-only .app-menu>.nav-link>span:last-child{display:none!important}
  .shell.menu-icons-only .app-menu>.nav-link .nav-icon{margin:0!important}
}

/* PDV: imagem menor sem distorção. */
.pdv-products .pdv-product{min-height:158px!important}
.pdv-products .pdv-product>img,.pdv-products .pdv-product>.pdv-product-placeholder{height:64px!important;max-height:64px!important;min-height:64px!important;width:100%!important;object-fit:contain!important;background:var(--surface2)!important}
@media(max-width:520px){.pdv-products .pdv-product{min-height:150px!important}.pdv-products .pdv-product>img,.pdv-products .pdv-product>.pdv-product-placeholder{height:58px!important;max-height:58px!important;min-height:58px!important}}

/* Seletores restaurados de Comandas e Delivery. */
.restored-product-picker{display:grid!important;gap:9px!important;max-height:52vh!important;overflow:auto!important}
.restored-product-picker .product-pick{padding:11px!important}
.restored-product-picker .thumb{width:48px!important;height:48px!important;object-fit:contain!important}
.restored-product-picker .item-note-input{margin-top:9px!important}

/* Limpeza seletiva do banco. */
.db-clean-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.db-clean-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:46vh;overflow:auto;scrollbar-width:none}
.db-clean-list::-webkit-scrollbar{display:none}
.db-clean-item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start;border:1px solid var(--border);background:var(--surface2);padding:11px;cursor:pointer}
.db-clean-item input{margin-top:3px}.db-clean-item b{display:block;font-size:11px}.db-clean-item small{display:block;color:var(--muted);font-size:9px;margin-top:3px}

/* Manual detalhado. */
.manual-control-table{display:grid;border:1px solid var(--border);margin-top:12px;overflow:hidden}
.manual-control-row{display:grid;grid-template-columns:minmax(150px,220px) 1fr;gap:14px;padding:10px 12px;border-bottom:1px solid var(--border);background:var(--surface)}
.manual-control-row:last-child{border-bottom:0}.manual-control-row b{font-size:11px}.manual-control-row span{font-size:11px;line-height:1.55;color:var(--muted)}
@media(max-width:700px){.operational-login-actions{grid-template-columns:1fr 1fr!important}.db-clean-list{grid-template-columns:1fr}.manual-control-row{grid-template-columns:1fr;gap:4px}}
.db-clean-item.is-protected{cursor:not-allowed!important;opacity:.72!important;background:color-mix(in srgb,var(--surface2) 84%,var(--border))!important}
.db-clean-item.is-protected input{cursor:not-allowed!important}

/* ============================================================
   IDMIX Tech v1.2.3 — KDS, menus e Configurações
   ============================================================ */

/* KDS: botão neutro; a cor fica apenas no ícone. */
.kds-item-actions :is(.kds-item-check,.kds-item-cancel){background:var(--surface)!important;border:1px solid var(--border)!important;box-shadow:none!important}
.kds-item-actions .kds-item-check,.kds-item-actions .kds-item-check.done{color:#159653!important;background:var(--surface)!important;border-color:var(--border)!important}
.kds-item-actions .kds-item-cancel{color:#c62828!important;background:var(--surface)!important;border-color:var(--border)!important}
.kds-item-actions :is(.kds-item-check,.kds-item-cancel) .ui-icon{width:18px!important;height:18px!important;stroke:currentColor!important}
.kds-item-actions .kds-item-check:disabled{opacity:.48!important;cursor:default!important}

/* Menu superior/inferior: ícone acima do texto; Sair segue o último link sem espaçamento especial. */
@media(min-width:901px){
  :root{--bp-menu-h:62px}
  .shell.menu-pos-top .app-menu,.shell.menu-pos-bottom .app-menu{align-items:stretch!important;gap:2px!important}
  .shell.menu-pos-top .app-menu>.nav-link,.shell.menu-pos-bottom .app-menu>.nav-link{
    height:var(--bp-menu-h)!important;min-height:var(--bp-menu-h)!important;min-width:60px!important;
    flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;
    padding:5px 8px!important;margin:0!important;line-height:1!important;text-align:center!important;
  }
  .shell.menu-pos-top .app-menu>.nav-link .nav-icon,.shell.menu-pos-bottom .app-menu>.nav-link .nav-icon{margin:0!important;width:21px!important;height:21px!important;display:grid!important;place-items:center!important}
  .shell.menu-pos-top .app-menu>.nav-link>span:last-child,.shell.menu-pos-bottom .app-menu>.nav-link>span:last-child{font-size:9.5px!important;line-height:1.05!important;white-space:nowrap!important}
  .shell.menu-pos-top .app-menu>.nav-logout,.shell.menu-pos-bottom .app-menu>.nav-logout{margin:0!important;order:initial!important;position:static!important;right:auto!important}
  .shell.menu-icons-only .app-menu>.nav-link{width:42px!important;min-width:42px!important;padding:0!important}
  .shell.menu-icons-only .app-menu>.nav-link>span:last-child{display:none!important}
}

/* Badge de caixa não pertence mais ao banner de título. */
.page-head .cash-head-button,.page-head .cash-status-badge{display:none!important}

/* Gestão incorporada às Configurações. */
.settings-management-group{order:initial!important}
.settings-management-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}
.settings-management-kpis>div{border:1px solid var(--border);background:var(--surface2);padding:11px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:var(--ui-card-radius)}
.settings-management-kpis span{font-size:10px;color:var(--muted)}.settings-management-kpis b{font-size:14px}
.management-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.settings-management-lists{margin-top:12px}
.settings-management-group .management-card{min-width:0!important}
.settings-button-guide{display:none!important}
@media(max-width:1100px){.management-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){.settings-management-kpis,.management-settings-grid{grid-template-columns:1fr!important}}


/* ===== IDMIX Tech v1.2.3 · ajustes finais ===== */
/* KDS: ícones coloridos; botões neutros/sem preenchimento. */
.kitchen-item-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:10px}.kitchen-item-actions .icon-btn{width:38px;height:38px;border:1px solid var(--border)!important;background:transparent!important;box-shadow:none!important}.kitchen-item-actions .icon-btn:hover{background:var(--surface2)!important}.kitchen-item-actions .kitchen-valid{color:#22a876!important}.kitchen-item-actions .kitchen-trash{color:#d84f5d!important}.kitchen-item-actions .ui-icon{width:19px!important;height:19px!important}.kitchen-start{background:transparent!important;color:var(--primary)!important;border-color:var(--border)!important}
/* Menu superior/inferior: ícone acima do texto e Sair participa da mesma sequência. */
@media(min-width:901px){
 .shell.menu-pos-top .app-header-nav,.shell.menu-pos-bottom .app-header-nav{align-items:stretch!important;justify-content:center!important;gap:0!important;overflow:hidden!important}
 .shell.menu-pos-top .app-header-nav>.nav-link,.shell.menu-pos-bottom .app-header-nav>.nav-link{flex-direction:column!important;gap:2px!important;min-height:64px!important;height:64px!important;padding:5px 8px!important;line-height:1.05!important}
 .shell.menu-pos-top .app-header-nav>.nav-link>span:last-child,.shell.menu-pos-bottom .app-header-nav>.nav-link>span:last-child{font-size:9.5px!important}
 .shell.menu-pos-top .app-header-nav.icon-only>.nav-link,.shell.menu-pos-bottom .app-header-nav.icon-only>.nav-link{width:42px!important;min-width:42px!important;max-width:42px!important;padding:0!important}
 .shell.menu-pos-top .app-header-nav.icon-only>.nav-link>span:last-child,.shell.menu-pos-bottom .app-header-nav.icon-only>.nav-link>span:last-child{display:none!important}
 .shell.menu-pos-top .app-header-nav.icon-only .nav-icon,.shell.menu-pos-bottom .app-header-nav.icon-only .nav-icon{width:22px!important;height:22px!important}
 .shell.menu-pos-top .app-header-nav .desktop-more-wrap,.shell.menu-pos-bottom .app-header-nav .desktop-more-wrap{display:none!important}
}
/* Configurações: Sistema e manutenção permanece visualmente no fim. */
.settings-page .settings-group:last-child{margin-bottom:4px}

/* ===== IDMIX Tech v1.2.6 · navegação lateral e cards de Configurações ===== */
@media(min-width:901px){
  .shell.menu-pos-left .app-menu .right-nav-only .nav-link .nav-icon,
  .shell.menu-pos-right .app-menu .right-nav-only .nav-link .nav-icon{
    display:grid!important;
    place-items:center!important;
    visibility:visible!important;
    opacity:1!important;
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    flex:0 0 24px!important;
    margin:0!important;
    color:currentColor!important;
    background:transparent!important;
  }
  .shell.menu-pos-left .app-menu .right-nav-only .nav-link .nav-icon .ui-icon,
  .shell.menu-pos-right .app-menu .right-nav-only .nav-link .nav-icon .ui-icon{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:18px!important;
    height:18px!important;
    stroke:currentColor!important;
  }
}
.settings-page .settings-standard-card{padding:18px!important;display:grid!important;gap:14px!important}
.settings-standard-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:0 0 12px;border-bottom:1px solid var(--border)}
.settings-standard-card-head>div{min-width:0}
.settings-standard-card-head h3{display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;font-size:15px!important;font-weight:600!important}
.settings-standard-card-head h3 .ui-icon{width:18px!important;height:18px!important;color:var(--primary)!important;flex:0 0 18px!important}
.settings-standard-card-head p{margin:4px 0 0!important}
.settings-page .qr-card .registered-tables{margin:0!important}
.settings-page .qr-card .qr-layout{margin-top:0!important;padding-top:2px!important}
@media(max-width:700px){.settings-standard-card-head{align-items:stretch;flex-direction:column}.settings-standard-card-head>.btn{width:100%}}
/* END IDMIX Tech v1.2.6 */

/* ===== IDMIX Tech v1.2.7 · Operação e gestão + preservação visual ===== */
/* Operação e gestão: três cards por linha no desktop, mantendo redução apenas em telas menores. */
.management-settings-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
.management-settings-grid>.management-card{height:100%!important;min-width:0!important}
@media(max-width:820px){.management-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:580px){.management-settings-grid{grid-template-columns:1fr!important}}

/* Pedido preservado desde v1.2.0: alertas e usuário na barra superior sem borda. */
html[data-ui-template="udesign"] .app-header :is(.top-btn,.top-user),
html[data-ui-template="udesign"] .app-header :is(.top-btn,.top-user):hover{
  border:0!important;
  border-color:transparent!important;
  box-shadow:none!important;
  background:transparent!important;
}
/* END IDMIX Tech v1.2.7 */


/* ===== IDMIX Tech v1.2.8 · autoridade visual e correções regressivas ===== */
.management-settings-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
.management-settings-grid>.management-card{min-width:0!important;height:100%!important}
@media(max-width:980px){.management-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.management-settings-grid{grid-template-columns:1fr!important}}

.modal-wrap:has(.modal-fullscreen){inset:0!important;padding:0!important;place-items:stretch!important}
.modal.modal-fullscreen{width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;margin:0!important;display:flex!important;flex-direction:column!important}
.modal.modal-fullscreen .modal-body{flex:1 1 auto!important;min-height:0!important;overflow:auto!important}
@media(max-width:700px){.modal.modal-fullscreen{width:100vw!important;height:100dvh!important;max-height:100dvh!important}}

.kds-item-actions{display:flex!important;align-items:center!important;gap:7px!important}
.kds-item-actions .icon-btn{background:transparent!important;border:1px solid var(--border)!important;box-shadow:none!important}
.kds-item-actions .kds-item-check{color:#159447!important}
.kds-item-actions .kds-item-cancel{color:#d43232!important}
.kds-item-ready-mark{display:inline-grid!important;place-items:center!important;color:#159447!important;width:34px!important;height:34px!important}
.kds-item-actions .icon-btn:hover{background:var(--surface2)!important}

/* A escolha Reto/Arredondado é a última autoridade de cantos em todo o sistema. */
html[data-ui-radius="square"] :is(
  .card,.stat-card,.page-head,.table-wrap,.modal,.popover,.user-menu-popover,.desktop-more-menu,
  .app-header,.app-menu,.mobile-nav,.nav-link,.nav-icon,.bottom-nav-item,.top-nav-item,.menu-link,
  .btn,.icon-btn,.input,.select,.textarea,.filter-btn,.pdv-category,.pdv-product,.catalog-product-card,.pdv-cart,
  .delivery-card,.delivery-col,.delivery-controlbar,.delivery-comanda-grid,.delivery-command-totals,.delivery-map-preview,
  .management-card,.settings-group,.appearance-card,.finance-management,.finance-result-card,.finance-planning-card,
  .status,.status-pill,.pill,.data-badge,.date-chip,.cash-status,.code-box,.info-note,.alert,.toast,.toggle-control,
  .payment-option,.product-pick,.korder,.kcol,.kds-item,.login-card,.library-manual-item,.library-manual-index button
){border-radius:0!important}
html[data-ui-radius="rounded"] :is(
  .card,.stat-card,.page-head,.table-wrap,.delivery-card,.delivery-col,.delivery-controlbar,.pdv-cart,
  .management-card,.settings-group,.appearance-card,.finance-management,.finance-result-card,.finance-planning-card,
  .korder,.kcol,.login-card,.library-manual-item
){border-radius:var(--bp-card-radius)!important}
html[data-ui-radius="rounded"] :is(.modal,.popover,.user-menu-popover,.desktop-more-menu){border-radius:var(--bp-modal-radius)!important}
html[data-ui-radius="rounded"] :is(
  .app-header,.app-menu,.mobile-nav,.nav-link,.nav-icon,.bottom-nav-item,.top-nav-item,.menu-link,.btn,.icon-btn,.input,.select,.textarea,
  .filter-btn,.pdv-category,.pdv-product,.catalog-product-card,.delivery-comanda-grid,.delivery-command-totals,.delivery-map-preview,
  .status,.status-pill,.pill,.data-badge,.date-chip,.cash-status,.code-box,.info-note,.alert,.toast,.toggle-control,
  .payment-option,.product-pick,.kds-item,.library-manual-index button
){border-radius:var(--bp-control-radius)!important}
/* END IDMIX Tech v1.2.8 */


/* ===== IDMIX Tech v1.2.9 · padrão único de ações, títulos, KDS e cantos ===== */
/* KDS: Pendente / Preparando / Pronto sem fundo colorido. Mantém apenas sinalização discreta por texto. */
.kitchen .kcol,.kitchen .kcol.status-pendente,.kitchen .kcol.status-preparando,.kitchen .kcol.status-pronto,
.kitchen-kds-page .kcol,.kitchen-kds-page .kds-column{background:var(--surface)!important;border-color:var(--border)!important;border-top-color:var(--border)!important}
.kitchen :is(.khead,.status-pendente .khead,.status-preparando .khead,.status-pronto .khead),
.kitchen-kds-page :is(.khead,.status-pendente .khead,.status-preparando .khead,.status-pronto .khead){background:transparent!important}
.kitchen .kcount{background:var(--surface2)!important;color:var(--muted)!important}

/* O card de título usa o mesmo sistema visual de Produtos: principal destacado, demais neutros. */
.page-head .actions{align-items:center!important}
.page-head :is(.btn,.title-indicator,.date-chip,.data-badge,.cash-status,.autosave-status){
  min-height:42px!important;height:42px!important;padding:10px 16px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:8px!important;white-space:nowrap!important;font-size:calc(var(--bp-type-button,13px) * var(--ui-scale,1))!important;line-height:1.2!important;font-weight:600!important;
  border:1px solid var(--border-strong)!important;box-shadow:none!important;
}
.page-head :is(.title-indicator,.date-chip,.data-badge,.cash-status,.autosave-status),
.page-head .btn.outline{background:var(--surface)!important;color:var(--fg)!important;border-color:var(--border-strong)!important}
.page-head .btn.primary{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
.page-head :is(.title-indicator,.date-chip,.data-badge,.cash-status,.autosave-status) .ui-icon{width:18px!important;height:18px!important;flex:0 0 18px!important}
.page-head .cash-status.open,.page-head .cash-status.closed,.page-head .autosave-status.saved,.page-head .autosave-status.saving{color:var(--fg)!important;background:var(--surface)!important;border-color:var(--border-strong)!important}
.page-head .btn.compact{min-height:42px!important;height:42px!important;padding:10px 16px!important;font-size:calc(var(--bp-type-button,13px) * var(--ui-scale,1))!important}

/* Todos os botões de ação seguem: principal=destaque; secundário=neutro; destrutivo=vermelho. */
.btn.outline,.btn.secondary{background:var(--surface)!important;color:var(--fg)!important;border-color:var(--border-strong)!important}
.btn.primary,.btn.green{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
.btn.danger,.btn.ghost-danger{background:var(--danger,#c62828)!important;color:#fff!important;border-color:var(--danger,#c62828)!important}

/* Leitor vem antes da busca no PDV e não força o input para outra linha em desktop. */
.pdv-search-row{display:flex!important;align-items:center!important;gap:10px!important}
.pdv-search-row>.pdv-scan-button{order:0!important;flex:0 0 auto!important}
.pdv-search-row>.pdv-search-wrap{order:1!important;flex:1 1 auto!important;min-width:180px!important}

/* Operação e gestão: exatamente três cards por linha em telas de trabalho. */
.management-settings-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important}
.management-settings-grid>.management-card{min-width:0!important;width:100%!important;height:100%!important}
@media(max-width:760px){.management-settings-grid{grid-template-columns:1fr!important}}

/* Reto/arredondado é a autoridade final para cards, card do título, botões, badges e menus. */
html[data-ui-radius="square"] :is(
  .card,.stat-card,.page-head,.table-wrap,.modal,.popover,.user-menu-popover,.desktop-more-menu,.settings-group,.management-card,.finance-management,.finance-result-card,.finance-planning-card,
  .app-header,.app-menu,.mobile-nav,.nav-link,.nav-icon,.bottom-nav-item,.top-nav-item,.menu-link,
  .btn,.icon-btn,button,.filter-btn,.data-badge,.date-chip,.cash-status,.autosave-status,.title-indicator,.pill,.status,.status-pill,
  .input,.select,.textarea,.pdv-cart,.pdv-product,.catalog-product-card,.delivery-card,.delivery-col,.kcol,.korder,.kds-item
){border-radius:0!important}
html[data-ui-radius="rounded"] :is(
  .card,.stat-card,.page-head,.table-wrap,.settings-group,.management-card,.finance-management,.finance-result-card,.finance-planning-card,.pdv-cart,.delivery-card,.delivery-col,.kcol,.korder,.login-card
){border-radius:var(--bp-card-radius)!important}
html[data-ui-radius="rounded"] :is(.modal,.popover,.user-menu-popover,.desktop-more-menu){border-radius:var(--bp-modal-radius)!important}
html[data-ui-radius="rounded"] :is(
  .app-header,.app-menu,.mobile-nav,.nav-link,.nav-icon,.bottom-nav-item,.top-nav-item,.menu-link,
  .btn,.icon-btn,button,.filter-btn,.data-badge,.date-chip,.cash-status,.autosave-status,.title-indicator,.pill,.status,.status-pill,
  .input,.select,.textarea,.pdv-product,.catalog-product-card,.kds-item
){border-radius:var(--bp-control-radius)!important}
/* END IDMIX Tech v1.2.9 */

/* ===== IDMIX Tech v1.3.0 · relatórios, caixa, responsividade e KDS ===== */

/* Relatórios: Produtos mais vendidos vem abaixo de Indicadores operacionais. */
.report-main-grid.report-operational-stack-130{grid-template-columns:1fr!important;align-items:start!important}
.report-main-grid.report-operational-stack-130>.card{width:100%!important}

/* Ações compactas: se faltaria largura, permanecem numa linha apenas com ícones. */
.bp-responsive-actions-130.bp-icons-only-130{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important}
.bp-responsive-actions-130.bp-icons-only-130>.btn,
.bp-responsive-actions-130.bp-icons-only-130>a.btn,
.bp-responsive-actions-130.bp-icons-only-130>button.btn{width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;flex:0 0 42px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;white-space:nowrap!important}
.bp-responsive-actions-130.bp-icons-only-130>.btn>span:not(.option-icon),
.bp-responsive-actions-130.bp-icons-only-130>a.btn>span:not(.option-icon),
.bp-responsive-actions-130.bp-icons-only-130>button.btn>span:not(.option-icon){display:none!important}
.bp-responsive-actions-130.bp-icons-only-130>.btn>.ui-icon,
.bp-responsive-actions-130.bp-icons-only-130>a.btn>.ui-icon,
.bp-responsive-actions-130.bp-icons-only-130>button.btn>.ui-icon{width:19px!important;height:19px!important;flex:0 0 19px!important;margin:0!important}
.page-head .bp-icons-only-130{margin-left:auto!important}

/* KDS: item concluído exibe somente o estado Pronto abaixo do nome/observação. */
.kds-item-ready-status{display:inline-flex!important;align-items:center!important;gap:5px!important;margin-top:6px!important;font-size:11px!important;font-weight:700!important;color:#159447!important}
.kds-item-ready-status .ui-icon{width:15px!important;height:15px!important;flex:0 0 15px!important}
.kds-item.done .kds-item-actions{display:none!important}

/* Entrada/Saída de caixa são ações secundárias neutras; a cor fica apenas no ícone/estado sem criar novo padrão. */
.dashboard-cash-open>.actions button[onclick*="openCashMovement"]{background:var(--surface)!important;color:var(--fg)!important;border-color:var(--border-strong)!important}

/* END IDMIX Tech v1.3.0 */

/* ===== IDMIX Tech v1.3.0 revisão · KDS, ações globais e cantos ===== */
/* KDS: mantém a barra colorida de cada etapa; somente o fundo do cabeçalho/contador permanece neutro. */
.kitchen .kcol.status-pendente,.kitchen-kds-page .kcol.status-pendente{border-top:4px solid #f59e0b!important}
.kitchen .kcol.status-preparando,.kitchen-kds-page .kcol.status-preparando{border-top:4px solid #3b82f6!important}
.kitchen .kcol.status-pronto,.kitchen-kds-page .kcol.status-pronto{border-top:4px solid #22c55e!important}
.kitchen :is(.khead,.status-pendente .khead,.status-preparando .khead,.status-pronto .khead),
.kitchen-kds-page :is(.khead,.status-pendente .khead,.status-preparando .khead,.status-pronto .khead){background:transparent!important}
.kitchen .kcount,.kitchen-kds-page .kcount{background:var(--surface2)!important;color:var(--muted)!important}

/* Ações: mesmo sistema visual usado no banner de título. */
.btn{min-height:42px!important;padding:10px 16px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;font-size:calc(var(--bp-type-button,13px) * var(--ui-scale,1))!important;font-weight:600!important;line-height:1.2!important;border:1px solid var(--border-strong)!important;box-shadow:none!important}
.btn.primary,.btn.green{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
.btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger){background:var(--surface)!important;color:var(--fg)!important;border-color:var(--border-strong)!important}
.btn.danger,.btn.ghost-danger{background:var(--danger,#c62828)!important;color:#fff!important;border-color:var(--danger,#c62828)!important}
.btn>.ui-icon{width:18px!important;height:18px!important;flex:0 0 18px!important}
.icon-btn{width:42px!important;height:42px!important;min-width:42px!important;display:inline-grid!important;place-items:center!important;background:var(--surface)!important;border:1px solid var(--border-strong)!important;box-shadow:none!important}
.icon-btn>.ui-icon{width:18px!important;height:18px!important}
.kds-item-actions .kds-item-check{color:#159447!important;background:var(--surface)!important}
.kds-item-actions .kds-item-cancel{color:#d43232!important;background:var(--surface)!important}

/* Reto/Arredondado é a última autoridade inclusive para título, indicador de fila, menus e ações. */
html[data-ui-radius="square"] :is(.page-head,.page-head .data-badge,.page-head .title-indicator,.kds-queue-count,.card,.stat-card,.kcol,.korder,.btn,.icon-btn,.app-header,.app-menu,.mobile-nav,.nav-link,.nav-icon,.bottom-nav-item,.top-nav-item,.menu-link){border-radius:0!important}
html[data-ui-radius="rounded"] .page-head,html[data-ui-radius="rounded"] :is(.card,.stat-card,.kcol,.korder){border-radius:var(--bp-card-radius)!important}
html[data-ui-radius="rounded"] :is(.page-head .data-badge,.page-head .title-indicator,.kds-queue-count,.btn,.icon-btn,.app-header,.app-menu,.mobile-nav,.nav-link,.nav-icon,.bottom-nav-item,.top-nav-item,.menu-link){border-radius:var(--bp-control-radius)!important}
/* END IDMIX Tech v1.3.0 revisão */

/* ===== IDMIX Tech v1.3.0 revisão · semântica de raio do menu e banner Dashboard ===== */
/* O quadro/faixa do menu mantém sua geometria estrutural; Reto/Arredondado aplica-se aos botões/links do menu. */
.app-menu,.app-header,.mobile-nav{border-radius:0!important}
html[data-ui-radius="square"] :is(
  .app-menu .nav-link,.app-menu .menu-link,.app-menu .top-nav-item,.app-menu .bottom-nav-item,
  .app-header-nav .nav-link,.mobile-nav .nav-link,.desktop-more-menu .nav-link
){border-radius:0!important}
html[data-ui-radius="rounded"] :is(
  .app-menu .nav-link,.app-menu .menu-link,.app-menu .top-nav-item,.app-menu .bottom-nav-item,
  .app-header-nav .nav-link,.mobile-nav .nav-link,.desktop-more-menu .nav-link
){border-radius:var(--bp-control-radius)!important}

/* O banner/card de título, inclusive Dashboard, sempre segue a configuração global de cantos. */
html[data-ui-radius="square"] :is(
  .content>.space>.page-head,.content>.space>.dashboard-v6>.page-head,.dashboard-v6>.page-head
){border-radius:0!important}
html[data-ui-radius="rounded"] :is(
  .content>.space>.page-head,.content>.space>.dashboard-v6>.page-head,.dashboard-v6>.page-head
){border-radius:var(--bp-card-radius)!important}
/* END IDMIX Tech v1.3.0 revisão · menu/banners */

/* ===== IDMIX Tech v1.3.1 · menu reto + links obedecem Configurações ===== */
/*
 * Decisão acumulada:
 * - o fundo/container estrutural do menu permanece SEMPRE com cantos retos;
 * - somente os links/botões internos do menu herdam Reto/Arredondado de ui_radius;
 * - esta regra fica no final do CSS para não ser sobrescrita por estilos históricos/template.
 */
.app-menu,
.app-header-nav,
.mobile-nav{border-radius:0!important}

html[data-ui-radius="square"] :is(
  .app-menu .nav-link,.app-menu .menu-link,.app-menu .top-nav-item,.app-menu .bottom-nav-item,
  .app-header-nav>.nav-link,.app-header-nav>.desktop-more-wrap>.nav-link,
  .mobile-nav .nav-link,.desktop-more-menu .nav-link
){border-radius:0!important}

html[data-ui-radius="rounded"] :is(
  .app-menu .nav-link,.app-menu .menu-link,.app-menu .top-nav-item,.app-menu .bottom-nav-item,
  .app-header-nav>.nav-link,.app-header-nav>.desktop-more-wrap>.nav-link,
  .mobile-nav .nav-link,.desktop-more-menu .nav-link
){border-radius:var(--bp-control-radius)!important}
/* END IDMIX Tech v1.3.1 · menu reto + links configuráveis */


/* ===== IDMIX Tech v1.3.2 · menu estrutural reto + botões globais ===== */
/* O fundo estrutural dos menus nunca herda o arredondamento global. */
.app-menu,
.app-header-nav,
.mobile-nav,
.app-menu .right-nav-only,
.desktop-more-menu{
  border-radius:0!important;
}

/* Somente os links/itens clicáveis do menu obedecem à preferência Reto/Arredondado. */
html[data-ui-radius="square"] :is(
  .app-menu .nav-link,.app-menu .menu-link,.app-menu .top-nav-item,.app-menu .bottom-nav-item,
  .app-header-nav>.nav-link,.app-header-nav>.desktop-more-wrap>.nav-link,
  .mobile-nav .nav-link,.desktop-more-menu .nav-link
){border-radius:0!important}

html[data-ui-radius="rounded"] :is(
  .app-menu .nav-link,.app-menu .menu-link,.app-menu .top-nav-item,.app-menu .bottom-nav-item,
  .app-header-nav>.nav-link,.app-header-nav>.desktop-more-wrap>.nav-link,
  .mobile-nav .nav-link,.desktop-more-menu .nav-link
){border-radius:var(--bp-control-radius)!important}

/* Ações globais seguem o padrão visual do banner de título de Produtos. */
.btn{
  min-height:42px!important;
  padding:10px 16px!important;
  border:1px solid var(--border-strong)!important;
  background:transparent!important;
  color:var(--fg)!important;
  box-shadow:none!important;
  font-size:calc(var(--bp-type-button,13px) * var(--ui-scale,1))!important;
  font-weight:600!important;
  line-height:1.2!important;
}
.btn:hover{
  background:color-mix(in srgb,var(--primary) 5%,transparent)!important;
  border-color:color-mix(in srgb,var(--primary) 35%,var(--border-strong))!important;
  color:var(--fg)!important;
  filter:none!important;
  transform:none!important;
}
.btn.primary,.btn.green{
  background:var(--primary)!important;
  color:#fff!important;
  border-color:var(--primary)!important;
}
.btn.primary:hover,.btn.green:hover{
  background:color-mix(in srgb,var(--primary) 90%,#000)!important;
  border-color:color-mix(in srgb,var(--primary) 90%,#000)!important;
  color:#fff!important;
}
.btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger){
  background:transparent!important;
  color:var(--fg)!important;
  border-color:var(--border-strong)!important;
}
.btn.danger,.btn.ghost-danger{
  background:var(--danger,#c62828)!important;
  color:#fff!important;
  border-color:var(--danger,#c62828)!important;
}
.btn.danger:hover,.btn.ghost-danger:hover{
  background:color-mix(in srgb,var(--danger,#c62828) 90%,#000)!important;
  border-color:color-mix(in srgb,var(--danger,#c62828) 90%,#000)!important;
  color:#fff!important;
}
.icon-btn{
  background:transparent!important;
  border:1px solid var(--border-strong)!important;
  box-shadow:none!important;
}
/* END IDMIX Tech v1.3.2 */


/* ===== IDMIX Tech v1.3.3 · menu estrutural reto, ativo configurável, Poppins e ações secundárias ===== */
/* Poppins é a única tipografia visual do sistema. */
:root{
  --app-font:"Poppins",sans-serif!important;
  --heading-font:"Poppins",sans-serif!important;
}
html,body,body *,button,input,select,textarea{
  font-family:"Poppins",sans-serif!important;
}

/*
 * Navegação:
 * - header/fundos/contêineres do menu permanecem sempre retos;
 * - links normais permanecem sempre retos;
 * - somente o item ativo acompanha ui_radius.
 */
:is(.app-header,.app-menu,.app-header-nav,.mobile-nav,.app-menu .right-nav-only,.desktop-more-menu){
  border-radius:0!important;
}
:is(
  .app-menu .nav-link,.app-menu .menu-link,.app-menu .top-nav-item,.app-menu .bottom-nav-item,
  .app-header-nav>.nav-link,.app-header-nav>.desktop-more-wrap>.nav-link,
  .mobile-nav .nav-link,.desktop-more-menu .nav-link,.nav-icon
){
  border-radius:0!important;
}
html[data-ui-radius="square"] :is(
  .app-menu .nav-link.active,.app-menu .menu-link.active,.app-menu .top-nav-item.active,.app-menu .bottom-nav-item.active,
  .app-header-nav>.nav-link.active,.app-header-nav>.desktop-more-wrap>.nav-link.active,
  .mobile-nav .nav-link.active,.desktop-more-menu .nav-link.active
){
  border-radius:0!important;
}
html[data-ui-radius="rounded"] :is(
  .app-menu .nav-link.active,.app-menu .menu-link.active,.app-menu .top-nav-item.active,.app-menu .bottom-nav-item.active,
  .app-header-nav>.nav-link.active,.app-header-nav>.desktop-more-wrap>.nav-link.active,
  .mobile-nav .nav-link.active,.desktop-more-menu .nav-link.active
){
  border-radius:var(--bp-control-radius)!important;
}

/* Botões secundários/neutros usam o mesmo fundo, texto e borda do date-chip. */
html body :is(.btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger)){
  background:var(--surface)!important;
  color:var(--muted)!important;
  border-color:var(--border)!important;
}
html body .page-head :is(.btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger)){
  background:var(--surface)!important;
  color:var(--muted)!important;
  border-color:var(--border)!important;
}
html body :is(.btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger)):hover{
  background:var(--surface2)!important;
  color:var(--fg)!important;
  border-color:var(--border-strong)!important;
}
html body .icon-btn:not(.danger){
  background:var(--surface)!important;
  color:var(--muted)!important;
  border-color:var(--border)!important;
}
html body .icon-btn:not(.danger):hover{
  background:var(--surface2)!important;
  color:var(--fg)!important;
  border-color:var(--border-strong)!important;
}
/* END IDMIX Tech v1.3.3 */

/* ===== IDMIX Tech v1.3.4 · autoridade final: estrutura do menu reta + ações neutras translúcidas ===== */
/*
 * Regra definitiva de navegação:
 * - header e qualquer fundo/contêiner estrutural de menu ficam sempre retos;
 * - links normais ficam sempre retos;
 * - somente o link ativo acompanha a preferência global Reto/Arredondado.
 * Os seletores abaixo são deliberadamente mais específicos do que as regras históricas
 * de data-ui-radius/template para impedir que a configuração arredonde os contêineres.
 */
html[data-ui-radius] .shell .app-header,
html[data-ui-radius] .shell .app-menu,
html[data-ui-radius] .shell .app-header-nav,
html[data-ui-radius] .shell .mobile-nav,
html[data-ui-radius] .shell .app-menu .right-nav-only,
html[data-ui-radius] .shell .desktop-more-menu{
  border-radius:0!important;
}

html[data-ui-radius] .shell .app-menu .nav-link:not(.active),
html[data-ui-radius] .shell .app-header-nav>.nav-link:not(.active),
html[data-ui-radius] .shell .app-header-nav>.desktop-more-wrap>.nav-link:not(.active),
html[data-ui-radius] .shell .mobile-nav .nav-link:not(.active),
html[data-ui-radius] .shell .desktop-more-menu .nav-link:not(.active),
html[data-ui-radius] .shell .app-menu .nav-icon,
html[data-ui-radius] .shell .mobile-nav .nav-icon{
  border-radius:0!important;
}

html[data-ui-radius="square"] .shell :is(
  .app-menu .nav-link.active,
  .app-header-nav>.nav-link.active,
  .app-header-nav>.desktop-more-wrap>.nav-link.active,
  .mobile-nav .nav-link.active,
  .desktop-more-menu .nav-link.active
){
  border-radius:0!important;
}

html[data-ui-radius="rounded"] .shell :is(
  .app-menu .nav-link.active,
  .app-header-nav>.nav-link.active,
  .app-header-nav>.desktop-more-wrap>.nav-link.active,
  .mobile-nav .nav-link.active,
  .desktop-more-menu .nav-link.active
){
  border-radius:var(--bp-control-radius)!important;
}

/*
 * Ações secundárias/neutras: mesma linguagem do date-chip, mas sem branco sólido.
 * A transparência usa a cor do primeiro plano, mantendo contraste coerente em claro/escuro.
 */
:root{
  --bp-neutral-action-bg:color-mix(in srgb,var(--fg) 5%,transparent);
  --bp-neutral-action-bg-hover:color-mix(in srgb,var(--fg) 8%,transparent);
  --bp-neutral-action-fg:var(--muted);
  --bp-neutral-action-border:color-mix(in srgb,var(--fg) 12%,transparent);
}
html body .date-chip,
html body :is(.btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger)),
html body .icon-btn:not(.danger){
  background:var(--bp-neutral-action-bg)!important;
  color:var(--bp-neutral-action-fg)!important;
  border-color:var(--bp-neutral-action-border)!important;
}
html body :is(.btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger)):hover,
html body .icon-btn:not(.danger):hover{
  background:var(--bp-neutral-action-bg-hover)!important;
  color:var(--fg)!important;
  border-color:color-mix(in srgb,var(--primary) 28%,var(--bp-neutral-action-border))!important;
}
/* END IDMIX Tech v1.3.4 */

/* Controles secundários próprios das Configurações e filtros seguem a mesma transparência neutra. */
html[data-ui-radius][data-ui-template] body :is(
  .theme-btn,
  .filter-btn:not(.active),
  .public-tool-btn,
  .panel-close,
  .x
){
  background:var(--bp-neutral-action-bg)!important;
  color:var(--bp-neutral-action-fg)!important;
  border-color:var(--bp-neutral-action-border)!important;
  box-shadow:none!important;
}
html[data-ui-radius][data-ui-template] body .theme-btn.active{
  background:var(--bp-neutral-action-bg)!important;
  color:var(--fg)!important;
  border-color:var(--primary)!important;
  box-shadow:none!important;
}
html[data-ui-radius][data-ui-template] body :is(
  .theme-btn,
  .filter-btn:not(.active),
  .public-tool-btn,
  .panel-close,
  .x
):hover{
  background:var(--bp-neutral-action-bg-hover)!important;
  color:var(--fg)!important;
}

/* ===== IDMIX Tech v1.3.5 · hover do menu reto, controles unificados e ações secundárias ===== */
:root{
  --bp-control-height:44px;
  --bp-secondary-bg:color-mix(in srgb,var(--fg) 8%,transparent);
  --bp-secondary-border:color-mix(in srgb,var(--fg) 22%,transparent);
  --bp-secondary-fg:var(--fg);
  --bp-secondary-hover-bg:#fff;
  --bp-secondary-hover-fg:#172033;
  --bp-secondary-hover-border:#fff;
}

/* Poppins é a única família tipográfica visível, inclusive controles e SVG/textos auxiliares. */
html,body,body *,button,input,select,textarea,option,svg text{
  font-family:"Poppins",sans-serif!important;
}

/*
 * O hover jamais herda o raio global. A estrutura do menu e links não ativos
 * permanecem retos em qualquer posição; somente o link ativo usa ui_radius.
 */
html[data-ui-radius] .shell :is(
  .app-menu .nav-link:not(.active),
  .app-header-nav>.nav-link:not(.active),
  .app-header-nav>.desktop-more-wrap>.nav-link:not(.active),
  .mobile-nav .nav-link:not(.active),
  .desktop-more-menu .nav-link:not(.active),
  .right-nav-only .nav-link:not(.active)
),
html[data-ui-radius] .shell :is(
  .app-menu .nav-link:not(.active):hover,
  .app-header-nav>.nav-link:not(.active):hover,
  .app-header-nav>.desktop-more-wrap>.nav-link:not(.active):hover,
  .mobile-nav .nav-link:not(.active):hover,
  .desktop-more-menu .nav-link:not(.active):hover,
  .right-nav-only .nav-link:not(.active):hover
){
  border-radius:0!important;
}
html[data-ui-radius] .shell :is(.app-header,.app-menu,.app-header-nav,.mobile-nav,.desktop-more-menu,.right-nav-only){
  border-radius:0!important;
}

/* Altura única para ações e campos de uma linha. */
html body :is(
  .btn,.theme-btn,.filter-btn,.payment-option,.public-tool-btn,.top-btn,.top-user,
  .icon-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,.pdv-category,.pdv-cat,
  .kds-start,.kitchen-start,.kitchen-action,.kds-item-check,.kds-item-cancel
){
  min-height:var(--bp-control-height)!important;
  height:var(--bp-control-height)!important;
  padding-top:0!important;
  padding-bottom:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:none!important;
  font-size:13px!important;
  line-height:1!important;
}
html body :is(.btn.compact,.picker-add){min-height:var(--bp-control-height)!important;height:var(--bp-control-height)!important}
html body :is(.icon-btn,.top-btn,.panel-close,.x,.kds-item-check,.kds-item-cancel){min-width:var(--bp-control-height)!important;width:var(--bp-control-height)!important;padding-left:0!important;padding-right:0!important}
html body :is(.input,.select,input.input,select.input){
  min-height:var(--bp-control-height)!important;
  height:var(--bp-control-height)!important;
  padding-top:0!important;
  padding-bottom:0!important;
  display:block;
  font-size:13px!important;
  line-height:var(--bp-control-height)!important;
}
html body textarea.textarea{
  min-height:96px!important;
  height:auto!important;
  line-height:1.45!important;
}
html body select.select{line-height:normal!important}

/* Botões principais continuam vinculados à cor escolhida nas Configurações. */
html body :is(.btn.primary,.btn.green,.filter-btn.active,.pdv-category.active,.pdv-cat.active){
  background:var(--primary)!important;
  color:#fff!important;
  border:1px solid var(--primary)!important;
}
html body :is(.btn.primary,.btn.green,.filter-btn.active,.pdv-category.active,.pdv-cat.active):hover{
  background:color-mix(in srgb,var(--primary) 88%,#000)!important;
  color:#fff!important;
  border-color:color-mix(in srgb,var(--primary) 88%,#000)!important;
}

/* Ações secundárias: leve transparência; hover branco como a referência. */
html body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger),
  .icon-btn:not(.danger):not(.icon-danger),
  .theme-btn,
  .filter-btn:not(.active),
  .payment-option:not(.active),
  .public-tool-btn,
  .top-btn,.top-user,
  .panel-close,.x,.back,.link-button,.login-back,.picker-add,
  .pdv-category:not(.active),.pdv-cat:not(.active),
  .kds-start,.kitchen-start,.kitchen-action,.kds-item-check,.kds-item-cancel
){
  background:var(--bp-secondary-bg)!important;
  color:var(--bp-secondary-fg)!important;
  border:1px solid var(--bp-secondary-border)!important;
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
}
html body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger),
  .icon-btn:not(.danger):not(.icon-danger),
  .theme-btn,
  .filter-btn:not(.active),
  .payment-option:not(.active),
  .public-tool-btn,
  .top-btn,.top-user,
  .panel-close,.x,.back,.link-button,.login-back,.picker-add,
  .pdv-category:not(.active),.pdv-cat:not(.active),
  .kds-start,.kitchen-start,.kitchen-action,.kds-item-check,.kds-item-cancel
):hover{
  background:var(--bp-secondary-hover-bg)!important;
  color:var(--bp-secondary-hover-fg)!important;
  border-color:var(--bp-secondary-hover-border)!important;
  filter:none!important;
  transform:none!important;
}
html body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger){
  background:var(--danger,#c62828)!important;
  color:#fff!important;
  border-color:var(--danger,#c62828)!important;
}

/* O date-chip usa a mesma base visual das ações secundárias de referência. */
html body .date-chip{
  min-height:var(--bp-control-height)!important;
  height:var(--bp-control-height)!important;
  background:var(--bp-secondary-bg)!important;
  color:var(--bp-secondary-fg)!important;
  border-color:var(--bp-secondary-border)!important;
}

/* Controles de quantidade sem classe também entram no padrão secundário. */
html body :is(.qty,.pdv-qty,.cart-qty,.item-qty,.quantity-control) button{
  width:var(--bp-control-height)!important;
  min-width:var(--bp-control-height)!important;
  height:var(--bp-control-height)!important;
  min-height:var(--bp-control-height)!important;
  background:var(--bp-secondary-bg)!important;
  color:var(--bp-secondary-fg)!important;
  border:1px solid var(--bp-secondary-border)!important;
  box-shadow:none!important;
}
html body :is(.qty,.pdv-qty,.cart-qty,.item-qty,.quantity-control) button:hover{
  background:#fff!important;
  color:#172033!important;
  border-color:#fff!important;
}

/* Datas continuam nativas: digitação + seletor/calendário do navegador. */
html body :is(input.input[type="date"],input.input[type="time"],input.input[type="datetime-local"],input.input[type="month"]){
  cursor:pointer!important;
  color-scheme:light dark;
}
html.light body :is(input.input[type="date"],input.input[type="time"],input.input[type="datetime-local"],input.input[type="month"]){color-scheme:light}
html:not(.light) body :is(input.input[type="date"],input.input[type="time"],input.input[type="datetime-local"],input.input[type="month"]){color-scheme:dark}
html body :is(input[type="date"],input[type="time"],input[type="datetime-local"],input[type="month"])::-webkit-calendar-picker-indicator{
  cursor:pointer;
  opacity:.72;
}
/* END IDMIX Tech v1.3.5 */

/* v1.3.5 · reforço de especificidade para controles especiais do template. */
html[data-ui-radius][data-ui-template] body :is(
  .theme-btn,
  .filter-btn:not(.active),
  .payment-option:not(.active),
  .public-tool-btn,
  .panel-close,.x,
  .top-btn,.top-user
){
  background:var(--bp-secondary-bg)!important;
  color:var(--bp-secondary-fg)!important;
  border-color:var(--bp-secondary-border)!important;
}
html[data-ui-radius][data-ui-template] body :is(
  .theme-btn,
  .filter-btn:not(.active),
  .payment-option:not(.active),
  .public-tool-btn,
  .panel-close,.x,
  .top-btn,.top-user
):hover{
  background:#fff!important;
  color:#172033!important;
  border-color:#fff!important;
}
html[data-ui-radius][data-ui-template] body .kds-item-actions :is(.kds-item-check,.kds-item-cancel){
  background:var(--bp-secondary-bg)!important;
  border-color:var(--bp-secondary-border)!important;
}
html[data-ui-radius][data-ui-template] body .kds-item-actions :is(.kds-item-check,.kds-item-cancel):hover{
  background:#fff!important;
  border-color:#fff!important;
}


/* v1.3.5 · regra final: menu sempre reto fora do item ativo. */
html[data-ui-template="udesign"][data-ui-radius] body .shell :is(
  .app-header,.app-menu,.app-header-nav,.mobile-nav,.desktop-more-menu,.right-nav-only,.desktop-more-wrap
){border-radius:0!important}
html[data-ui-template="udesign"][data-ui-radius] body .shell :is(
  .app-menu .nav-link:not(.active),
  .app-header-nav>.nav-link:not(.active),
  .app-header-nav>.desktop-more-wrap>.nav-link:not(.active),
  .mobile-nav .nav-link:not(.active),
  .desktop-more-menu .nav-link:not(.active),
  .right-nav-only .nav-link:not(.active)
),
html[data-ui-template="udesign"][data-ui-radius] body .shell :is(
  .app-menu .nav-link:not(.active):hover,
  .app-menu .nav-link:not(.active):focus,
  .app-menu .nav-link:not(.active):focus-visible,
  .app-header-nav>.nav-link:not(.active):hover,
  .app-header-nav>.desktop-more-wrap>.nav-link:not(.active):hover,
  .mobile-nav .nav-link:not(.active):hover,
  .desktop-more-menu .nav-link:not(.active):hover,
  .right-nav-only .nav-link:not(.active):hover
){border-radius:0!important}
html[data-ui-template="udesign"][data-ui-radius="square"] body .shell :is(
  .app-menu .nav-link.active,.app-header-nav>.nav-link.active,
  .app-header-nav>.desktop-more-wrap>.nav-link.active,.mobile-nav .nav-link.active,
  .desktop-more-menu .nav-link.active,.right-nav-only .nav-link.active
){border-radius:0!important}
html[data-ui-template="udesign"][data-ui-radius="rounded"] body .shell :is(
  .app-menu .nav-link.active,.app-header-nav>.nav-link.active,
  .app-header-nav>.desktop-more-wrap>.nav-link.active,.mobile-nav .nav-link.active,
  .desktop-more-menu .nav-link.active,.right-nav-only .nav-link.active
){border-radius:var(--bp-control-radius,10px)!important}

/* Todos os controles de ação comuns usam a mesma altura dos inputs. */
html body :is(.urgent-action,.pdv-remove,.cash-head-button){
  min-height:var(--bp-control-height)!important;height:var(--bp-control-height)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  font-size:13px!important;line-height:1!important;box-shadow:none!important;
}
html body :is(.pdv-remove){min-width:var(--bp-control-height)!important;width:var(--bp-control-height)!important}
html body :is(.urgent-action,.cash-head-button,.pdv-remove){
  background:var(--bp-secondary-bg)!important;color:var(--bp-secondary-fg)!important;
  border:1px solid var(--bp-secondary-border)!important;
}
html body :is(.urgent-action,.cash-head-button,.pdv-remove):hover{
  background:#fff!important;color:#172033!important;border-color:#fff!important;filter:none!important;transform:none!important;
}

/* Fontes herdadas por conteúdo criado dinamicamente também permanecem Poppins. */
html body :is(button,input,select,textarea,option,optgroup,label,a,span,strong,b,small,p,h1,h2,h3,h4,h5,h6,table,th,td,code,pre){
  font-family:"Poppins",sans-serif!important;
}

/* v1.3.5 · altura final idêntica entre botões e campos de uma linha. */
html[data-ui-template="udesign"] body :is(.input,.select,input.input,select.input){
  min-height:var(--bp-control-height)!important;
  height:var(--bp-control-height)!important;
  box-sizing:border-box!important;
  padding-top:0!important;
  padding-bottom:0!important;
  line-height:normal!important;
}
html[data-ui-template="udesign"] body textarea.textarea{
  min-height:96px!important;height:auto!important;padding-top:10px!important;padding-bottom:10px!important;line-height:1.45!important;
}

/* ===== IDMIX Tech v1.3.6 · botões claros, navegação ativa e KDS neutro ===== */
:root{
  --bp-secondary-solid-bg:#fff;
  --bp-secondary-solid-fg:#172033;
  --bp-secondary-solid-border:#c7d0dc;
  --bp-secondary-solid-hover-bg:#f3f6f9;
  --bp-secondary-solid-hover-fg:#111827;
}

/* A estrutura do menu permanece reta. Apenas o link ativo pode usar o raio global. */
html[data-ui-radius] body .shell :is(.app-header,.app-menu,.app-header-nav,.mobile-nav,.desktop-more-menu,.right-nav-only,.desktop-more-wrap){
  border-radius:0!important;
}
html[data-ui-radius] body .shell :is(
  .app-menu .nav-link:not(.active),
  .app-header-nav>.nav-link:not(.active),
  .app-header-nav>.desktop-more-wrap>.nav-link:not(.active),
  .mobile-nav .nav-link:not(.active),
  .desktop-more-menu .nav-link:not(.active),
  .right-nav-only .nav-link:not(.active)
),
html[data-ui-radius] body .shell :is(
  .app-menu .nav-link:not(.active):hover,
  .app-menu .nav-link:not(.active):focus,
  .app-menu .nav-link:not(.active):focus-visible,
  .app-header-nav>.nav-link:not(.active):hover,
  .app-header-nav>.desktop-more-wrap>.nav-link:not(.active):hover,
  .mobile-nav .nav-link:not(.active):hover,
  .desktop-more-menu .nav-link:not(.active):hover,
  .right-nav-only .nav-link:not(.active):hover
){
  border-radius:0!important;
}

/* Link ativo: branco, texto preto e borda visível; somente o raio acompanha Configurações. */
html[data-ui-radius] body .shell :is(
  .app-menu .nav-link.active,
  .app-header-nav>.nav-link.active,
  .app-header-nav>.desktop-more-wrap>.nav-link.active,
  .mobile-nav .nav-link.active,
  .desktop-more-menu .nav-link.active,
  .right-nav-only .nav-link.active
){
  background:#fff!important;
  color:#172033!important;
  border:1px solid var(--bp-secondary-solid-border)!important;
  box-shadow:none!important;
}
html[data-ui-radius="square"] body .shell :is(
  .app-menu .nav-link.active,
  .app-header-nav>.nav-link.active,
  .app-header-nav>.desktop-more-wrap>.nav-link.active,
  .mobile-nav .nav-link.active,
  .desktop-more-menu .nav-link.active,
  .right-nav-only .nav-link.active
){border-radius:0!important}
html[data-ui-radius="rounded"] body .shell :is(
  .app-menu .nav-link.active,
  .app-header-nav>.nav-link.active,
  .app-header-nav>.desktop-more-wrap>.nav-link.active,
  .mobile-nav .nav-link.active,
  .desktop-more-menu .nav-link.active,
  .right-nav-only .nav-link.active
){border-radius:var(--bp-control-radius,10px)!important}

/* Base comum: todo botão possui linha visível, inclusive em telas de fundo branco. */
html body button,
html body :is(.btn,.icon-btn,.top-btn,.top-user,.theme-btn,.filter-btn,.payment-option,.public-tool-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.pdv-remove,.kds-start,.kitchen-start,.kitchen-action,.kds-item-check,.kds-item-cancel){
  border-style:solid!important;
  border-width:1px!important;
  box-shadow:none!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease!important;
}

/* Secundários: fundo branco e texto preto em todo o sistema. */
html body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger),
  .icon-btn:not(.danger):not(.icon-danger),
  .top-btn,.top-user,
  .theme-btn,
  .filter-btn:not(.active),
  .payment-option:not(.active),
  .public-tool-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,
  .pdv-category:not(.active),.pdv-cat:not(.active),
  .urgent-action,.cash-head-button,.pdv-remove,
  .kds-start,.kitchen-start,.kitchen-action,.kds-item-check,.kds-item-cancel
){
  background:var(--bp-secondary-solid-bg)!important;
  color:var(--bp-secondary-solid-fg)!important;
  border-color:var(--bp-secondary-solid-border)!important;
  filter:none!important;
  transform:none!important;
}
html body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger),
  .icon-btn:not(.danger):not(.icon-danger),
  .top-btn,.top-user,
  .theme-btn,
  .filter-btn:not(.active),
  .payment-option:not(.active),
  .public-tool-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,
  .pdv-category:not(.active),.pdv-cat:not(.active),
  .urgent-action,.cash-head-button,.pdv-remove,
  .kds-start,.kitchen-start,.kitchen-action,.kds-item-check,.kds-item-cancel
):hover{
  background:var(--bp-secondary-solid-hover-bg)!important;
  color:var(--bp-secondary-solid-hover-fg)!important;
  border-color:var(--primary)!important;
  filter:none!important;
  transform:none!important;
}

/* Ícones no topo à direita usam explicitamente o mesmo padrão secundário. */
html body .app-header-actions .top-btn,
html body .app-header-actions .top-user{
  background:#fff!important;
  color:#172033!important;
  border:1px solid var(--bp-secondary-solid-border)!important;
}
html body .app-header-actions .top-btn:hover,
html body .app-header-actions .top-user:hover{
  background:var(--bp-secondary-solid-hover-bg)!important;
  color:#111827!important;
  border-color:var(--primary)!important;
}

/* Principais seguem a cor configurada e também mantêm linha. */
html body :is(.btn.primary,.btn.green,.filter-btn.active,.pdv-category.active,.pdv-cat.active){
  background:var(--primary)!important;
  color:#fff!important;
  border:1px solid var(--primary)!important;
}
html body :is(.btn.primary,.btn.green,.filter-btn.active,.pdv-category.active,.pdv-cat.active):hover{
  background:color-mix(in srgb,var(--primary) 86%,#000)!important;
  color:#fff!important;
  border-color:color-mix(in srgb,var(--primary) 78%,#000)!important;
}
html body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger){
  background:var(--danger,#c62828)!important;
  color:#fff!important;
  border:1px solid var(--danger,#c62828)!important;
}
html body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger):hover{
  background:color-mix(in srgb,var(--danger,#c62828) 86%,#000)!important;
  border-color:color-mix(in srgb,var(--danger,#c62828) 78%,#000)!important;
  color:#fff!important;
}

/* Quantidade e outros botões internos não ficam sem contorno. */
html body :is(.qty,.pdv-qty,.cart-qty,.item-qty,.quantity-control) button{
  background:#fff!important;
  color:#172033!important;
  border:1px solid var(--bp-secondary-solid-border)!important;
}
html body :is(.qty,.pdv-qty,.cart-qty,.item-qty,.quantity-control) button:hover{
  background:var(--bp-secondary-solid-hover-bg)!important;
  color:#111827!important;
  border-color:var(--primary)!important;
}

/* As caixas informativas dos banners de título usam um único padrão, igual ao Financeiro. */
html body .page-head :is(.title-indicator,.date-chip,.data-badge,.cash-status,.autosave-status,.pill){
  min-height:var(--bp-control-height,44px)!important;
  height:var(--bp-control-height,44px)!important;
  padding:0 15px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  background:#fff!important;
  color:#172033!important;
  border:1px solid var(--bp-secondary-solid-border)!important;
  box-shadow:none!important;
  font-weight:600!important;
  line-height:1!important;
}
html body .page-head :is(.cash-status.open,.cash-status.closed,.autosave-status.saved,.autosave-status.saving,.autosave-status.pending,.autosave-status.error){
  background:#fff!important;
  color:#172033!important;
  border-color:var(--bp-secondary-solid-border)!important;
}

/* Cozinha: cabeçalho das colunas sem preenchimento colorido; mantém somente a linha superior de status. */
html body .kitchen :is(.kcol,.kds-column),
html body .kitchen-kds-page :is(.kcol,.kds-column){
  background:var(--surface)!important;
  border-color:var(--border)!important;
}
html body .kitchen :is(.khead,.status-pendente .khead,.status-preparando .khead,.status-pronto .khead),
html body .kitchen-kds-page :is(.khead,.status-pendente .khead,.status-preparando .khead,.status-pronto .khead){
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
html body .kitchen .kcol.status-pendente,
html body .kitchen-kds-page .kcol.status-pendente,
html body .kitchen-kds-page .kds-column.status-pendente{border-top:4px solid #f59e0b!important}
html body .kitchen .kcol.status-preparando,
html body .kitchen-kds-page .kcol.status-preparando,
html body .kitchen-kds-page .kds-column.status-preparando{border-top:4px solid #3b82f6!important}
html body .kitchen .kcol.status-pronto,
html body .kitchen-kds-page .kcol.status-pronto,
html body .kitchen-kds-page .kds-column.status-pronto{border-top:4px solid #22c55e!important}
html body .kitchen .kcount,
html body .kitchen-kds-page .kcount{
  background:var(--surface2)!important;
  color:var(--fg)!important;
  border:1px solid var(--border)!important;
}
/* END IDMIX Tech v1.3.6 */

/* v1.3.6 · reforço final de especificidade contra regras históricas do template. */
html[data-ui-template][data-ui-radius] body .shell :is(
  .app-menu .nav-link.active,
  .app-header-nav>.nav-link.active,
  .app-header-nav>.desktop-more-wrap>.nav-link.active,
  .mobile-nav .nav-link.active,
  .desktop-more-menu .nav-link.active,
  .right-nav-only .nav-link.active
){background:#fff!important;color:#172033!important;border:1px solid var(--bp-secondary-solid-border)!important;box-shadow:none!important}
html[data-ui-template][data-ui-radius="square"] body .shell :is(
  .app-menu .nav-link.active,.app-header-nav>.nav-link.active,.app-header-nav>.desktop-more-wrap>.nav-link.active,
  .mobile-nav .nav-link.active,.desktop-more-menu .nav-link.active,.right-nav-only .nav-link.active
){border-radius:0!important}
html[data-ui-template][data-ui-radius="rounded"] body .shell :is(
  .app-menu .nav-link.active,.app-header-nav>.nav-link.active,.app-header-nav>.desktop-more-wrap>.nav-link.active,
  .mobile-nav .nav-link.active,.desktop-more-menu .nav-link.active,.right-nav-only .nav-link.active
){border-radius:var(--bp-control-radius,10px)!important}

html[data-ui-template][data-ui-radius] body .app-header-actions :is(.top-btn,.top-user){
  background:#fff!important;color:#172033!important;border:1px solid var(--bp-secondary-solid-border)!important;box-shadow:none!important
}
html[data-ui-template][data-ui-radius] body .app-header-actions :is(.top-btn,.top-user):hover{
  background:var(--bp-secondary-solid-hover-bg)!important;color:#111827!important;border-color:var(--primary)!important
}

html[data-ui-template][data-ui-radius] body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger),
  .icon-btn:not(.danger):not(.icon-danger),.theme-btn,.filter-btn:not(.active),.payment-option:not(.active),
  .public-tool-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,.pdv-category:not(.active),.pdv-cat:not(.active),
  .urgent-action,.cash-head-button,.pdv-remove,.kds-start,.kitchen-start,.kitchen-action,.kds-item-check,.kds-item-cancel
){background:#fff!important;color:#172033!important;border:1px solid var(--bp-secondary-solid-border)!important;box-shadow:none!important;filter:none!important;transform:none!important}
html[data-ui-template][data-ui-radius] body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger),
  .icon-btn:not(.danger):not(.icon-danger),.theme-btn,.filter-btn:not(.active),.payment-option:not(.active),
  .public-tool-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,.pdv-category:not(.active),.pdv-cat:not(.active),
  .urgent-action,.cash-head-button,.pdv-remove,.kds-start,.kitchen-start,.kitchen-action,.kds-item-check,.kds-item-cancel
):hover{background:var(--bp-secondary-solid-hover-bg)!important;color:#111827!important;border-color:var(--primary)!important;box-shadow:none!important;filter:none!important;transform:none!important}

html[data-ui-template][data-ui-radius] body :is(.btn.primary,.btn.green,.filter-btn.active,.pdv-category.active,.pdv-cat.active){
  background:var(--primary)!important;color:#fff!important;border:1px solid var(--primary)!important
}
html[data-ui-template][data-ui-radius] body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger){
  background:var(--danger,#c62828)!important;color:#fff!important;border:1px solid var(--danger,#c62828)!important
}

html[data-ui-template][data-ui-radius] body .page-head :is(.title-indicator,.date-chip,.data-badge,.cash-status,.autosave-status,.pill){
  min-height:var(--bp-control-height,44px)!important;height:var(--bp-control-height,44px)!important;padding:0 15px!important;
  background:#fff!important;color:#172033!important;border:1px solid var(--bp-secondary-solid-border)!important;box-shadow:none!important
}
html[data-ui-template][data-ui-radius] body .page-head :is(.cash-status.open,.cash-status.closed,.autosave-status.saved,.autosave-status.saving,.autosave-status.pending,.autosave-status.error){
  background:#fff!important;color:#172033!important;border-color:var(--bp-secondary-solid-border)!important
}

html[data-ui-template][data-ui-radius] body .kitchen .kcol.status-pendente .khead,
html[data-ui-template][data-ui-radius] body .kitchen-kds-page .kcol.status-pendente .khead,
html[data-ui-template][data-ui-radius] body .kitchen .kcol.status-preparando .khead,
html[data-ui-template][data-ui-radius] body .kitchen-kds-page .kcol.status-preparando .khead,
html[data-ui-template][data-ui-radius] body .kitchen .kcol.status-pronto .khead,
html[data-ui-template][data-ui-radius] body .kitchen-kds-page .kcol.status-pronto .khead{
  background:transparent!important;background-image:none!important;box-shadow:none!important
}
html[data-ui-template][data-ui-radius] body .kitchen :is(.kcol.status-pendente,.kds-column.status-pendente),
html[data-ui-template][data-ui-radius] body .kitchen-kds-page :is(.kcol.status-pendente,.kds-column.status-pendente){border-top:4px solid #f59e0b!important}
html[data-ui-template][data-ui-radius] body .kitchen :is(.kcol.status-preparando,.kds-column.status-preparando),
html[data-ui-template][data-ui-radius] body .kitchen-kds-page :is(.kcol.status-preparando,.kds-column.status-preparando){border-top:4px solid #3b82f6!important}
html[data-ui-template][data-ui-radius] body .kitchen :is(.kcol.status-pronto,.kds-column.status-pronto),
html[data-ui-template][data-ui-radius] body .kitchen-kds-page :is(.kcol.status-pronto,.kds-column.status-pronto){border-top:4px solid #22c55e!important}

/* ===== IDMIX Tech v1.3.7 · controles, estoque e Configurações ===== */
:root{
  --bp-control-height:44px;
  --bp-control-border:#c7d0dc;
  --bp-secondary-solid-bg:#fff;
  --bp-secondary-solid-fg:#172033;
  --bp-secondary-solid-hover-bg:#f2f6fa;
}

/* Poppins permanece como única tipografia visual e os rótulos deixam de ser forçados para caixa alta. */
html body,html body *{font-family:"Poppins",sans-serif!important}
html body :is(.label,.stat-label,.table th,.pill,.status-pill,.brand-sub,.uppercase,.stock-low){
  text-transform:none!important;
  letter-spacing:normal!important;
}

/* Altura padrão para controles de formulário e botões comuns. */
html body :is(.input,.select,input.input,select.select){
  height:var(--bp-control-height)!important;
  min-height:var(--bp-control-height)!important;
}
html body :is(
  .btn,.theme-btn,.filter-btn,.top-btn,.top-user,.icon-btn,.x,.panel-close,
  .public-tool-btn,.picker-add,.pdv-category,.pdv-cat,.pdv-remove,
  .kds-start,.kitchen-start,.kitchen-action,.kds-item-check,.kds-item-cancel,
  .inline-stepper button,.qty button
){
  min-height:var(--bp-control-height)!important;
  height:var(--bp-control-height)!important;
  box-sizing:border-box!important;
  border-width:1px!important;
  border-style:solid!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
html body :is(.top-btn,.icon-btn,.x,.panel-close,.pdv-remove,.kds-item-check,.kds-item-cancel,.inline-stepper button,.qty button){
  width:var(--bp-control-height)!important;
  min-width:var(--bp-control-height)!important;
  padding:0!important;
}
html body .btn.compact{min-height:var(--bp-control-height)!important;height:var(--bp-control-height)!important;padding:0 12px!important;font-size:11px!important}

/* Secundários: fundo branco, texto preto, linha sempre visível e mouseover claro. */
html[data-ui-template][data-ui-radius] body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger),
  .icon-btn:not(.danger):not(.icon-danger),.top-btn,.top-user,
  .theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),
  .public-tool-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,
  .pdv-category:not(.active),.pdv-cat:not(.active),.urgent-action,.cash-head-button,.pdv-remove,
  .kds-start,.kitchen-start,.kitchen-action:not(.green),.kds-item-check,.kds-item-cancel
){
  background:var(--bp-secondary-solid-bg)!important;
  color:var(--bp-secondary-solid-fg)!important;
  border-color:var(--bp-control-border)!important;
  box-shadow:none!important;
  filter:none!important;
}
html[data-ui-template][data-ui-radius] body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger),
  .icon-btn:not(.danger):not(.icon-danger),.top-btn,.top-user,
  .theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),
  .public-tool-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,
  .pdv-category:not(.active),.pdv-cat:not(.active),.urgent-action,.cash-head-button,.pdv-remove,
  .kds-start,.kitchen-start,.kitchen-action:not(.green),.kds-item-check,.kds-item-cancel
):hover{
  background:var(--bp-secondary-solid-hover-bg)!important;
  color:#111827!important;
  border-color:var(--primary)!important;
  transform:none!important;
}

/* Principais, destrutivos e estados ativos permanecem claramente identificados. */
html[data-ui-template][data-ui-radius] body :is(
  .btn.primary,.btn.green,.btn.active,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active
){
  background:var(--primary)!important;
  color:#fff!important;
  border-color:var(--primary)!important;
}
html[data-ui-template][data-ui-radius] body :is(
  .btn.primary,.btn.green,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active
):hover{
  background:color-mix(in srgb,var(--primary) 86%,#000)!important;
  color:#fff!important;
  border-color:color-mix(in srgb,var(--primary) 78%,#000)!important;
  transform:none!important;
}
html[data-ui-template][data-ui-radius] body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger){
  background:var(--danger,#c62828)!important;
  color:#fff!important;
  border-color:var(--danger,#c62828)!important;
}
html[data-ui-template][data-ui-radius] body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger):hover{
  background:color-mix(in srgb,var(--danger,#c62828) 86%,#000)!important;
  border-color:color-mix(in srgb,var(--danger,#c62828) 78%,#000)!important;
  transform:none!important;
}

/* Quantidade: mesma altura dos demais controles e sem ultrapassar cards. */
html body .qty{height:var(--bp-control-height)!important;min-width:0!important;gap:0!important}
html body .qty>b{height:var(--bp-control-height)!important;min-width:42px!important;padding:0 8px!important;display:grid!important;place-items:center!important;border-top:1px solid var(--bp-control-border)!important;border-bottom:1px solid var(--bp-control-border)!important;background:#fff!important;color:#172033!important}
html body .qty button{background:#fff!important;color:#172033!important;border-color:var(--bp-control-border)!important;border-radius:0!important}
html body .qty button:hover{background:var(--bp-secondary-solid-hover-bg)!important;border-color:var(--primary)!important;transform:none!important}

/* Estoque: ações permanecem dentro do card. Em cards estreitos as ações ficam somente por ícone. */
html body .product-card{min-width:0!important;overflow:hidden!important}
html body .product-card{container-type:inline-size!important}
html body .product-card .product-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  align-items:center!important;
  width:100%!important;
  min-width:0!important;
}
html body .product-card .product-actions>.qty{width:100%!important;display:grid!important;grid-template-columns:44px minmax(36px,1fr) 44px!important}
html body .product-card .product-actions>.actions{
  display:grid!important;
  grid-template-columns:repeat(3,44px)!important;
  gap:4px!important;
  justify-content:end!important;
  min-width:0!important;
  width:100%!important;
}
html body .product-card .product-actions>.actions .btn{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  padding:0!important;
}
html body .product-card .product-actions>.actions .btn>span{display:none!important}
html body .product-card .product-actions>.actions .btn .ui-icon{width:19px!important;height:19px!important;margin:0!important}


@container (max-width:290px){
  html body .product-card .product-actions{grid-template-columns:1fr!important}
  html body .product-card .product-actions>.actions{justify-content:stretch!important;grid-template-columns:repeat(3,minmax(44px,1fr))!important}
}

/* Opções de aparência: 3 seletores lado a lado e cores com tamanhos idênticos. */
html body .settings-preferences-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-items:end!important}
html body .theme-color-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:8px!important;
}
html body .theme-color-grid .theme-btn{
  width:100%!important;
  min-width:0!important;
  height:var(--bp-control-height)!important;
  min-height:var(--bp-control-height)!important;
  padding:0 12px!important;
  justify-content:flex-start!important;
}
html body .theme-color-grid .swatch{width:14px!important;height:14px!important;flex:0 0 14px!important}

/* Perfil e gestão: três cartões por linha, mantendo módulos/permissões em largura total. */
html body .settings-page .settings-group:has(.settings-admin-card[data-settings-group="seguranca"]) .settings-group-grid,
html body .settings-page .settings-group:has(.settings-admin-card[data-settings-group="gestao"]) .settings-group-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
}
html body .settings-page .settings-group:has(.settings-admin-card[data-settings-group="seguranca"]) .modules-card{
  grid-column:1/-1!important;
}
html body .settings-page .settings-admin-card{min-width:0!important;height:100%!important}

/* Liga/desliga: substitui o desenho de slider dos perfis por um botão com ícone de energia. */
html body .module-switch i,
html body .product-active-switch i{
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  border:1px solid var(--bp-control-border)!important;
  background:#fff!important;
  color:#697586!important;
  display:grid!important;
  place-items:center!important;
  position:relative!important;
  border-radius:var(--bp-control-radius,10px)!important;
  transition:.16s ease!important;
  flex:0 0 44px!important;
}
html body .module-switch i:after,
html body .product-active-switch i:after{content:none!important}
html body .module-switch i .ui-icon,
html body .product-active-switch i .ui-icon{width:20px!important;height:20px!important;color:currentColor!important}
html body .module-switch input:checked+i,
html body .product-active-switch input:checked+i{
  background:var(--primary)!important;
  border-color:var(--primary)!important;
  color:#fff!important;
}
html body .module-switch:hover i,
html body .product-active-switch:hover i{border-color:var(--primary)!important;transform:none!important}
html body .module-switch input:checked+i:after,
html body .product-active-switch input:checked+i:after{transform:none!important;left:auto!important}

/* Indicador de salvamento automático com ícone visível. */
html body .autosave-status{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important}
html body .autosave-status .ui-icon{width:17px!important;height:17px!important;flex:0 0 17px!important}
html body .autosave-status.saved .ui-icon{color:#0f766e!important}

@media(max-width:1180px){
  html body .theme-color-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  html body .settings-page .settings-group:has(.settings-admin-card[data-settings-group="seguranca"]) .settings-group-grid,
  html body .settings-page .settings-group:has(.settings-admin-card[data-settings-group="gestao"]) .settings-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:820px){
  html body .settings-preferences-row{grid-template-columns:1fr!important}
  html body .theme-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body .settings-page .settings-group:has(.settings-admin-card[data-settings-group="seguranca"]) .settings-group-grid,
  html body .settings-page .settings-group:has(.settings-admin-card[data-settings-group="gestao"]) .settings-group-grid{grid-template-columns:1fr!important}
  html body .product-card .product-actions{grid-template-columns:1fr!important}
}
/* END IDMIX Tech v1.3.7 */

/* Liga/desliga operacional: botão de energia em vez de slider. */
html body .toggle-control:not(.product-active-switch){width:44px!important;height:44px!important;flex:0 0 44px!important}
html body .toggle-control:not(.product-active-switch)>span{
  position:static!important;inset:auto!important;width:44px!important;height:44px!important;
  display:grid!important;place-items:center!important;background:#fff!important;color:#697586!important;
  border:1px solid var(--bp-control-border)!important;border-radius:var(--bp-control-radius,10px)!important;
  transition:.16s ease!important
}
html body .toggle-control:not(.product-active-switch)>span:after{content:none!important}
html body .toggle-control:not(.product-active-switch)>span .ui-icon{width:20px!important;height:20px!important;color:currentColor!important}
html body .toggle-control:not(.product-active-switch)>input:checked+span{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
html body .toggle-control:not(.product-active-switch)>input:checked+span:after{transform:none!important}
html body .toggle-control:not(.product-active-switch):hover>span{border-color:var(--primary)!important;transform:none!important}

/* Liga/desliga legado ainda usado nos acessos operacionais: mesmo botão de energia. */
html body .switch{position:relative!important;width:44px!important;height:44px!important;flex:0 0 44px!important;display:inline-block!important}
html body .switch input{position:absolute!important;opacity:0!important;pointer-events:none!important}
html body .switch span{position:static!important;inset:auto!important;width:44px!important;height:44px!important;display:grid!important;place-items:center!important;background:#fff!important;color:#697586!important;border:1px solid var(--bp-control-border)!important;border-radius:var(--bp-control-radius,10px)!important;cursor:pointer!important;transition:.16s ease!important}
html body .switch span:after{content:none!important}
html body .switch span .ui-icon{width:20px!important;height:20px!important;color:currentColor!important}
html body .switch input:checked+span{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
html body .switch:hover span{border-color:var(--primary)!important;transform:none!important}
html[data-ui-radius="square"] body .switch span{border-radius:0!important}
html[data-ui-radius="rounded"] body .switch span{border-radius:var(--bp-control-radius,10px)!important}

/* ===== IDMIX Tech v1.3.8 · regras globais de interface ===== */
/* Login e recuperação: ações de navegação são links reais, sem aparência de botão. */
html body .auth-text-link{
  display:inline-flex!important;align-items:center!important;gap:6px!important;
  min-height:0!important;height:auto!important;padding:3px 0!important;margin:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
  color:var(--primary)!important;text-decoration:none!important;font-weight:500!important;font-size:12px!important;
  cursor:pointer!important
}
html body .auth-text-link:hover{text-decoration:underline!important;background:transparent!important;color:color-mix(in srgb,var(--primary) 82%,#000)!important}
html body .auth-text-link .ui-icon{width:15px!important;height:15px!important}
html body .login-back-link{margin-bottom:15px!important}

/* Capitalização natural: siglas permanecem como escritas no conteúdo; somente nomes de produto são forçados para caixa alta. */
html body :is(.label,.stat-label,.table th,.pill,.status-pill,.brand-sub,.stock-low){text-transform:none!important}
html body .product-name-uppercase,
html body :is(
  .product-title h3,.product-name-input,.product-pick-info b,.pdv-product-body>b,.pdv-line-top>b,
  .kds-item-copy>b,.k-product-line h4,.delivery-product-cell>div>b,.delivery-public-products .menu-card>div>b,
  .order-product-name,.management-product-checks b,.library-product-item>div>b
){text-transform:uppercase!important}

/* Botões globais: primário na cor configurada; secundário branco; destrutivo vermelho; todos com linha visível e feedback no hover. */
html body :is(.btn,.theme-btn,.filter-btn,.payment-option,.top-btn,.top-user,.icon-btn,.public-tool-btn,.panel-close,.x,.picker-add,.pdv-category,.pdv-cat){
  border-width:1px!important;border-style:solid!important;box-shadow:none!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important
}
html[data-ui-template][data-ui-radius] body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.danger):not(.green):not(.ghost-danger),
  .theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),
  .top-btn,.top-user,.icon-btn:not(.danger):not(.icon-danger),.public-tool-btn,.panel-close,.x,.picker-add,
  .pdv-category:not(.active),.pdv-cat:not(.active)
){background:#fff!important;color:#172033!important;border-color:var(--bp-control-border,#c7d0dc)!important}
html[data-ui-template][data-ui-radius] body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.danger):not(.green):not(.ghost-danger),
  .theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),
  .top-btn,.top-user,.icon-btn:not(.danger):not(.icon-danger),.public-tool-btn,.panel-close,.x,.picker-add,
  .pdv-category:not(.active),.pdv-cat:not(.active)
):hover{background:#f3f6f9!important;color:#111827!important;border-color:var(--primary)!important;transform:none!important}
html[data-ui-template][data-ui-radius] body :is(.btn.primary,.btn.green,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active){background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
html[data-ui-template][data-ui-radius] body :is(.btn.primary,.btn.green,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active):hover{background:color-mix(in srgb,var(--primary) 86%,#000)!important;color:#fff!important;border-color:color-mix(in srgb,var(--primary) 78%,#000)!important;transform:none!important}
html[data-ui-template][data-ui-radius] body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger){background:var(--danger,#c62828)!important;color:#fff!important;border-color:var(--danger,#c62828)!important}

/* Alertas e avisos: fundo branco, lateral esquerda na cor configurada e texto sem negrito. */
html body :is(.toast,.alert,.warning-card,.error-card,.info-note,.maintenance-warning){
  background:#fff!important;color:#172033!important;
  border:1px solid var(--bp-control-border,#c7d0dc)!important;border-left:4px solid var(--primary)!important;
  box-shadow:none!important;backdrop-filter:none!important;font-weight:400!important
}
html body :is(.toast,.alert,.warning-card,.error-card,.info-note,.maintenance-warning) :is(b,strong,h1,h2,h3,h4,h5,h6,span,p){font-weight:400!important;color:inherit!important}
html body .toast-icon{background:transparent!important;color:var(--primary)!important;border:0!important;font-weight:500!important}

/* Todos os modais comuns são centralizados no viewport. Modais explicitamente full-screen continuam full-screen. */
html body #modal-root .modal-wrap{
  position:fixed!important;inset:0!important;display:grid!important;place-items:center!important;
  align-items:center!important;justify-content:center!important;padding:18px!important;overflow:auto!important
}
html body #modal-root .modal:not(.modal-fullscreen){margin:auto!important;max-height:calc(100dvh - 36px)!important}
html body #modal-root .modal-wrap:has(.modal-fullscreen){padding:0!important;place-items:stretch!important;overflow:hidden!important}
@media(max-width:700px){
  html body #modal-root .modal-wrap{inset:0!important;padding:10px!important;place-items:center!important}
  html body #modal-root .modal:not(.modal-fullscreen){width:min(100%,620px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;border-bottom-width:1px!important}
}
/* END IDMIX Tech v1.3.8 */


/* Ações destrutivas por ícone continuam visualmente destrutivas. */
html[data-ui-template][data-ui-radius] body :is(.kds-item-cancel,.kitchen-trash){
  background:var(--danger,#c62828)!important;
  color:#fff!important;
  border:1px solid var(--danger,#c62828)!important;
}
html[data-ui-template][data-ui-radius] body :is(.kds-item-cancel,.kitchen-trash):hover{
  background:color-mix(in srgb,var(--danger,#c62828) 86%,#000)!important;
  color:#fff!important;
  border-color:color-mix(in srgb,var(--danger,#c62828) 78%,#000)!important;
  transform:none!important;
}

/* ===== IDMIX Tech v1.3.9 · autonomia, alinhamento e superfícies consistentes ===== */
/* Configurações: tudo o que couber fica em linha e quebra responsivamente sem estourar o conteúdo. */
html body .settings-page .settings-group-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;
  gap:12px!important;align-items:stretch!important
}
html body .settings-page .settings-group-grid>:is(.modules-card,.qr-card,[data-module-config="delivery"],[data-module-config="fiscal"],[data-module-config="pagamentos"],.maintenance-native){grid-column:1/-1!important}
html body .settings-page .settings-admin-card{min-width:0!important;height:100%!important}
html body .settings-page :is(.settings-subsection,.permission-role-card,.module-switch,.settings-admin-card,.module-config-card,.operational-access-item,.system-version-box,.role-lock-note){background:var(--surface)!important}
html body .settings-page .settings-subsection{box-shadow:none!important}
html body .settings-page .settings-card-actions{margin-top:auto!important}
html body .settings-page .settings-admin-card{display:flex!important;flex-direction:column!important}

/* CEP automático encaixado no mesmo sistema de inputs. */
html body .bp-cep-helper{display:grid!important;gap:5px!important;margin:0 0 10px!important;min-width:0!important}
html body .bp-cep-helper .input{width:100%!important}
html body .bp-cep-helper .input.is-loading{opacity:.65!important;cursor:progress!important}
html body .input.input-invalid{border-color:var(--danger,#c62828)!important;box-shadow:none!important}

/* Liga/desliga: ícones visualmente diferentes, ligado colorido e desligado branco. */
html body :is(.module-switch,.toggle-control,.switch,.product-active-switch) [data-toggle-state="off"]{background:#fff!important;color:#697586!important;border-color:var(--bp-control-border,#c7d0dc)!important}
html body :is(.module-switch,.toggle-control,.switch,.product-active-switch) [data-toggle-state="on"]{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
html body :is(.module-switch i,.toggle-control>span,.switch>span,.product-active-switch i) .ui-icon{stroke:currentColor!important;fill:none!important}

/* Inteligência operacional. */
html body .smart-summary{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
html body .smart-summary>div{background:var(--surface)!important;border:1px solid var(--border)!important;padding:12px!important;display:grid!important;gap:3px!important}
html body .smart-summary span{font-size:11px!important;color:var(--muted)!important}html body .smart-summary b{font-size:20px!important;font-weight:600!important}
html body .smart-issue-list{display:grid!important;gap:9px!important}
html body .smart-issue{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important;background:var(--surface)!important;border:1px solid var(--border)!important;border-left:4px solid var(--primary)!important;padding:12px!important}
html body .smart-issue.critical{border-left-color:var(--danger,#c62828)!important}.smart-issue.warning{border-left-color:#d97706!important}
html body .smart-issue>div:first-child{display:grid!important;gap:4px!important}.smart-issue p{margin:0!important;color:var(--muted)!important;font-size:11px!important;font-weight:400!important}.smart-issue b{font-weight:600!important}
html body .smart-issue-action{display:flex!important;align-items:center!important;gap:9px!important}.smart-issue-action>strong{font-size:18px!important;font-weight:600!important}
html body .smart-priority{display:block!important;margin-top:3px!important;font-size:10px!important;font-weight:500!important;color:var(--muted)!important}.smart-priority.critical{color:var(--danger,#c62828)!important}.smart-priority.high{color:#b45309!important}
html body .smart-replenishment-table{max-height:min(58vh,560px)!important;overflow:auto!important}

/* Fechamento de turno assistido. */
html body .assisted-check-list{display:grid!important;gap:8px!important}
html body .assisted-check{display:grid!important;grid-template-columns:36px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;background:var(--surface)!important;border:1px solid var(--border)!important;padding:10px 12px!important}
html body .assisted-check>span{width:36px!important;height:36px!important;display:grid!important;place-items:center!important;border:1px solid var(--border)!important;background:#fff!important;color:var(--primary)!important}.assisted-check.warning>span,.assisted-check.block>span{color:#b45309!important}.assisted-check.block>span{color:var(--danger,#c62828)!important}
html body .assisted-check>div{display:grid!important;gap:2px!important}.assisted-check b{font-weight:600!important}.assisted-check small{color:var(--muted)!important;font-weight:400!important}.assisted-check>strong{font-size:17px!important;font-weight:600!important}
html body .assisted-confirm{display:flex!important;align-items:flex-start!important;gap:9px!important;padding:11px!important;border:1px solid var(--border)!important;background:var(--surface)!important;font-size:11px!important;cursor:pointer!important}.assisted-confirm input{margin-top:2px!important}
html body .modal-actions{display:flex!important;justify-content:flex-end!important;flex-wrap:wrap!important;gap:8px!important;margin-top:14px!important}
html body .modal-actions .btn{min-width:120px!important}

@media(max-width:820px){
  html body .settings-page .settings-group-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important}
  html body .smart-summary{grid-template-columns:1fr!important}
  html body .smart-issue{grid-template-columns:1fr!important}
  html body .smart-issue-action{justify-content:space-between!important}
}
@media(max-width:560px){
  html body .settings-page .settings-group-grid{grid-template-columns:1fr!important}
  html body .assisted-check{grid-template-columns:32px minmax(0,1fr) auto!important}
  html body .modal-actions{display:grid!important;grid-template-columns:1fr!important}.modal-actions .btn{width:100%!important}
}
/* END IDMIX Tech v1.3.9 */

/* ===== IDMIX Tech v1.3.10 · padrão global de botões, ícones e dashboard ===== */
:root{
  --bp-icon-size:18px;
  --bp-action-icon-size:20px;
  --bp-button-border:#c7d0dc;
  --bp-secondary-hover:#f2f5f8;
}

/* Ícones do header: usuário e alertas usam exatamente a mesma caixa e escala. */
html body .app-header-actions :is(.top-btn,.top-user){
  width:42px!important;min-width:42px!important;max-width:42px!important;
  height:42px!important;min-height:42px!important;padding:0!important;
  display:inline-grid!important;place-items:center!important;
  border:1px solid var(--bp-button-border)!important;background:#fff!important;color:#172033!important;
  box-shadow:none!important
}
html body .app-header-actions :is(.top-btn,.top-user)>.ui-icon,
html body .app-header-actions .top-user .ui-icon{
  width:var(--bp-action-icon-size)!important;height:var(--bp-action-icon-size)!important;min-width:var(--bp-action-icon-size)!important;
  stroke-width:1.9!important;margin:0!important
}
html body .app-header-actions :is(.top-btn,.top-user):hover{
  background:var(--bp-secondary-hover)!important;color:#172033!important;border-color:var(--bp-button-border)!important;transform:none!important
}

/* Todos os botões têm borda neutra constante. Nenhum hover fica transparente ou ganha borda da cor configurada. */
html body :is(.btn,.theme-btn,.filter-btn,.payment-option,.top-btn,.top-user,.icon-btn,.public-tool-btn,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.pdv-remove,.kds-start,.kitchen-start,.kitchen-action,.kds-item-check,.kds-item-cancel){
  border:1px solid var(--bp-button-border)!important;
  box-shadow:none!important;
  align-items:center!important;justify-content:center!important;text-align:center!important
}
html body :is(.btn,.theme-btn,.filter-btn,.payment-option,.public-tool-btn,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.pdv-remove,.kds-start,.kitchen-start,.kitchen-action):not(.primary):not(.danger):not(.ghost-danger):not(.green):not(.active):hover,
html body :is(.btn.outline,.btn.secondary):hover,
html body :is(.theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),.icon-btn:not(.danger):not(.icon-danger),.kds-item-check):hover{
  background:var(--bp-secondary-hover)!important;color:#111827!important;border-color:var(--bp-button-border)!important;filter:none!important;transform:none!important
}
html body :is(.btn.primary,.btn.green,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.kds-start,.kitchen-start){
  background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important
}
html body :is(.btn.primary,.btn.green,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.kds-start,.kitchen-start):hover{
  background:color-mix(in srgb,var(--primary) 88%,#000)!important;color:#fff!important;border-color:var(--primary)!important;filter:none!important;transform:none!important
}
html body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger,.kds-item-cancel,.kitchen-trash){
  border-color:var(--danger,#dc2626)!important
}
html body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger,.kds-item-cancel,.kitchen-trash):hover{
  border-color:var(--danger,#dc2626)!important;filter:none!important
}

/* Fechar modal é um controle limpo: sem borda, sem fundo e sem troca de cor no hover. */
html body #modal-root .modal-head .x,
html body #modal-root .modal .x{
  border:0!important;background:transparent!important;color:var(--muted)!important;box-shadow:none!important;transform:none!important
}
html body #modal-root .modal-head .x:hover,
html body #modal-root .modal .x:hover{
  border:0!important;background:transparent!important;color:var(--muted)!important;box-shadow:none!important;transform:none!important;filter:none!important
}

/* Escala consistente de ícones de ação. */
html body .btn>.ui-icon,
html body .theme-btn>.ui-icon,
html body .filter-btn>.ui-icon,
html body .payment-option>.ui-icon{width:var(--bp-icon-size)!important;height:var(--bp-icon-size)!important;flex:0 0 var(--bp-icon-size)!important}
html body :is(.icon-btn,.kds-item-check,.kds-item-cancel,.kitchen-valid,.kitchen-trash)>.ui-icon{width:var(--bp-action-icon-size)!important;height:var(--bp-action-icon-size)!important;flex:0 0 var(--bp-action-icon-size)!important}
html body #system-notification-btn>.ui-icon{width:var(--bp-action-icon-size)!important;height:var(--bp-action-icon-size)!important}

/* Conteúdo interno de todos os botões fica centralizado, inclusive quando há ícone + texto. */
html body :is(.btn,.theme-btn,.filter-btn,.payment-option){display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:8px!important}
html body :is(.btn,.theme-btn,.filter-btn,.payment-option)>span:not(.badge-count){display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}

/* Ações colocadas no rodapé ficam centralizadas e quebram de forma responsiva. */
html body :is(.modal-actions,.settings-card-actions,.operational-login-actions,.pdv-payment-actions){
  display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:8px!important
}
html body .modal-actions .btn{min-width:120px!important}

/* Dashboard: seletor de período e quantidade de transações ficam lado a lado, à direita e com a mesma altura. */
html body .dashboard-main-grid .chart-card .card-head{align-items:center!important;flex-wrap:nowrap!important}
html body .dashboard-period-control{
  margin-left:auto!important;display:grid!important;grid-template-columns:120px 120px!important;gap:8px!important;align-items:center!important;justify-content:end!important;flex:0 0 auto!important
}
html body .dashboard-period-control .select,
html body .dashboard-period-control .data-badge{
  width:120px!important;min-width:120px!important;height:44px!important;min-height:44px!important;margin:0!important;padding:0 12px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important
}

/* KDS: o botão de início é ação principal; cancelar produto mantém ação destrutiva. */
html body :is(.kds-start,.kitchen-start){background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
html body .kds-item-actions{align-items:center!important}

@media(max-width:720px){
  html body .dashboard-main-grid .chart-card .card-head{align-items:flex-start!important;flex-wrap:wrap!important}
  html body .dashboard-period-control{width:100%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body .dashboard-period-control .select,
  html body .dashboard-period-control .data-badge{width:100%!important;min-width:0!important}
}


/* Padronização final de ícones e controles de ação. Ícones gerais ficam médios; ações apenas por ícone usam 20px. */
html body .ui-icon{width:var(--bp-icon-size)!important;height:var(--bp-icon-size)!important;min-width:var(--bp-icon-size)!important;flex:0 0 var(--bp-icon-size)!important;stroke-width:1.9!important}
html body :is(.top-btn,.top-user,.icon-btn,.kds-item-check,.kds-item-cancel,.kitchen-valid,.kitchen-trash)>.ui-icon{width:var(--bp-action-icon-size)!important;height:var(--bp-action-icon-size)!important;min-width:var(--bp-action-icon-size)!important;flex-basis:var(--bp-action-icon-size)!important}

/* Controles de ação reais recebem a mesma borda neutra. Botões que funcionam como cards/navegação ficam fora deste grupo. */
html body button:not(.nav-link):not(.comanda-card):not(.pdv-product):not(.catalog-product-main):not(.system-notification-item):not(.pop-item):not(.delivery-customer-option):not(.primary):not(.green):not(.danger):not(.ghost-danger):not(.active){border-color:var(--bp-button-border)!important}
html body button:not(.nav-link):not(.comanda-card):not(.pdv-product):not(.catalog-product-main):not(.system-notification-item):not(.pop-item):not(.delivery-customer-option):not(.primary):not(.green):not(.danger):not(.ghost-danger):not(.active):not(.kds-item-cancel):not(.kitchen-trash):not(.icon-danger):not(.pdv-remove){background:#fff!important;color:#172033!important}
html body button:not(.nav-link):not(.comanda-card):not(.pdv-product):not(.catalog-product-main):not(.system-notification-item):not(.pop-item):not(.delivery-customer-option):not(.primary):not(.green):not(.danger):not(.ghost-danger):not(.active):not(.kds-item-cancel):not(.kitchen-trash):not(.icon-danger):not(.pdv-remove):hover{background:var(--bp-secondary-hover)!important;color:#111827!important;border-color:var(--bp-button-border)!important;filter:none!important}

/* Quantidade/stepper também segue branco + hover sólido, nunca transparente e nunca com borda de destaque. */
html body :is(.qty,.pdv-qty,.cart-qty,.item-qty,.quantity-control,.inline-stepper) button{background:#fff!important;color:#172033!important;border-color:var(--bp-button-border)!important}
html body :is(.qty,.pdv-qty,.cart-qty,.item-qty,.quantity-control,.inline-stepper) button:hover{background:var(--bp-secondary-hover)!important;color:#111827!important;border-color:var(--bp-button-border)!important;filter:none!important;transform:none!important}

/* Grupos de ações que encerram cards, formulários ou modais permanecem centralizados e quebram linha quando necessário. */
html body :is(.modal-body,.modal,.card,.settings-admin-card,.settings-subsection,form,.space)>.actions:last-child,
html body :is(.modal-body,.modal,.card,.settings-admin-card,.settings-subsection,form,.space)>.modal-actions:last-child{
  display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:8px!important;width:100%!important
}
html body :is(.modal-body,.modal,.card,.settings-admin-card,.settings-subsection,form,.space)>.actions:last-child>.btn,
html body :is(.modal-body,.modal,.card,.settings-admin-card,.settings-subsection,form,.space)>.modal-actions:last-child>.btn{justify-content:center!important;text-align:center!important}

/* Autoridade final dos estados de botão: vence os estilos históricos específicos de template. */
html[data-ui-template][data-ui-radius] body .app-header-actions :is(.top-btn,.top-user){
  width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;
  background:#fff!important;color:#172033!important;border-color:var(--bp-button-border)!important
}
html[data-ui-template][data-ui-radius] body .app-header-actions :is(.top-btn,.top-user):hover{
  background:var(--bp-secondary-hover)!important;color:#172033!important;border-color:var(--bp-button-border)!important;transform:none!important
}
html[data-ui-template][data-ui-radius] body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.danger):not(.green):not(.ghost-danger),
  .theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),
  .top-btn,.top-user,.icon-btn:not(.danger):not(.icon-danger),.public-tool-btn,.picker-add,
  .pdv-category:not(.active),.pdv-cat:not(.active),.kds-item-check
){background:#fff!important;color:#172033!important;border-color:var(--bp-button-border)!important}
html[data-ui-template][data-ui-radius] body :is(
  .btn.outline,.btn.secondary,.btn:not(.primary):not(.danger):not(.green):not(.ghost-danger),
  .theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),
  .top-btn,.top-user,.icon-btn:not(.danger):not(.icon-danger),.public-tool-btn,.picker-add,
  .pdv-category:not(.active),.pdv-cat:not(.active),.kds-item-check
):hover{background:var(--bp-secondary-hover)!important;color:#111827!important;border-color:var(--bp-button-border)!important;filter:none!important}
html[data-ui-template][data-ui-radius] body :is(.btn.primary,.btn.green,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.kds-start,.kitchen-start){
  background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important
}
html[data-ui-template][data-ui-radius] body :is(.btn.primary,.btn.green,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.kds-start,.kitchen-start):hover{
  background:color-mix(in srgb,var(--primary) 88%,#000)!important;color:#fff!important;border-color:var(--primary)!important;filter:none!important
}
html[data-ui-template][data-ui-radius] body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger,.kds-item-cancel,.kitchen-trash),
html[data-ui-template][data-ui-radius] body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-danger,.kds-item-cancel,.kitchen-trash):hover{
  border-color:var(--danger,#dc2626)!important
}
/* END IDMIX Tech v1.3.10 */


/* ===== IDMIX Tech v1.3.11 · modais, links e acesso operacional responsivos ===== */
/* Modais comuns ficam centralizados no viewport inteiro, sem deslocamento causado pela posição do menu. */
html body #modal-root > .modal-wrap,
html[data-menu-position] body #modal-root > .modal-wrap,
html body:has(.shell.menu-pos-top) #modal-root > .modal-wrap,
html body:has(.shell.menu-pos-bottom) #modal-root > .modal-wrap,
html body:has(.shell.menu-pos-left) #modal-root > .modal-wrap,
html body:has(.shell.menu-pos-right) #modal-root > .modal-wrap{
  position:fixed!important;
  inset:0!important;
  top:0!important;right:0!important;bottom:0!important;left:0!important;
  width:100vw!important;height:100dvh!important;
  box-sizing:border-box!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:18px!important;margin:0!important;overflow:auto!important;
}
html body #modal-root > .modal-wrap > .modal:not(.modal-fullscreen){
  margin:auto!important;box-sizing:border-box!important;max-width:calc(100vw - 36px)!important;
  max-height:calc(100dvh - 36px)!important;scrollbar-gutter:auto!important;
}
html body #modal-root .modal-body{scrollbar-gutter:auto!important}
html body #modal-root > .modal-wrap:has(.modal-fullscreen){padding:0!important;align-items:stretch!important;justify-content:stretch!important}

/* Links textuais não assumem aparência de botão, cor de destaque ou sublinhado. */
html body a:not(.btn):not(.nav-link):not(.app-header-brand):not(.comanda-card):not(.pdv-product),
html body .auth-text-link,
html body .back{
  color:var(--fg)!important;text-decoration:none!important;background:transparent!important;border:0!important;box-shadow:none!important
}
html body a:not(.btn):not(.nav-link):not(.app-header-brand):not(.comanda-card):not(.pdv-product):hover,
html body .auth-text-link:hover,
html body .back:hover{
  color:var(--fg)!important;text-decoration:none!important;background:transparent!important
}

/* Cozinha KDS e Entregador permanecem lado a lado inclusive dentro do cartão estreito de login. */
html body .login-card .operational-login-actions{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:stretch!important;justify-content:stretch!important;gap:8px!important;width:100%!important
}
html body .login-card .operational-login-actions>.operational-login-btn{
  width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding-inline:8px!important
}
html body .login-card .operational-login-actions>.operational-login-btn:only-child{grid-column:1/-1!important}

/* Confirmações e botões em modal: área estável para mouse e toque, sem animações que causem salto/pisca. */
html body.modal-open #modal-root .modal-actions .btn,
html body.modal-open #modal-root .modal .x{
  transform:none!important;animation:none!important
}
html body.modal-open #modal-root .modal-actions .btn:hover,
html body.modal-open #modal-root .modal-actions .btn:active{
  transform:none!important
}

/* Popover de alertas fica ancorado e com área de interação confortável em desktop/tablet. */
html body .system-notification-popover{z-index:3150!important;max-height:min(70dvh,560px)!important;overflow:auto!important}

@media(max-width:700px){
  html body #modal-root > .modal-wrap,
  html[data-menu-position] body #modal-root > .modal-wrap,
  html body:has(.shell) #modal-root > .modal-wrap{padding:10px!important;width:100vw!important;height:100dvh!important}
  html body #modal-root > .modal-wrap > .modal:not(.modal-fullscreen){width:min(100%,620px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}
  html body .login-card .operational-login-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  html body .login-card .operational-login-actions>.operational-login-btn{font-size:11px!important;padding-inline:5px!important}
  html body .system-notification-popover{left:10px!important;right:10px!important;top:62px!important;width:auto!important;max-height:calc(100dvh - 82px)!important}
}
/* END IDMIX Tech v1.3.11 */

/* ===== IDMIX Tech v1.4.0 · estabilidade visual, agenda e responsividade ===== */
:root{
  --bp-icon-size:19px;
  --bp-action-icon-size:22px;
  --bp-button-border:#c7d0dc;
  --bp-secondary-hover:#f2f4f7;
}

/* Camadas: conteúdo < popovers < modais < alertas/toasts. */
html body .popover,html body .user-menu-popover{z-index:9000!important}
html body #modal-root{position:relative!important;z-index:10000!important}
html body #modal-root>.modal-wrap{z-index:10000!important}
html body #toast-root{z-index:11000!important}
html body .toast,html body .alert{z-index:11000!important}

/* Ícones superiores com escala uniforme e suficientemente legível. */
html body .app-header-actions :is(.top-btn,.top-user){width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;max-width:42px!important;max-height:42px!important}
html body .app-header-actions :is(.top-btn,.top-user)>.ui-icon,
html body .app-header-actions .top-user .ui-icon,
html body #system-notification-btn>.ui-icon{width:22px!important;height:22px!important;min-width:22px!important;flex:0 0 22px!important;stroke-width:1.9!important}
html body .badge-count{min-width:17px!important;height:17px!important;font-size:9px!important;line-height:17px!important}

/* Nunca esconder texto dinamicamente em hover: elimina o efeito de piscar entre botão grande e ícone. */
html body .bp-icons-only-130 .btn>span:not(.badge-count),
html body .bp-icons-only-130 a.btn>span:not(.badge-count){display:inline-flex!important;opacity:1!important;visibility:visible!important;width:auto!important;max-width:none!important}
html body .bp-responsive-actions-130 .btn{transition:background-color .15s ease,color .15s ease,border-color .15s ease,opacity .15s ease!important}

/* Regra final de botões: secundário sempre sólido e borda sempre neutra, inclusive no PDV. */
html body button:not(.nav-link):not(.comanda-card):not(.pdv-product):not(.catalog-product-main):not(.system-notification-item):not(.pop-item):not(.delivery-customer-option):not(.primary):not(.green):not(.danger):not(.ghost-danger):not(.active),
html body a.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger):not(.active){
  border-color:var(--bp-button-border)!important
}
html body :is(.btn.outline,.btn.secondary,.payment-option,.filter-btn:not(.active),.theme-btn:not(.active),.pdv-category:not(.active),.pdv-cat:not(.active),.icon-btn:not(.danger):not(.icon-danger),.top-btn,.top-user){
  background:#fff!important;color:#172033!important;border-color:var(--bp-button-border)!important;filter:none!important
}
html body :is(.btn.outline,.btn.secondary,.payment-option,.filter-btn:not(.active),.theme-btn:not(.active),.pdv-category:not(.active),.pdv-cat:not(.active),.icon-btn:not(.danger):not(.icon-danger),.top-btn,.top-user):hover{
  background:var(--bp-secondary-hover)!important;color:#111827!important;border-color:var(--bp-button-border)!important;filter:none!important;opacity:1!important
}
html body :is(.btn.primary,.btn.green,.filter-btn.active,.theme-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active):hover{
  border-color:var(--primary)!important;opacity:1!important
}
html body .pdv-scan-button,html body .pdv-scan-button span{font-weight:400!important}
html body .info-note,html body .tiny.muted,html body .small.muted{font-weight:400!important}
html body .info-note{font-size:11px!important;line-height:1.45!important}

/* Conteúdo de botões centralizado. Opções de pagamento: ícone central em coluna própria, texto alinhado à esquerda. */
html body :is(.btn,.theme-btn,.filter-btn){display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;gap:8px!important}
html body .payment-option{display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;align-items:center!important;justify-content:stretch!important;text-align:left!important;gap:10px!important}
html body .payment-option .option-icon{width:44px!important;height:44px!important;display:grid!important;place-items:center!important;justify-self:center!important}
html body .payment-option .option-icon .ui-icon{width:21px!important;height:21px!important}
html body .payment-option>span:last-child{display:grid!important;gap:2px!important;justify-items:start!important;text-align:left!important}
html body .payment-option>span:last-child :is(b,small){text-align:left!important}
html body .payment-option b{font-weight:600!important}

/* Dashboard: transações à esquerda, seletor de dias à direita e rótulos legíveis. */
html body .dashboard-period-control{display:grid!important;grid-template-columns:120px 120px!important;gap:8px!important;align-items:center!important;justify-content:end!important}
html body .dashboard-period-control .data-badge{grid-column:1!important;grid-row:1!important;width:120px!important;height:44px!important;min-height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important}
html body .dashboard-period-control .select{grid-column:2!important;grid-row:1!important;width:120px!important;height:44px!important;min-height:44px!important}
html body .chart-label{font-size:10px!important}
html body .chart-value{font-size:9px!important}

/* PDV: apresentação compacta, promoções e desconto híbrido. */
html body .pdv-product:hover{border-color:var(--bp-button-border)!important;box-shadow:none!important}
html body .pdv-product-body small{text-transform:none!important;letter-spacing:0!important;font-size:10px!important}
html body .pdv-product-body>b{text-transform:uppercase!important;font-weight:700!important;min-height:auto!important}
html body .pdv-price-line{display:flex!important;align-items:baseline!important;gap:7px!important;color:var(--primary)!important}
html body .pdv-price-line del{font-size:10px!important;color:var(--muted)!important;font-weight:400!important}
html body .pdv-price-line strong{font-size:15px!important;color:var(--primary)!important;font-weight:700!important}
html body .pdv-product-body em{font-size:10px!important}
html body .pdv-discount-control{display:grid!important;grid-template-columns:78px minmax(0,1fr)!important;gap:8px!important}
html body .pdv-discount-control :is(.select,.input){width:100%!important}

/* Links textuais continuam neutros, sem sublinhado. */
html body a:not(.btn):not(.nav-link):not(.app-header-brand):not(.comanda-card):not(.pdv-product){color:var(--fg)!important;text-decoration:none!important}
html body a:not(.btn):not(.nav-link):not(.app-header-brand):not(.comanda-card):not(.pdv-product):hover{color:var(--fg)!important;text-decoration:none!important}

/* Capitalização natural. Não forçamos caixa alta visual em rótulos; nomes de produto permanecem maiúsculos. */
html body :is(.uppercase,.eyebrow,.label,.table th,.stat-label){text-transform:none!important;letter-spacing:normal!important}
html body :is(.product-title h3,.product-name-input,.product-pick-info b,.pdv-product-body>b,.pdv-line-top>b,.k-product-line h4,.kds-item-copy>b,.order-product-name){text-transform:uppercase!important}

/* Comandas: ações com texto em telas maiores e só ícones em telas compactas, sem cálculo JS durante hover. */
html body .comanda-detail-responsive-140 .detail-toolbar{display:flex!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap!important;gap:8px!important}
html body .comanda-detail-responsive-140 .detail-toolbar .btn{min-width:44px!important}
@media(max-width:720px){
  html body .comanda-detail-responsive-140 .detail-toolbar .btn{width:44px!important;min-width:44px!important;max-width:44px!important;padding:0!important}
  html body .comanda-detail-responsive-140 .detail-toolbar .btn>span:not(.badge-count){display:none!important}
}

/* Agenda. */
html body .agenda-layout{display:grid!important;grid-template-columns:minmax(0,2fr) minmax(300px,.8fr)!important;gap:14px!important;align-items:start!important}
html body .agenda-calendar{padding:12px!important;overflow:hidden!important}
html body .agenda-weekdays{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;border-bottom:1px solid var(--border)!important}
html body .agenda-weekdays span{padding:8px 4px!important;text-align:center!important;font-size:10px!important;color:var(--muted)!important;font-weight:500!important}
html body .agenda-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important}
html body .agenda-day{min-height:116px!important;border-right:1px solid var(--border)!important;border-bottom:1px solid var(--border)!important;padding:7px!important;background:var(--surface)!important;cursor:pointer!important;overflow:hidden!important}
html body .agenda-day:nth-child(7n){border-right:0!important}
html body .agenda-day-empty{background:var(--surface2)!important;cursor:default!important}
html body .agenda-day.today{box-shadow:inset 0 0 0 2px var(--primary)!important}
html body .agenda-day-number{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;font-size:11px!important;font-weight:600!important}
html body .agenda-day.today .agenda-day-number{background:var(--primary)!important;color:#fff!important}
html body .agenda-events{display:grid!important;gap:4px!important;margin-top:4px!important}
html body .agenda-event{width:100%!important;min-height:30px!important;height:auto!important;padding:5px 6px!important;border:1px solid var(--bp-button-border)!important;background:#fff!important;color:var(--fg)!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:5px!important;text-align:left!important;align-items:center!important}
html body .agenda-event span{font-size:9px!important;color:var(--muted)!important}
html body .agenda-event b{font-size:9px!important;font-weight:500!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html body .agenda-event.cancelada{opacity:.55!important;text-decoration:line-through!important}
html body .agenda-upcoming-list{display:grid!important;gap:7px!important}
html body .agenda-upcoming-item{width:100%!important;height:auto!important;min-height:58px!important;display:grid!important;grid-template-columns:54px minmax(0,1fr) auto!important;align-items:center!important;gap:9px!important;padding:8px!important;background:#fff!important;color:var(--fg)!important;border:1px solid var(--bp-button-border)!important;text-align:left!important}
html body .agenda-upcoming-item>span{display:grid!important;gap:2px!important}.agenda-upcoming-item small{font-size:9px!important;color:var(--muted)!important}.agenda-upcoming-item b{font-size:11px!important;font-weight:600!important}.agenda-upcoming-item em{font-style:normal!important}
html body .agenda-upcoming-date{justify-items:center!important;border-right:1px solid var(--border)!important;padding-right:8px!important}
html body .agenda-month-label{text-transform:capitalize!important;min-width:170px!important}


html body .integration-status-card{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:10px!important;border:1px solid var(--border)!important;border-left:4px solid var(--primary)!important;background:var(--surface)!important;padding:11px!important}
html body .integration-status-card>div{display:grid!important;gap:3px!important}.integration-status-card b{font-weight:600!important}.integration-status-card small{font-size:10px!important;color:var(--muted)!important;font-weight:400!important}

/* Modais sempre à frente e centralizados no viewport. */
html body #modal-root>.modal-wrap,
html[data-menu-position] body #modal-root>.modal-wrap,
html body:has(.shell.menu-pos-top) #modal-root>.modal-wrap,
html body:has(.shell.menu-pos-bottom) #modal-root>.modal-wrap,
html body:has(.shell.menu-pos-left) #modal-root>.modal-wrap,
html body:has(.shell.menu-pos-right) #modal-root>.modal-wrap{
  position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:18px!important;margin:0!important;z-index:10000!important
}
html body #modal-root>.modal-wrap>.modal:not(.modal-fullscreen){margin:auto!important;max-width:calc(100vw - 36px)!important;max-height:calc(100dvh - 36px)!important}
html body #modal-root .modal-head .x,html body #modal-root .modal .x,html body #modal-root .modal-head .x:hover,html body #modal-root .modal .x:hover{border:0!important;background:transparent!important;color:var(--muted)!important;transform:none!important;filter:none!important}

@media(max-width:980px){
  html body .agenda-layout{grid-template-columns:1fr!important}
  html body .agenda-upcoming{order:-1!important}
}
@media(max-width:720px){
  html body .dashboard-period-control{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;width:100%!important}
  html body .dashboard-period-control :is(.select,.data-badge){width:100%!important;min-width:0!important}
  html body .agenda-weekdays{display:none!important}
  html body .agenda-grid{grid-template-columns:1fr!important;gap:7px!important}
  html body .agenda-day-empty{display:none!important}
  html body .agenda-day{min-height:auto!important;border:1px solid var(--border)!important;display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:8px!important}
  html body .agenda-events{margin:0!important}
  html body .agenda-upcoming-item{grid-template-columns:48px minmax(0,1fr)!important}.agenda-upcoming-item em{grid-column:2!important;justify-self:start!important}
  html body #modal-root>.modal-wrap{padding:10px!important}
  html body #modal-root>.modal-wrap>.modal:not(.modal-fullscreen){max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}
}
/* END IDMIX Tech v1.4.0 */

/* ===== IDMIX Tech v1.4.0 · consolidação final de interação e preços promocionais ===== */
:root{
  --bp-icon-size:19px;
  --bp-action-icon-size:23px;
  --bp-button-border:#c7d0dc;
  --bp-secondary-hover:#f2f4f7;
}

/* Modal acima de toda a interface; avisos e toasts acima do modal. */
html body .popover,html body .user-menu-popover{z-index:90000!important}
html body #modal-root,html body #modal-root>.modal-wrap{z-index:100000!important}
html body #toast-root,html body .toast,html body .alert{z-index:110000!important}

/* Ícones uniformes, sem extremos de escala. */
html body .ui-icon{width:var(--bp-icon-size)!important;height:var(--bp-icon-size)!important;min-width:var(--bp-icon-size)!important;flex:0 0 var(--bp-icon-size)!important;stroke-width:1.9!important}
html body :is(.app-header-actions .top-btn,.app-header-actions .top-user,.icon-btn,.kds-item-check,.kds-item-cancel,.kitchen-valid,.kitchen-trash)>.ui-icon,
html body #system-notification-btn>.ui-icon{width:var(--bp-action-icon-size)!important;height:var(--bp-action-icon-size)!important;min-width:var(--bp-action-icon-size)!important;flex:0 0 var(--bp-action-icon-size)!important}

/* Hover final: nenhum botão operacional fica transparente; a borda mantém a cor do seu estado. */
html body :is(.btn:not(.primary):not(.green):not(.danger):not(.ghost-danger):not(.active),.theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),.top-btn,.top-user,.icon-btn:not(.danger):not(.icon-danger),.public-tool-btn,.picker-add,.pdv-category:not(.active),.pdv-cat:not(.active),.urgent-action,.cash-head-button,.qty button,.inline-stepper button){border-color:var(--bp-button-border)!important;box-shadow:none!important}
html body :is(.btn.outline,.btn.secondary,.theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),.top-btn,.top-user,.icon-btn:not(.danger):not(.icon-danger),.public-tool-btn,.pdv-category:not(.active),.pdv-cat:not(.active),.qty button,.inline-stepper button):hover{
  background:var(--bp-secondary-hover)!important;color:#111827!important;border-color:var(--bp-button-border)!important;opacity:1!important;filter:none!important
}
html body :is(.btn.primary,.btn.green,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active):hover{
  background:color-mix(in srgb,var(--primary) 88%,#000)!important;color:#fff!important;border-color:var(--primary)!important;opacity:1!important;filter:none!important
}
html body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-btn.icon-danger):hover{border-color:var(--danger,#dc2626)!important;opacity:1!important;filter:none!important}
html body #modal-root .x,html body #modal-root .x:hover{border:0!important;background:transparent!important;color:var(--muted)!important;opacity:1!important;filter:none!important;transform:none!important}

/* Preço promocional consistente em Estoque, PDV, Comandas, Cardápio e Delivery. */
html body .bp-promo-price{display:inline-flex!important;align-items:baseline!important;gap:7px!important;white-space:nowrap!important;color:var(--primary)!important}
html body .bp-promo-price del{font-size:10px!important;line-height:1!important;color:var(--muted)!important;font-weight:400!important;text-decoration-thickness:1px!important}
html body .bp-promo-price strong{font-size:15px!important;line-height:1.1!important;color:var(--primary)!important;font-weight:700!important}
html body .product-card-price{margin-left:auto!important;justify-content:flex-end!important;flex-direction:column!important;align-items:flex-end!important;gap:2px!important}
html body .product-card-price strong{font-family:var(--app-font)!important}
html body .menu-promo-price,html body .delivery-public-promo{margin-top:4px!important}
html body .picker-promo-price{display:inline-flex!important;vertical-align:middle!important}
html body .picker-promo-price strong{font-size:12px!important}

/* Rótulos longos do gráfico permanecem legíveis em 30/60/90 dias. */
html body .revenue-svg .chart-label{font-size:10px!important;font-weight:400!important}

/* Ações da comanda: somente breakpoint CSS, sem alteração no hover. */
@media(max-width:760px){
  html body .comanda-detail-responsive-140 .detail-toolbar .btn{width:44px!important;min-width:44px!important;max-width:44px!important;padding:0!important}
  html body .comanda-detail-responsive-140 .detail-toolbar .btn>span:not(.badge-count){display:none!important}
}
/* END IDMIX Tech v1.4.0 */


/* v1.4.0 · capitalização visual final: sem caixa alta forçada fora de produto/KDS. */
html body *{text-transform:none!important}
html body :is(.product-title h3,.product-name-input,.product-pick-info b,.pdv-product-body>b,.pdv-line-top>b,.k-product-line h4,.kds-item-copy>b,.order-product-name){text-transform:uppercase!important}

/* ===== IDMIX Tech v1.4.1 · ajustes operacionais cumulativos ===== */
:root{--bp-icon-size:19px;--bp-action-icon-size:19px}
html body .ui-icon,
html body .nav .ui-icon,
html body .btn .ui-icon,
html body .top-btn>.ui-icon,
html body .top-user>.ui-icon,
html body .back .ui-icon,
html body .icon-btn .ui-icon,
html body .kds-item-actions .ui-icon,
html body .detail-toolbar .ui-icon{width:19px!important;height:19px!important;min-width:19px!important;min-height:19px!important;max-width:19px!important;max-height:19px!important;flex:0 0 19px!important}

html body .bp-cep-helper-141{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(110px,.55fr)!important;gap:10px!important;align-items:end!important}
html body .bp-cep-helper-141>div{min-width:0!important}

html body .ready-orders-list-141{display:grid!important;gap:8px!important;max-height:min(52vh,420px)!important;overflow:auto!important;margin-top:8px!important}
html body .ready-order-group-141{display:grid!important;gap:6px!important;padding:9px!important;border:1px solid var(--border)!important;background:var(--surface,#fff)!important}
html body .ready-order-head-141{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}
html body .ready-order-head-141>b{font-size:11px!important;font-weight:600!important}
html body .ready-products-141{list-style:none!important;padding:0!important;margin:0!important;display:grid!important;gap:4px!important}
html body .ready-products-141 li{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:6px!important;align-items:center!important;font-size:10px!important;color:var(--muted)!important}
html body .ready-products-141 li b{color:var(--fg)!important;font-weight:600!important}
html body .ready-orders-action-141{padding-top:9px!important;margin-top:9px!important;border-top:1px solid var(--border)!important}
html body .korder.ready-focus-141{outline:2px solid color-mix(in srgb,var(--primary) 65%,transparent)!important;outline-offset:3px!important}

html body .agenda-next-icon-141{display:inline-flex!important;transform:rotate(180deg)!important}
html body .agenda-event{grid-template-columns:auto minmax(0,1fr)!important;grid-template-areas:"time title" "badge badge"!important}
html body .agenda-event .agenda-event-time{grid-area:time!important}
html body .agenda-event>b{grid-area:title!important}
html body .agenda-event .agenda-status-badge-141{grid-area:badge!important;justify-self:start!important}
html body .agenda-status-badge-141{display:inline-flex!important;align-items:center!important;min-height:20px!important;padding:2px 7px!important;border:1px solid currentColor!important;border-radius:999px!important;font-size:8px!important;line-height:1!important;font-style:normal!important;font-weight:600!important;text-decoration:none!important;white-space:nowrap!important}
html body .agenda-status-badge-141.reservada{color:#8a5a00!important;background:#fff8e6!important}
html body .agenda-status-badge-141.confirmada{color:#075985!important;background:#f0f9ff!important}
html body .agenda-status-badge-141.concluida{color:#166534!important;background:#f0fdf4!important}
html body .agenda-status-badge-141.cancelada{color:#b42318!important;background:#fff1f0!important}
html body .agenda-event.cancelada .agenda-status-badge-141{text-decoration:none!important;opacity:1!important}
html body .agenda-event.cancelada{opacity:1!important;text-decoration:none!important}

html body .detail-toolbar-141{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;overflow-x:auto!important;padding-bottom:2px!important;scrollbar-width:thin!important}
html body .detail-toolbar-141>.btn{flex:0 0 auto!important;white-space:nowrap!important}
html body .comanda-client-141{margin:5px 0 1px!important;font-size:13px!important;font-weight:600!important;color:var(--fg)!important}
html body .comanda-opened-141{margin-top:0!important;font-size:10px!important}
html body .cancelled-item-141{grid-template-columns:minmax(0,1fr)!important}

html body .bp-brand-line-141,html body .bp-header-brand-line-141{display:inline-flex!important;align-items:baseline!important;gap:6px!important;min-width:0!important}
html body .bp-brand-version-141{font-size:9px!important;line-height:1!important;font-weight:600!important;color:var(--primary)!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important}
html body .bp-header-brand-line-141>b{display:inline!important}

@media(max-width:760px){
  html body .bp-cep-helper-141{grid-template-columns:minmax(0,1fr) minmax(92px,.52fr)!important}
  html body .comanda-detail-responsive-141 .detail-toolbar-141{width:100%!important;overflow:visible!important;gap:6px!important}
  html body .comanda-detail-responsive-141 .detail-toolbar-141>.btn{min-width:44px!important;width:44px!important;padding:0!important;justify-content:center!important}
  html body .comanda-detail-responsive-141 .detail-toolbar-141>.btn>span:not(.ui-icon){display:none!important}
  html body .agenda-status-badge-141{font-size:7px!important;padding:2px 5px!important}
}
/* END IDMIX Tech v1.4.1 */


/* ===== IDMIX Tech v1.4.2 · capitalização, seleção, popovers e ícones ===== */
:root{--bp-icon-size:19px;--bp-action-icon-size:19px}

/* Capitalização natural prevalece inclusive sobre regras antigas de templates. */
html body #app *,html body #modal-root *,html body .popover *,html body .user-menu-popover *{text-transform:none!important}
html body #app :is(.product-title h3,.product-name-input,.product-pick-info b,.pdv-product-body>b,.pdv-line-top>b,.k-product-line h4,.kds-item-copy>b,.order-product-name,.lot-code,.lot-input,[data-lot-code]),
html body #modal-root :is(.product-title h3,.product-name-input,.product-pick-info b,.order-product-name,.lot-code,.lot-input,[data-lot-code]){text-transform:uppercase!important}
html[data-ui-template] body :is(.label,.eyebrow,.stat-label,.table th,.pill,.status-pill,.brand-sub,.stock-low,.menu-category-title,.public-live,.operational-login-separator,.settings-section-label,.compact-data-table .table td:first-child,.subscription-amount small,.track-greeting>span){text-transform:none!important;letter-spacing:normal!important}
html[data-ui-template] body :is(.product-title h3,.product-name-input,.product-pick-info b,.pdv-product-body>b,.pdv-line-top>b,.k-product-line h4,.kds-item-copy>b,.order-product-name,.lot-code,.lot-input,[data-lot-code]){text-transform:uppercase!important}

/* Estado ativo/selecionado acompanha a cor de destaque também na borda. */
html body :is(.btn.primary,.btn.green,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.color-btn.active,.settings-choice.active,.toggle-option.active){border-color:var(--primary)!important}
html body :is(.btn.primary,.btn.green,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.color-btn.active,.settings-choice.active,.toggle-option.active):hover{border-color:var(--primary)!important}

/* Escala única: o tamanho visual do ícone Imprimir passa a valer para todo SVG semântico. */
html[data-ui-template] body svg.ui-icon[data-ui-icon]{width:19px!important;height:19px!important;min-width:19px!important;min-height:19px!important;max-width:19px!important;max-height:19px!important;flex:0 0 19px!important;stroke-width:1.9!important}
html body :is(#ready-top-btn,#call-top-btn,#system-notification-btn)>.ui-icon{width:19px!important;height:19px!important;min-width:19px!important;min-height:19px!important;max-width:19px!important;max-height:19px!important;flex:0 0 19px!important}

/* Caixa única dos ícones superiores: mesma posição, largura, acabamento e limite vertical. */
html body .bp-top-card-142,
html body .app-header-actions .user-menu-popover.bp-top-card-142{
  position:fixed!important;top:68px!important;right:18px!important;left:auto!important;bottom:auto!important;
  width:min(420px,calc(100vw - 36px))!important;min-width:0!important;max-width:420px!important;
  max-height:min(70dvh,620px)!important;overflow:auto!important;padding:13px!important;
  border:1px solid var(--border)!important;border-radius:var(--ui-card-radius,12px)!important;background:var(--surface)!important;box-shadow:none!important;z-index:90000!important
}
html body .app-header-actions .user-menu-popover.bp-top-card-142{display:flex;flex-direction:column;gap:5px}
@media(max-width:800px){html body .bp-top-card-142,html body .app-header-actions .user-menu-popover.bp-top-card-142{top:62px!important;right:12px!important;width:calc(100vw - 24px)!important;max-width:none!important}}

/* CEP estruturado: rua, número e bairro ficam explícitos; endereço composto continua compatível com o banco atual. */
html body .bp-cep-fields-142{display:grid!important;grid-template-columns:minmax(150px,.7fr) minmax(100px,.4fr) minmax(220px,1.2fr) minmax(160px,.8fr) minmax(170px,.8fr)!important;gap:10px!important;align-items:end!important;margin-bottom:10px!important}
html body .bp-cep-fields-142>div{min-width:0!important}
html body .bp-composed-address-142{background:color-mix(in srgb,var(--surface2) 70%,var(--surface))!important}
@media(max-width:1100px){html body .bp-cep-fields-142{grid-template-columns:repeat(2,minmax(0,1fr))!important}.bp-cep-street-142{grid-column:1/-1!important}}
@media(max-width:620px){html body .bp-cep-fields-142{grid-template-columns:1fr!important}.bp-cep-street-142{grid-column:auto!important}}
/* END IDMIX Tech v1.4.2 */

/* ===== IDMIX Tech v1.4.3 · estabelecimento, header e ícones ===== */
:root{--bp-icon-size:19px;--bp-action-icon-size:19px;--bp-system-icon-size:19px}

/* Um único tamanho visual para os ícones semânticos, igual ao menu Dashboard. */
html body svg.ui-icon,
html body .app-header-nav .nav-icon>.ui-icon,
html body .app-header-actions :is(.top-btn,.top-user)>.ui-icon,
html body :is(.btn,.icon-btn,.theme-btn,.filter-btn,.payment-option,.public-tool-btn,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.qty button,.inline-stepper button)>.ui-icon{
  width:var(--bp-system-icon-size)!important;height:var(--bp-system-icon-size)!important;
  min-width:var(--bp-system-icon-size)!important;min-height:var(--bp-system-icon-size)!important;
  max-width:var(--bp-system-icon-size)!important;max-height:var(--bp-system-icon-size)!important;
  flex:0 0 var(--bp-system-icon-size)!important;stroke-width:1.9!important
}

/* Header: todos os acionadores usam a mesma caixa 42x42. */
html body .app-header-actions :is(.top-btn,.top-user,.bp-top-trigger-143){
  width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
  max-width:42px!important;max-height:42px!important;padding:0!important;display:inline-grid!important;
  place-items:center!important;align-content:center!important;justify-content:center!important;flex:0 0 42px!important
}
html body .app-header-actions .top-user>span:not(.ui-icon),html body .app-header-actions .top-user>b{display:none!important}

/* Os quatro cards superiores usam exatamente a mesma âncora, largura e acabamento. */
html body .bp-top-card-143,
html body .app-header-actions .user-menu-popover.bp-top-card-143{
  position:fixed!important;top:68px!important;right:18px!important;left:auto!important;bottom:auto!important;
  width:min(420px,calc(100vw - 36px))!important;min-width:0!important;max-width:420px!important;
  min-height:150px!important;max-height:min(70dvh,620px)!important;overflow:auto!important;padding:13px!important;
  border:1px solid var(--border)!important;border-radius:var(--ui-card-radius,12px)!important;
  background:var(--surface)!important;box-shadow:none!important;z-index:90000!important
}
html body .app-header-actions .user-menu-popover.bp-top-card-143:not(.hidden){display:flex!important;flex-direction:column!important;gap:5px!important}
html body .app-header-actions .user-menu-popover.bp-top-card-143.hidden{display:none!important}

/* Cadastro do estabelecimento organizado e responsivo. */
html body .establishment-form-143{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;align-items:end!important}
html body .establishment-form-143>div{min-width:0!important}
html body .establishment-full-143{grid-column:1/-1!important}
html body .establishment-street-143{grid-column:1/-1!important}
html body .establishment-cityuf-143>div{display:grid!important;grid-template-columns:minmax(0,1fr) 72px!important;gap:8px!important}
html body .establishment-uf-143{text-transform:uppercase!important;text-align:center!important}

@media(max-width:800px){
  html body .bp-top-card-143,html body .app-header-actions .user-menu-popover.bp-top-card-143{top:62px!important;right:12px!important;width:calc(100vw - 24px)!important;max-width:none!important;min-height:140px!important}
}
@media(max-width:620px){
  html body .establishment-form-143{grid-template-columns:1fr!important}
  html body .establishment-full-143,html body .establishment-street-143{grid-column:auto!important}
}
/* END IDMIX Tech v1.4.3 */


/* ===== IDMIX Tech v1.4.6 · padrão global de ícones, botões, topo e banners ===== */
:root{--bp-system-icon-size:19px}
html body svg.ui-icon[data-ui-icon],html body svg.ui-icon{width:var(--bp-system-icon-size)!important;height:var(--bp-system-icon-size)!important;min-width:var(--bp-system-icon-size)!important;min-height:var(--bp-system-icon-size)!important;max-width:var(--bp-system-icon-size)!important;max-height:var(--bp-system-icon-size)!important;flex:0 0 var(--bp-system-icon-size)!important;stroke-width:1.9!important}

html[data-ui-template][data-ui-radius] body :is(.btn.primary,.btn.green,.kds-start,.kitchen-start,.kitchen-action){border:1px solid var(--primary)!important}
html[data-ui-template][data-ui-radius] body :is(.btn.danger,.btn.ghost-danger,.icon-danger){border:1px solid var(--danger,#dc2626)!important}
html[data-ui-template][data-ui-radius] body :is(.btn.active,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.color-btn.active,.settings-choice.active,.toggle-option.active){border:1px solid var(--primary)!important;border-top:1px solid var(--primary)!important}
html[data-ui-template][data-ui-radius] body :is(.btn.outline,.btn.secondary,.theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),.pdv-category:not(.active),.pdv-cat:not(.active),.icon-btn:not(.danger):not(.icon-danger),.public-tool-btn):hover{border-color:var(--primary)!important}

html body .bp-top-hover-bridge-146{position:fixed!important;z-index:89999!important;background:transparent!important;pointer-events:auto!important}
html body .establishment-cityuf-143>div{display:block!important}
html body .establishment-cityuf-143>.input{width:100%!important}

html body .comanda-detail-head-146{align-items:flex-start!important;gap:14px!important}
html body .comanda-head-side-146{display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:9px!important;min-width:0!important}
html body .comanda-head-actions-146{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:7px!important;flex-wrap:wrap!important;margin:0!important;width:auto!important}
html body .comanda-head-actions-146>.btn{min-height:44px!important;height:44px!important}
@media(max-width:760px){
  html body .comanda-detail-head-146{align-items:stretch!important}
  html body .comanda-head-side-146{align-items:stretch!important}
  html body .comanda-head-actions-146{justify-content:flex-start!important;width:100%!important}
  html body .comanda-head-actions-146>.btn{width:44px!important;min-width:44px!important;padding:0!important;justify-content:center!important}
  html body .comanda-head-actions-146>.btn>span:not(.ui-icon){display:none!important}
}
/* END IDMIX Tech v1.4.6 */

/* ===== IDMIX Tech v1.4.7 · alertas no topo, agenda cancelada e escala única ===== */
:root{--bp-system-icon-size:19px}
html body svg.ui-icon,html body svg.ui-icon[data-ui-icon]{
  width:var(--bp-system-icon-size)!important;height:var(--bp-system-icon-size)!important;
  min-width:var(--bp-system-icon-size)!important;min-height:var(--bp-system-icon-size)!important;
  max-width:var(--bp-system-icon-size)!important;max-height:var(--bp-system-icon-size)!important;
  flex:0 0 var(--bp-system-icon-size)!important;stroke-width:1.9!important
}

/* GLOBAL · Todo toast/alerta flutuante nasce exatamente no topo da viewport, sem margem. */
html body #toast-root{position:fixed!important;top:0!important;left:50%!important;right:auto!important;bottom:auto!important;width:min(440px,calc(100% - 28px))!important;transform:translateX(-50%)!important;z-index:120000!important}
@media(max-width:900px){
  html body #toast-root{top:0!important;width:calc(100% - 24px)!important}
}

/* Reserva cancelada permanece visível no calendário, claramente riscada. */
html body .agenda-event.cancelada{opacity:.62!important;text-decoration:none!important;border-style:dashed!important}
html body .agenda-event.cancelada :is(.agenda-event-time,b){text-decoration:line-through!important;text-decoration-thickness:1.5px!important}
html body .agenda-event.cancelada .agenda-status-badge-141{text-decoration:none!important;opacity:1!important}
/* END IDMIX Tech v1.4.7 */

/* GLOBAL · alertas urgentes também ficam colados ao topo e acima da interface. */
html body .urgent-call-banner{top:0!important;z-index:119900!important}
html body .urgent-flash{display:inline-flex!important;align-items:center!important;gap:6px!important}
html body:has(.urgent-call-banner:not(.hidden)) #toast-root{top:58px!important}

/* ===== IDMIX Tech v1.4.9 · padronização visual final da rodada ===== */
:root{
  --bp-system-icon-size:20px;
  --bp-action-icon-size:20px;
}

/* GLOBAL · um único tamanho real para SVGs semânticos.
   Esta regra vem por último para vencer os tamanhos históricos 15/16/17/18/19/21/22/23px. */
html body svg.ui-icon,
html body svg.ui-icon[data-ui-icon],
html body :is(.btn,.top-btn,.top-user,.nav-link,.icon-btn,.filter-btn,.payment-option,.back,.x,.pdv-remove,.qty button,.inline-stepper button,.quantity-stepper button,.toast-icon) svg.ui-icon{
  width:var(--bp-system-icon-size)!important;
  height:var(--bp-system-icon-size)!important;
  min-width:var(--bp-system-icon-size)!important;
  min-height:var(--bp-system-icon-size)!important;
  max-width:var(--bp-system-icon-size)!important;
  max-height:var(--bp-system-icon-size)!important;
  flex:0 0 var(--bp-system-icon-size)!important;
  stroke-width:1.9!important;
}
html body :is(#ready-top-btn,#call-top-btn,#system-notification-btn,.top-user)>.ui-icon{
  width:var(--bp-system-icon-size)!important;height:var(--bp-system-icon-size)!important;
  min-width:var(--bp-system-icon-size)!important;min-height:var(--bp-system-icon-size)!important;
  max-width:var(--bp-system-icon-size)!important;max-height:var(--bp-system-icon-size)!important;
  flex:0 0 var(--bp-system-icon-size)!important;
}

/* GLOBAL · o clique pertence ao botão inteiro, não ao SVG/texto interno. */
html body button :is(svg.ui-icon,span:not(.badge-count),b,small,strong){pointer-events:none}

/* GLOBAL · alinhamento e bordas completas. */
html body .btn,
html body button.btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border-width:1px!important;
  border-style:solid!important;
  min-height:44px!important;
  line-height:1.15!important;
}
html[data-ui-template] body :is(.btn.primary,.btn.green,.btn.active,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.color-btn.active,.settings-choice.active,.toggle-option.active){
  border-top-color:var(--primary)!important;
  border-right-color:var(--primary)!important;
  border-bottom-color:var(--primary)!important;
  border-left-color:var(--primary)!important;
}
html[data-ui-template] body :is(.btn.primary,.btn.green,.btn.active,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.color-btn.active,.settings-choice.active,.toggle-option.active):hover{
  border-top-color:var(--primary)!important;
  border-right-color:var(--primary)!important;
  border-bottom-color:var(--primary)!important;
  border-left-color:var(--primary)!important;
}
html[data-ui-template] body :is(.btn.danger,.btn.ghost-danger,.icon-danger,.icon-btn.danger,.comanda-delete-admin){
  border-top-color:var(--danger,#dc2626)!important;
  border-right-color:var(--danger,#dc2626)!important;
  border-bottom-color:var(--danger,#dc2626)!important;
  border-left-color:var(--danger,#dc2626)!important;
  color:var(--danger,#dc2626)!important;
}
html[data-ui-template] body :is(.btn.outline,.btn.secondary,.theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),.pdv-category:not(.active),.pdv-cat:not(.active)):hover{
  border-top-color:var(--primary)!important;
  border-right-color:var(--primary)!important;
  border-bottom-color:var(--primary)!important;
  border-left-color:var(--primary)!important;
}

/* GLOBAL · toasts continuam colados no topo, acima de absolutamente toda a interface. */
html body #toast-root{
  top:0!important;
  z-index:2147483000!important;
  margin-top:0!important;
  padding-top:0!important;
}
html body .toast{margin-top:0!important}
html body .toast-icon{
  width:var(--bp-system-icon-size)!important;
  height:var(--bp-system-icon-size)!important;
  min-width:var(--bp-system-icon-size)!important;
  display:grid!important;
  place-items:center!important;
}

/* Dashboard · ícone de estado do caixa. */
html body .cash-session-title{display:flex!important;align-items:center!important;gap:8px!important}
html body .cash-session-title>.ui-icon{color:var(--primary)!important}
html body .closed-cash-icon{width:42px!important;height:42px!important;display:grid!important;place-items:center!important;color:var(--muted)!important}

/* Controles de quantidade +/− alinhados no centro exato. */
html body :is(.qty,.inline-stepper,.quantity-stepper){display:inline-grid!important;grid-template-columns:34px minmax(28px,auto) 34px!important;align-items:center!important;gap:0!important}
html body :is(.qty,.inline-stepper,.quantity-stepper)>button{
  width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
  padding:0!important;margin:0!important;display:grid!important;place-items:center!important;line-height:1!important
}
html body :is(.qty,.inline-stepper,.quantity-stepper)>b,
html body :is(.qty,.inline-stepper,.quantity-stepper)>span{
  min-width:28px!important;text-align:center!important;align-self:center!important;justify-self:center!important
}

/* PDV · modo de foco enquanto existe item no carrinho. */
html body.bp-pdv-focus-149 .pdv-page-head{display:none!important}
html body.bp-pdv-focus-149 .content{padding-top:0!important}
html body.bp-pdv-focus-149 .pdv-page{height:calc(100dvh - 82px)!important;min-height:0!important;overflow:hidden!important}
html body.bp-pdv-focus-149 .pdv-shell{height:100%!important;min-height:0!important;overflow:hidden!important;align-items:stretch!important}
html body.bp-pdv-focus-149 .pdv-catalog{height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
html body.bp-pdv-focus-149 .pdv-search-row,
html body.bp-pdv-focus-149 .pdv-categories{flex:0 0 auto!important}
html body.bp-pdv-focus-149 .pdv-categories{overflow-x:auto!important;white-space:nowrap!important}
html body.bp-pdv-focus-149 .pdv-products{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important}
html body.bp-pdv-focus-149 .pdv-cart{height:100%!important;max-height:none!important;min-height:0!important;overflow-y:auto!important;position:relative!important;top:auto!important}
@media(min-width:901px){
  html body.bp-pdv-focus-149 .shell.menu-pos-left,
  html body.bp-pdv-focus-149 .shell.menu-pos-right{--bp-side-w:68px!important}
  html body.bp-pdv-focus-149 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu{width:68px!important}
  html body.bp-pdv-focus-149 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu .nav-link{justify-content:center!important;padding-left:0!important;padding-right:0!important;font-size:0!important;gap:0!important}
  html body.bp-pdv-focus-149 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu .nav-link .nav-icon{margin:0!important}
  html body.bp-pdv-focus-149 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu :is(.app-menu-brand-copy,.brand-name,.brand-sub,.menu-category-title){display:none!important}
}

/* PDV · desconto percentual tem a mesma altura/área de edição da taxa de serviço. */
html body .pdv-discount-control{display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;gap:8px!important;align-items:stretch!important}
html body .pdv-discount-control :is(.select,.input),
html body #pdv-service-percent{height:44px!important;min-height:44px!important}

/* PDV/Comandas · formas de pagamento sem bloco de fundo no ícone e com eixo comum. */
html body .payment-options{display:grid!important;gap:10px!important}
html body .payment-option{
  width:100%!important;min-height:64px!important;
  display:grid!important;grid-template-columns:24px minmax(0,260px)!important;
  align-items:center!important;justify-content:center!important;column-gap:12px!important;
  text-align:left!important;padding:10px 18px!important
}
html body .payment-option .option-icon{
  width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;
  display:grid!important;place-items:center!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important
}
html body .payment-option>span:last-child{display:grid!important;grid-template-rows:auto auto!important;align-content:center!important;gap:2px!important;min-width:0!important}
html body .payment-option>span:last-child>b,
html body .payment-option>span:last-child>small{margin:0!important;text-align:left!important;line-height:1.25!important}
html body .payment-options .modal-actions{justify-content:center!important;align-items:center!important}

/* Comandas · cards e banner de detalhe. */
html body .comanda-search-149{position:relative!important;display:flex!important;align-items:center!important;gap:8px!important}
html body .comanda-search-149>.ui-icon{position:absolute!important;left:13px!important;z-index:1!important;color:var(--muted)!important}
html body .comanda-search-149>.input{padding-left:43px!important}
html body .comanda-card-main-149{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;margin-top:14px!important}
html body .comanda-card-149 h3{margin:0 0 5px!important;font-size:17px!important;line-height:1.2!important}
html body .comanda-code-149{display:block!important;font-size:11px!important;font-weight:600!important;color:var(--muted)!important}
html body .comanda-no-table-149{display:block!important;margin-top:4px!important;color:var(--muted)!important}
html body .comanda-table-big-149{display:grid!important;justify-items:end!important;align-content:start!important;min-width:74px!important}
html body .comanda-table-big-149 small{color:var(--muted)!important;font-size:9px!important}
html body .comanda-table-big-149 strong{font-size:28px!important;line-height:1!important}
html body .comanda-detail-banner-149{display:grid!important;gap:12px!important}
html body .comanda-banner-top-149{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important}
html body .comanda-banner-main-149{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important}
html body .comanda-banner-main-149 .page-title{margin:0!important}
html body .comanda-banner-client-149{font-size:17px!important;font-weight:600!important;margin-top:4px!important}
html body .comanda-banner-actions-149{display:flex!important;justify-content:center!important;align-items:center!important;gap:8px!important;flex-wrap:nowrap!important;overflow-x:auto!important;padding-bottom:1px!important}
html body .comanda-banner-actions-149>.btn{flex:0 0 auto!important;white-space:nowrap!important}
html body .modal.modal-md{width:min(560px,100%)!important}
@media(max-width:840px){
  html body .comanda-banner-actions-149>.btn{width:44px!important;min-width:44px!important;padding:0!important}
  html body .comanda-banner-actions-149>.btn>span:not(.ui-icon){display:none!important}
}

/* Agenda · mês visível e eventos arrastáveis. */
html body .agenda-event[draggable="true"]{cursor:grab!important}
html body .agenda-event[draggable="true"]:active{cursor:grabbing!important}
html body .agenda-month-name-149{font-size:14px!important;font-weight:600!important}
html body .agenda-upcoming-149{display:grid!important;gap:8px!important}

/* Produtos · nome apenas em maiúsculo, sem negrito; toggle não sobrepõe textos. */
html body .product-name-input{font-weight:400!important}
html body .product-active-switch-149{
  min-height:56px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;
  align-items:center!important;gap:14px!important;padding:10px 12px!important
}
html body .product-active-switch-149>span{min-width:0!important;display:grid!important;gap:2px!important;line-height:1.2!important}
html body .product-active-switch-149>span :is(b,small){position:static!important;white-space:normal!important;overflow-wrap:anywhere!important}
html body .product-active-switch-149>i{position:static!important;justify-self:end!important;margin:0!important}
html body .catalog-product-main>img,
html body .catalog-product-card .pdv-product-placeholder{
  width:72px!important;height:72px!important;min-width:72px!important;max-width:72px!important;
  object-fit:contain!important;flex:0 0 72px!important
}

/* Delivery · sem linha pesada no cabeçalho, endereço na ordem pedida e mapa ajustável. */
html body .delivery-card-top{border-bottom:0!important;padding-bottom:0!important}
html body .delivery-address-grid-149{display:grid!important;grid-template-columns:150px minmax(220px,1.4fr) 110px minmax(180px,1fr) minmax(190px,1fr)!important;gap:10px!important;align-items:end!important}
html body .delivery-address-grid-149>div{min-width:0!important}
html body .delivery-address-grid-149 .wide{grid-column:auto!important}
html body .delivery-map-149{position:relative!important;width:100%!important;height:280px!important;overflow:hidden!important;border:1px solid var(--border)!important;background:var(--surface2)!important}
html body .delivery-map-149 iframe{width:100%!important;height:100%!important;border:0!important;display:block!important;pointer-events:none!important}
html body .delivery-pin-149{position:absolute!important;transform:translate(-50%,-100%)!important;width:40px!important;height:40px!important;display:grid!important;place-items:center!important;padding:0!important;border:1px solid var(--primary)!important;background:var(--surface)!important;color:var(--primary)!important;cursor:grab!important;z-index:2!important}
html body .delivery-pin-149:active{cursor:grabbing!important}
html body .delivery-items-submodal-149{position:fixed!important;inset:0!important;z-index:70000!important;display:grid!important;place-items:center!important;padding:18px!important;background:rgba(2,6,23,.62)!important;backdrop-filter:blur(5px)!important}
html body .delivery-items-modal-149{max-height:92dvh!important;overflow:auto!important}
@media(max-width:1080px){html body .delivery-address-grid-149{grid-template-columns:repeat(2,minmax(0,1fr))!important}.delivery-address-grid-149>div:nth-child(2){grid-column:1/-1!important}}
@media(max-width:620px){html body .delivery-address-grid-149{grid-template-columns:1fr!important}.delivery-address-grid-149>div:nth-child(2){grid-column:auto!important}}
/* END IDMIX Tech v1.4.9 */

/* v1.4.9 · fechamento visual. */
html body .toast-icon>svg.ui-icon,
html body .stat-icon>svg.ui-icon{width:var(--bp-system-icon-size)!important;height:var(--bp-system-icon-size)!important;min-width:var(--bp-system-icon-size)!important;min-height:var(--bp-system-icon-size)!important;max-width:var(--bp-system-icon-size)!important;max-height:var(--bp-system-icon-size)!important}
html body .stat-icon{display:grid!important;place-items:center!important}
html body .agenda-month-label{font-size:14px!important;font-weight:600!important;text-transform:capitalize!important}
/* GLOBAL · regra final incondicional de bordas: independe do template visual ativo. */
html body :is(.btn.primary,.btn.green,.btn.active,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.color-btn.active,.settings-choice.active,.toggle-option.active){border-color:var(--primary)!important;border-style:solid!important}
html body :is(.btn.primary,.btn.green,.btn.active,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.color-btn.active,.settings-choice.active,.toggle-option.active):hover{border-color:var(--primary)!important;border-style:solid!important}
html body :is(.btn.danger,.btn.ghost-danger,.icon-danger,.icon-btn.danger,.comanda-delete-admin){border-color:var(--danger,#dc2626)!important;border-style:solid!important}
html body :is(.btn.outline,.btn.secondary,.theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),.pdv-category:not(.active),.pdv-cat:not(.active)):hover{border-color:var(--primary)!important;border-style:solid!important}


/* ===== IDMIX Tech v1.4.10 · Financeiro / PDV / Detalhes da Comanda ===== */

/* Financeiro · badge do caixa no banner. */
html body .cash-status-150{display:inline-flex!important;align-items:center!important;gap:8px!important}
html body .cash-status-150>.ui-icon{width:20px!important;height:20px!important;min-width:20px!important;flex:0 0 20px!important}

/* PDV · com item no carrinho, faixa de leitura/busca/categorias e carrinho permanecem abaixo do menu fixo. */
html body .pdv-fixed-tools-150{display:grid!important;gap:0!important;min-width:0!important;background:var(--bg)!important;z-index:18!important}
html body.bp-pdv-focus-149 .pdv-fixed-tools-150{position:sticky!important;top:0!important;flex:0 0 auto!important;padding:0 0 2px!important}
html body.bp-pdv-focus-149 .pdv-fixed-tools-150 .pdv-search-row{margin-bottom:10px!important}
html body.bp-pdv-focus-149 .pdv-fixed-tools-150 .pdv-categories{padding-bottom:10px!important;margin-bottom:0!important}
html body.bp-pdv-focus-149 .pdv-cart{position:sticky!important;top:0!important;align-self:start!important;height:100%!important;max-height:100%!important}
@media(min-width:901px){
  html body.bp-pdv-focus-149 .shell.menu-pos-top .pdv-page{height:calc(100dvh - var(--bp-header-h))!important}
  html body.bp-pdv-focus-149 .shell.menu-pos-top .pdv-shell{height:100%!important}
  html body.bp-pdv-focus-149 .shell.menu-pos-left .pdv-page,
  html body.bp-pdv-focus-149 .shell.menu-pos-right .pdv-page{height:100dvh!important}
}

/* Comanda · Voltar acima do banner e hierarquia solicitada. */
html body .comanda-detail-150{max-width:none!important}
html body .comanda-back-150{width:max-content!important;align-self:flex-start!important;margin:0 0 2px!important}
html body .comanda-banner-150{display:grid!important;grid-template-columns:1fr!important;gap:16px!important;align-items:stretch!important;overflow:visible!important}
html body .comanda-banner-main-150{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(150px,220px)!important;gap:24px!important;align-items:stretch!important;width:100%!important}
html body .comanda-banner-copy-150{align-self:center!important;min-width:0!important}
html body .comanda-banner-copy-150 .page-title{margin:0!important}
html body .comanda-customer-title-150{margin:5px 0 2px!important;font-size:18px!important;line-height:1.2!important;font-weight:600!important}
html body .comanda-banner-copy-150 .page-sub{margin:0!important}
html body .comanda-banner-right-150{position:relative!important;min-height:96px!important;display:grid!important;place-items:center!important;padding:26px 8px 4px!important}
html body .comanda-status-150{position:absolute!important;top:0!important;right:0!important}
html body .comanda-table-hero-150{width:100%!important;display:grid!important;place-items:center!important;text-align:center!important}
html body .comanda-table-hero-150 strong{font-size:31px!important;line-height:1!important;letter-spacing:-.035em!important;font-weight:700!important;white-space:nowrap!important}
html body .comanda-table-hero-150.no-table small{font-size:11px!important;color:var(--muted)!important}
html body .comanda-banner-actions-150{width:100%!important;display:flex!important;justify-content:center!important;align-items:center!important;gap:8px!important;flex-wrap:nowrap!important;overflow-x:auto!important;padding:0 0 1px!important}
html body .comanda-banner-actions-150>.btn{flex:0 0 auto!important;white-space:nowrap!important}

/* Comanda · − / número / + exatamente com a mesma caixa de 44 × 44 px. */
html body .comanda-detail-150 .comanda-stepper-150{display:grid!important;grid-template-columns:44px 44px 44px!important;align-items:center!important;gap:0!important;height:44px!important;min-height:44px!important;overflow:visible!important;background:transparent!important;border:0!important}
html body .comanda-detail-150 .comanda-stepper-150>button,
html body .comanda-detail-150 .comanda-stepper-150>b{
  width:44px!important;min-width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;max-height:44px!important;
  margin:0!important;padding:0!important;display:grid!important;place-items:center!important;box-sizing:border-box!important;
  border:1px solid var(--bp-button-border,var(--border))!important;background:var(--surface,#fff)!important;color:var(--fg,#172033)!important;border-radius:0!important;line-height:1!important
}
html body .comanda-detail-150 .comanda-stepper-150>b{font-size:12px!important;font-weight:700!important}
html body .comanda-detail-150 .comanda-stepper-150>button+ b,
html body .comanda-detail-150 .comanda-stepper-150>b+button{margin-left:-1px!important}
html body .comanda-detail-150 .comanda-stepper-150>button>.ui-icon{width:20px!important;height:20px!important;min-width:20px!important}

@media(max-width:760px){
  html body .comanda-banner-main-150{grid-template-columns:minmax(0,1fr) 132px!important;gap:12px!important}
  html body .comanda-table-hero-150 strong{font-size:25px!important}
  html body .comanda-banner-actions-150>.btn{width:44px!important;min-width:44px!important;padding:0!important}
  html body .comanda-banner-actions-150>.btn>span:not(.ui-icon){display:none!important}
}

/* END IDMIX Tech v1.4.10 */

/* ===== IDMIX Tech v1.4.11 · bordas, steppers, PDV e badge da comanda ===== */
/* GLOBAL · a regra-base histórica usa border:0; restauramos largura real antes de aplicar as cores. */
html body .btn{
  box-sizing:border-box!important;
  border-width:1px!important;
  border-style:solid!important;
  border-color:var(--bp-button-border,var(--border))!important;
}
html body :is(.btn.primary,.btn.green,.btn.active){
  border-color:var(--primary)!important;
}
html body :is(.btn.primary,.btn.green,.btn.active):hover{
  border-color:var(--primary)!important;
  transform:none!important;
}
html body :is(.btn.danger,.btn.ghost-danger){
  border-color:var(--danger,#dc2626)!important;
  background:var(--danger,#dc2626)!important;
  color:#fff!important;
}
html body :is(.btn.danger,.btn.ghost-danger):hover{
  border-color:var(--danger,#dc2626)!important;
  transform:none!important;
}
html body .btn.outline:hover{
  border-color:var(--primary)!important;
  transform:none!important;
}
/* Evita o recorte visual da borda superior causado pelo translateY histórico. */
html body .btn:hover{transform:none!important}

/* GLOBAL · todos os controles − / número / + usam exatamente a mesma caixa. */
html body :is(.qty,.inline-stepper,.quantity-stepper,.comanda-stepper-150){
  display:inline-grid!important;
  grid-template-columns:44px 44px 44px!important;
  gap:0!important;
  height:44px!important;
  min-height:44px!important;
  align-items:center!important;
  overflow:visible!important;
}
html body :is(.qty,.inline-stepper,.quantity-stepper,.comanda-stepper-150)>:is(button,b,span){
  box-sizing:border-box!important;
  width:44px!important;min-width:44px!important;max-width:44px!important;
  height:44px!important;min-height:44px!important;max-height:44px!important;
  margin:0!important;padding:0!important;
  display:grid!important;place-items:center!important;
  line-height:1!important;
}
html body :is(.qty,.inline-stepper,.quantity-stepper,.comanda-stepper-150)>:is(b,span){
  border:1px solid var(--bp-button-border,var(--border))!important;
  background:var(--surface,#fff)!important;
  color:var(--fg,#172033)!important;
}

/* PDV · ocultação determinística do banner quando o carrinho possui itens. */
html body.bp-pdv-focus-149 .pdv-page-head,
html body .pdv-page.pdv-cart-active-151>.pdv-page-head,
html body .pdv-page-head[hidden]{display:none!important}

/* Detalhe da comanda · badge imediatamente após o título. */
html body .comanda-title-row-151{display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:wrap!important}
html body .comanda-title-status-151{flex:0 0 auto!important;font-weight:700!important}
html body .comanda-title-status-151.is-open{background:#dcfce7!important;color:#166534!important;border:1px solid #86efac!important}
html body .comanda-title-status-151.is-closed{background:#fee2e2!important;color:#991b1b!important;border:1px solid #fca5a5!important}
html body .comanda-banner-right-150{padding-top:4px!important}
/* END IDMIX Tech v1.4.11 */



/* ===== IDMIX Tech v1.4.13 · PDV mobile operacional ===== */
.pdv-mobile-dock-1413{display:none}
@media(max-width:820px){
  html body .pdv-page:has(.pdv-mobile-dock-1413){padding-bottom:88px!important}
  html body .pdv-mobile-dock-1413{
    position:fixed!important;left:10px!important;right:10px!important;bottom:10px!important;z-index:2800!important;
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;
    min-height:60px!important;padding:8px 10px!important;background:var(--surface,#fff)!important;border:1px solid var(--border)!important;
  }
  html body:has(.shell.menu-pos-bottom) .pdv-mobile-dock-1413{bottom:calc(var(--bp-menu-h) + 10px)!important}
  html body .pdv-mobile-total-1413{display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important}
  html body .pdv-mobile-total-1413 span{font-size:11px!important;color:var(--muted)!important;line-height:1.2!important}
  html body .pdv-mobile-total-1413 b{font-size:18px!important;line-height:1.2!important;white-space:nowrap!important}
  html body .pdv-mobile-checkout-1413{min-width:132px!important;height:44px!important;margin:0!important}
}
/* END IDMIX Tech v1.4.13 */

/* ===== IDMIX Tech v1.4.14 · alinhamento PDV e blindagem responsiva ===== */
/* PDV · Ler código/QR + busca começam no mesmo eixo superior do carrinho. */
html body .pdv-shell{align-items:start!important}
html body .pdv-catalog,
html body .pdv-fixed-tools-150,
html body .pdv-search-row,
html body .pdv-cart{margin-top:0!important}
html body .pdv-search-row{
  min-width:0!important;
  min-height:50px!important;
  height:50px!important;
  display:flex!important;
  align-items:stretch!important;
  gap:10px!important;
}
html body .pdv-search-row>.pdv-scan-button{
  height:50px!important;
  min-height:50px!important;
  align-self:stretch!important;
  flex:0 0 auto!important;
  margin:0!important;
}
html body .pdv-search-row>.pdv-search-wrap{
  min-width:0!important;
  height:50px!important;
  min-height:50px!important;
  display:flex!important;
  align-items:stretch!important;
  margin:0!important;
}
html body .pdv-search-wrap .input{
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  margin:0!important;
}
html body .pdv-cart{align-self:start!important}

/* GLOBAL · blindagem responsiva final. Não redesenha módulos; impede estouro e recorte. */
html,body{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:clip}
html body *,html body *::before,html body *::after{box-sizing:border-box}
html body :is(.shell,.main,.content,.space,.grid,.card,.stat-card,.page-head,.page-head>div,.actions,.form-row,.settings-grid,.settings-group,.management-grid,.management-card,.table-wrap,.modal,.modal-body,.modal-content,.pdv-shell,.pdv-catalog,.pdv-fixed-tools-150,.pdv-products,.pdv-product,.pdv-cart,.kitchen,.kcol,.korder,.delivery-page-pro,.delivery-board,.delivery-card,.agenda-layout,.agenda-calendar,.agenda-upcoming){
  min-width:0!important;
  max-width:100%;
}
html body :is(input,select,textarea,.input,.select,.textarea){max-width:100%!important;box-sizing:border-box!important}
html body :is(img,video,canvas,iframe){max-width:100%!important}
html body :is(.page-title,.page-sub,.card,.stat-card,.pop-item,.table td,.table th,.modal,.info-note,.alert,.toast,.product-title,.comanda-card,.delivery-card){overflow-wrap:anywhere}
html body .table-wrap{max-width:100%!important;overflow-x:auto!important;overscroll-behavior-x:contain!important;-webkit-overflow-scrolling:touch}
html body .table-wrap>table{max-width:none!important}
html body .page-head{max-width:100%!important;flex-wrap:wrap!important}
html body .page-head>.actions{max-width:100%!important;flex-wrap:wrap!important}
html body .actions>.btn{max-width:100%!important}
html body :is(.popover,.user-menu-popover,.system-notification-popover,.ready-popover,.calls-popover){max-width:calc(100vw - 20px)!important}
html body #modal-root>.modal-wrap>.modal:not(.modal-fullscreen){width:min(100%,620px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}
html body #modal-root>.modal-wrap>.modal.modal-lg:not(.modal-fullscreen){width:min(900px,calc(100vw - 20px))!important}
html body #modal-root>.modal-wrap>.modal.modal-xl:not(.modal-fullscreen){width:min(1180px,calc(100vw - 20px))!important}

/* Notebooks/tablets: reduz colunas antes que os cards fiquem espremidos. */
@media(max-width:1180px){
  html body .g4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body .dashboard-main-grid{grid-template-columns:1fr!important}
  html body .management-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  html body .g3{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body .page-head>.actions{width:100%!important;justify-content:flex-start!important}
  html body :is(.content,.content>.space){width:100%!important}
  html body .mobile-nav{padding-bottom:max(9px,env(safe-area-inset-bottom))!important}
}
@media(max-width:760px){
  html body :is(.g2,.g3){grid-template-columns:1fr!important}
  html body .management-grid{grid-template-columns:1fr!important}
  html body .page-head>div:first-child{min-width:0!important;width:100%!important}
  html body .page-head>.actions{gap:7px!important}
  html body .page-head>.actions>.btn{flex:1 1 140px!important}
  html body .modal-actions{flex-wrap:wrap!important;justify-content:center!important}
  html body .modal-actions>.btn{flex:1 1 140px!important;max-width:100%!important}
}
@media(max-width:560px){
  /* A regra histórica de desktop com !important impedia a busca do PDV de quebrar corretamente em telas estreitas. */
  html body .pdv-search-row{
    height:50px!important;
    min-height:50px!important;
    display:grid!important;
    grid-template-columns:50px minmax(0,1fr)!important;
    align-items:stretch!important;
    gap:8px!important;
  }
  html body .pdv-search-row>.pdv-scan-button{
    width:50px!important;
    min-width:50px!important;
    max-width:50px!important;
    padding:0!important;
    justify-content:center!important;
  }
  html body .pdv-search-row>.pdv-scan-button>span:not(.ui-icon){display:none!important}
  html body .pdv-search-row>.pdv-search-wrap{min-width:0!important;width:100%!important}
  html body .pdv-search-wrap .input{min-width:0!important;width:100%!important}
  html body .page-head>.actions>.btn{flex:1 1 120px!important}
  html body .g4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:390px){
  html body .g4{grid-template-columns:1fr!important}
  html body .content{padding-left:10px!important;padding-right:10px!important}
  html body .card{padding-left:12px!important;padding-right:12px!important}
  html body .page-head>.actions>.btn{flex-basis:100%!important}
  html body .pdv-mobile-dock-1413{left:6px!important;right:6px!important;gap:6px!important;padding:7px!important}
  html body .pdv-mobile-checkout-1413{min-width:116px!important;padding-inline:10px!important}
}
@media(max-width:820px) and (pointer:coarse){
  /* Evita zoom automático em navegadores móveis ao focar campos pequenos. */
  html body :is(input,select,textarea,.input,.select,.textarea){font-size:16px!important}
}
/* END IDMIX Tech v1.4.14 */

/* ===== IDMIX Tech v1.4.15 · PDV · alinhamento de leitura/busca com carrinho ===== */
/* PDV · botão Ler código/QR e Buscar produto têm exatamente a mesma caixa visual. */
html body .pdv-search-row>.pdv-scan-button,
html body .pdv-search-row>.pdv-search-wrap,
html body .pdv-search-row>.pdv-search-wrap>.input{
  box-sizing:border-box!important;
  height:50px!important;
  min-height:50px!important;
  max-height:50px!important;
  margin-top:0!important;
  margin-bottom:0!important;
}
html body .pdv-search-row>.pdv-scan-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding-top:0!important;
  padding-bottom:0!important;
  line-height:1!important;
  white-space:nowrap!important;
}
html body .pdv-search-row>.pdv-search-wrap{flex:1 1 auto!important;min-width:0!important}
html body .pdv-search-row>.pdv-search-wrap>.input{width:100%!important}

/* Com carrinho ativo, ferramentas e carrinho descem juntos e permanecem no mesmo eixo. */
html body .pdv-page.pdv-cart-active-151 .pdv-shell{padding-top:14px!important}
@media(min-width:821px){
  html body .shell.menu-pos-top .pdv-page.pdv-cart-active-151 .pdv-fixed-tools-150,
  html body .shell.menu-pos-top .pdv-page.pdv-cart-active-151 .pdv-cart{
    top:calc(var(--bp-header-h) + 14px)!important;
  }
  html body :is(.shell.menu-pos-left,.shell.menu-pos-right,.shell.menu-pos-bottom) .pdv-page.pdv-cart-active-151 .pdv-fixed-tools-150,
  html body :is(.shell.menu-pos-left,.shell.menu-pos-right,.shell.menu-pos-bottom) .pdv-page.pdv-cart-active-151 .pdv-cart{
    top:14px!important;
  }
}
@media(max-width:820px){
  html body .pdv-page.pdv-cart-active-151 .pdv-shell{padding-top:12px!important}
  html body .pdv-page.pdv-cart-active-151 .pdv-fixed-tools-150{top:68px!important}
}
/* END IDMIX Tech v1.4.15 */


/* ===== IDMIX Tech v1.4.16 · Google Maps Delivery ===== */
html body .delivery-map-149{min-height:300px!important}
html body .delivery-google-map-1416{width:100%!important;height:100%!important;min-height:300px!important;display:block!important}
html body .delivery-map-message-1416{min-height:150px;display:flex;align-items:center;justify-content:center;gap:10px;padding:24px;text-align:center;color:var(--muted)}
html body .delivery-map-message-1416.error{color:var(--danger,#dc2626)}
html body .delivery-map-message-1416 .ui-icon{width:20px!important;height:20px!important;flex:0 0 20px!important}
/* O marcador customizado antigo deixa de ser usado; o mapa usa o pin nativo do Google Maps. */
html body #delivery-pin-149{display:none!important}
/* END IDMIX Tech v1.4.16 */

/* ===== IDMIX Tech v1.4.19 · Delivery Google Maps / endereço único ===== */
html body .delivery-new-order-149 #d-address{display:none!important}
html body .delivery-new-order-149 #d-cep-fields{display:none!important}
/* END IDMIX Tech v1.4.19 */



/* ===== IDMIX Tech v1.4.20 · Google Maps robusto no Delivery ===== */
html body .delivery-map-149{position:relative!important;min-height:300px!important}
html body .delivery-map-status-1420{position:absolute;left:10px;right:10px;bottom:10px;z-index:3;padding:9px 11px;border:1px solid var(--border);background:rgba(255,255,255,.94);color:var(--text);font-size:11px;line-height:1.35;pointer-events:none}
html.dark body .delivery-map-status-1420{background:rgba(15,23,42,.94)}
html body .delivery-map-status-1420.success{border-left:3px solid var(--success,#16a34a)}
html body .delivery-map-status-1420.warning{border-left:3px solid var(--warning,#d97706)}
html body .delivery-map-status-1420.error{border-left:3px solid var(--danger,#dc2626)}
html body .delivery-google-fallback-1420{display:block!important;width:100%!important;height:300px!important;border:0!important;pointer-events:auto!important}
/* END IDMIX Tech v1.4.20 */


/* ===== IDMIX Tech v1.4.27 · mapa clean + modal produto compacto ===== */
/* Google: controles nativos desligados por JS; CSS reforça a ausência de botões sem tocar na atribuição obrigatória. */
html body #delivery-map-149 .gm-style-mtc,
html body #delivery-map-149 .gm-fullscreen-control,
html body #delivery-map-149 .gm-bundled-control,
html body #delivery-map-149 .gm-svpc,
html body #delivery-map-149 button.gm-control-active{display:none!important}
html body #delivery-map-149{background:linear-gradient(135deg,#eef2f5 0%,#e7edf2 100%)!important;border:1px solid color-mix(in srgb,var(--border) 72%,#94a3b8)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)!important}
html body #delivery-map-149 .delivery-google-map-1416{filter:saturate(.82) contrast(.98)!important}
html body #delivery-map-149 .delivery-open-maps-1427{
  position:absolute!important;right:12px!important;top:12px!important;z-index:6!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  min-height:38px!important;padding:8px 12px!important;border:1px solid color-mix(in srgb,var(--border) 70%,#94a3b8)!important;
  background:color-mix(in srgb,var(--surface) 94%,transparent)!important;color:var(--fg)!important;
  font:inherit!important;font-size:11px!important;font-weight:600!important;line-height:1!important;cursor:pointer!important;
  backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;box-shadow:none!important;
  border-radius:8px!important
}
html body #delivery-map-149 .delivery-open-maps-1427:hover{border-color:var(--primary)!important;color:var(--primary)!important;transform:none!important}
html body #delivery-map-149 .delivery-open-maps-1427>.ui-icon{width:16px!important;height:16px!important;min-width:16px!important;flex:0 0 16px!important}

/* Modal de produto: na frente da aplicação, mas atrás do popover de Alertas e dos toasts. */
html body #modal-root.product-modal-layer-1427{z-index:90500!important}
html body #modal-root.product-modal-layer-1427>.modal-wrap{z-index:90500!important}
html body .system-notification-popover{z-index:91000!important}
html body #modal-root .product-modal-1427{width:min(760px,calc(100vw - 36px))!important;max-width:760px!important}
html body #modal-root .product-modal-1427 .modal-body{padding-left:18px!important;padding-right:18px!important}
html body #modal-root .product-modal-1427 .product-form{gap:12px!important}
html body #modal-root .product-modal-1427 .product-form .form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important}
html body #modal-root .product-modal-1427 .product-form :is(.input,.select,.textarea){width:100%!important;min-width:0!important}
html body #modal-root .product-modal-1427 .product-code-tools{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}
@media(max-width:800px){
  html body #modal-root .product-modal-1427{width:100%!important;max-width:none!important}
  html body #modal-root .product-modal-1427 .product-form .form-row{grid-template-columns:1fr!important}
  html body #modal-root .product-modal-1427 .product-code-tools{grid-template-columns:1fr!important}
}
/* END IDMIX Tech v1.4.27 */


/* ===== IDMIX Tech v1.4.28 · Delivery padronizado + rota ===== */
/* Modal Adicionar item do Delivery segue o mesmo tamanho/estrutura visual de Comandas. */
html body .delivery-items-submodal-149{z-index:70000!important}
html body .delivery-items-modal-1428{width:min(820px,calc(100vw - 36px))!important;max-width:820px!important}
html body .delivery-items-modal-1428 .modal-body{padding:0!important}
html body .delivery-items-modal-1428 .picker-head{margin-bottom:14px!important}
html body .delivery-items-modal-1428 .product-list{max-height:62dvh!important;overflow:auto!important;padding-right:2px!important}

/* Botões de Delivery herdam integralmente o padrão global; nenhuma aparência paralela. */
html body :is(.delivery-page-pro,.delivery-new-order,.delivery-detail-pro,.delivery-items-submodal-149) .btn{font-family:inherit!important}

/* Controles nativos do Maps ficam ocultos. Não toca em créditos/atribuição legal. */
html body #delivery-map-149 .gm-style-mtc,
html body #delivery-map-149 .gm-fullscreen-control,
html body #delivery-map-149 .gm-bundled-control,
html body #delivery-map-149 .gm-bundled-control-on-bottom,
html body #delivery-map-149 .gm-svpc,
html body #delivery-map-149 button.gm-control-active{display:none!important}
html body #delivery-map-149 .delivery-open-maps-1427{display:none!important}

/* Ação própria do IDMIX Tech para navegação fica fora do mapa e usa o botão padrão do sistema. */
html body .delivery-map-actions-1428{display:flex!important;justify-content:flex-end!important;align-items:center!important;margin-top:8px!important}
html body .delivery-map-actions-1428 .delivery-route-client-1428{min-width:0!important}

/* No iframe de contingência, cobre somente os cantos onde o Google injeta controles.
 * A faixa inferior de atribuição permanece livre. */
html body #delivery-map-149.delivery-map-fallback-1428{position:relative!important;overflow:hidden!important}
html body #delivery-map-149.delivery-map-fallback-1428 .delivery-google-fallback-1420{pointer-events:auto!important}
html body #delivery-map-149 .delivery-map-mask-1428{position:absolute!important;z-index:5!important;display:block!important;pointer-events:none!important;background:color-mix(in srgb,var(--surface) 88%,transparent)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;border:1px solid color-mix(in srgb,var(--border) 80%,transparent)!important}
html body #delivery-map-149 .delivery-map-mask-1428.tl{left:0!important;top:0!important;width:205px!important;height:58px!important;border-width:0 1px 1px 0!important}
html body #delivery-map-149 .delivery-map-mask-1428.tr{right:0!important;top:0!important;width:64px!important;height:64px!important;border-width:0 0 1px 1px!important}
html body #delivery-map-149 .delivery-map-mask-1428.br{right:0!important;bottom:28px!important;width:66px!important;height:126px!important;border-width:1px 0 0 1px!important}
@media(max-width:700px){
  html body .delivery-items-modal-1428{width:100%!important;max-width:none!important}
  html body #delivery-map-149 .delivery-map-mask-1428.tl{width:180px!important;height:56px!important}
}
/* END IDMIX Tech v1.4.28 */

/* ===== IDMIX Tech v1.4.29 · Editor de páginas + badges NOVO + mapa sem máscaras ===== */
html body #delivery-map-149 .delivery-map-mask-1428{display:none!important;visibility:hidden!important;opacity:0!important;width:0!important;height:0!important;border:0!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}

.bp-new-badge-1429{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:16px!important;padding:2px 6px!important;margin-left:6px!important;border-radius:999px!important;background:color-mix(in srgb,var(--primary) 14%,var(--surface))!important;border:1px solid color-mix(in srgb,var(--primary) 38%,var(--border))!important;color:var(--primary)!important;font-size:8px!important;font-weight:800!important;line-height:1!important;letter-spacing:.06em!important;vertical-align:middle!important;white-space:nowrap!important}
.btn>.bp-new-badge-1429{margin-left:4px!important}

html body .content>.space.bp-layout-grid-1429{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:var(--bp-ui-gap,16px)!important;align-items:start!important}
html body .content>.space.bp-layout-grid-1429>*{min-width:0!important}
@media(max-width:760px){html body .content>.space.bp-layout-grid-1429>*{grid-column:1/-1!important}}

/* END IDMIX Tech v1.4.29 */

/* ===== IDMIX Tech v1.4.30 · editor interno + rota primária ===== */
html body #delivery-map-149{position:relative!important;overflow:hidden!important}
html body #delivery-map-149 .delivery-route-overlay-1430{
  position:absolute!important;right:12px!important;bottom:12px!important;z-index:12!important;
  box-shadow:none!important;min-height:38px!important
}
html body #delivery-map-149 .delivery-open-maps-1427{display:none!important}
html body .delivery-map-actions-1428{display:none!important}
html body #delivery-map-149 .gm-style,html body #delivery-map-149 .delivery-google-map-1416{pointer-events:auto!important}
html body #delivery-map-149 img{user-select:none!important;-webkit-user-drag:none!important}

/* END IDMIX Tech v1.4.30 */


/* ===== IDMIX Tech 1.0.0 · Delivery/PDV estáveis ===== */
/* Delivery: modal Adicionar item com a mesma caixa/estrutura de Comandas. */
html body .delivery-items-submodal-149{z-index:70000!important;background:rgba(39,55,70,.28)!important;backdrop-filter:blur(1px)!important}
html body .delivery-items-submodal-149 .delivery-items-modal-1431{width:min(820px,100%)!important;max-width:820px!important}
html body .delivery-items-submodal-149 .modal-body{padding:18px 20px 20px!important}
html body .delivery-items-submodal-149 .picker-head{margin-bottom:14px!important}
html body .delivery-items-submodal-149 .restored-product-picker{max-height:62dvh!important;overflow:auto!important;padding-right:2px!important}

/* Rota: canto superior esquerdo, exatamente sobre a ação original do Maps. */
html body #delivery-map-149 .delivery-route-overlay-1430{
  position:absolute!important;left:10px!important;top:10px!important;right:auto!important;bottom:auto!important;z-index:40!important;
  min-height:40px!important;box-shadow:none!important
}
html body #delivery-map-149 .delivery-open-maps-1427{display:none!important}

/* PDV: o carrinho ocupa o centro vertical da faixa disponível, com respiro equivalente acima/abaixo. */
@media(min-width:821px){
  html body .pdv-shell{align-items:stretch!important;min-height:calc(100dvh - var(--bp-header-h) - 178px)!important}
  html body .pdv-cart{position:relative!important;top:auto!important;transform:none!important;align-self:center!important;margin-block:auto!important;max-height:calc(100dvh - var(--bp-header-h) - 54px)!important;overflow:auto!important}
}
/* Cartões nunca mudam de dimensão quando entram no carrinho. */
html body .pdv-products .pdv-product.pdv-product-fixed-1431{position:relative!important;height:190px!important;min-height:190px!important;max-height:190px!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}
html body .pdv-products .pdv-product.pdv-product-fixed-1431>img,
html body .pdv-products .pdv-product.pdv-product-fixed-1431>.pdv-product-placeholder{width:100%!important;height:86px!important;min-height:86px!important;max-height:86px!important;object-fit:cover!important;flex:0 0 86px!important}
html body .pdv-products .pdv-product.pdv-product-fixed-1431 .pdv-product-body{min-height:0!important;flex:1 1 auto!important;overflow:hidden!important}
html body .pdv-products .pdv-product.pdv-product-fixed-1431 .pdv-product-body>b{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;min-height:2.4em!important}
html body .pdv-in-cart-1431{position:absolute!important;right:8px!important;top:8px!important;z-index:3!important;display:inline-flex!important;align-items:center!important;min-height:22px!important;padding:4px 7px!important;border-radius:999px!important;background:var(--primary)!important;color:#fff!important;font-size:9px!important;font-weight:800!important;line-height:1!important;box-shadow:0 4px 14px rgba(15,23,42,.18)!important}
html body .pdv-in-cart-1431.hidden{display:none!important}
@media(max-width:700px){html body .pdv-products .pdv-product.pdv-product-fixed-1431{height:170px!important;min-height:170px!important;max-height:170px!important}html body .pdv-products .pdv-product.pdv-product-fixed-1431>img,html body .pdv-products .pdv-product.pdv-product-fixed-1431>.pdv-product-placeholder{height:72px!important;min-height:72px!important;max-height:72px!important;flex-basis:72px!important}}

/* Foto no carrinho do PDV. */
html body .pdv-line-top-1431{align-items:center!important}
html body .pdv-cart-product-1431{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important;flex:1 1 auto!important}
html body .pdv-cart-thumb-1431{width:46px!important;height:46px!important;min-width:46px!important;flex:0 0 46px!important;object-fit:cover!important;border-radius:8px!important;border:1px solid var(--border)!important;background:var(--surface2)!important}
html body .pdv-cart-thumb-placeholder-1431{display:grid!important;place-items:center!important;color:var(--muted)!important}
html body .pdv-cart-copy-1431{display:grid!important;gap:3px!important;min-width:0!important}
html body .pdv-cart-copy-1431 b{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
/* END IDMIX Tech 1.0.0 */


/* ===== IDMIX Tech 1.0.1 ===== */
/* O clique sempre pertence ao controle inteiro, inclusive quando o ponteiro está sobre o SVG. */
html body :is(button,a,[role="button"]) :is(svg.ui-icon,svg.ui-icon *,.nav-icon,.nav-icon *,.option-icon,.option-icon *){pointer-events:none!important}

/* Dashboard · estado do caixa como título simples, sem badge ou sombreado. */
html body .cash-state-title-101{
  display:flex!important;align-items:center!important;gap:8px!important;
  margin:0 0 6px!important;font-size:17px!important;font-weight:800!important;
  text-shadow:none!important;box-shadow:none!important;background:none!important;
}
html body .cash-state-title-101>.ui-icon{width:20px!important;height:20px!important;min-width:20px!important;flex:0 0 20px!important;color:var(--primary)!important;filter:none!important;box-shadow:none!important}
html body .closed-cash-card{grid-template-columns:1fr auto!important;box-shadow:none!important}
html body .dashboard-cash-open{box-shadow:none!important}
@media(max-width:700px){html body .closed-cash-card{grid-template-columns:1fr!important}}
/* END IDMIX Tech 1.0.1 */


/* Ajustes atuais: perfil, PDV compacto e máscaras. */
.user-menu-popover .user-menu-heading-row-102{padding:2px 1px 10px;margin-bottom:4px;border-bottom:1px solid var(--border)}
.user-menu-popover .user-menu-heading-102{font-size:14px!important;font-weight:700!important;line-height:1.25!important;margin:0!important;color:var(--fg)!important}
.user-menu-popover .user-profile-edit-102,
.user-menu-popover .user-logout-102{width:100%;min-height:38px;margin-top:4px!important;padding:9px 10px!important;border-radius:var(--bp-control-radius,8px)!important;font-size:12px!important;font-weight:600!important;text-align:left!important;box-shadow:none!important}
.user-menu-popover .user-profile-edit-102{background:var(--surface2)!important;color:var(--fg)!important;border:1px solid var(--border)!important}
.user-menu-popover .user-profile-edit-102:hover{border-color:var(--primary)!important;color:var(--primary)!important}
.user-menu-popover .user-logout-102{background:color-mix(in srgb,var(--danger) 7%,var(--surface))!important;color:var(--danger)!important;border:1px solid color-mix(in srgb,var(--danger) 28%,var(--border))!important}

.pdv-page>.pdv-page-head{display:none!important}
.pdv-cart-column-102{display:flex;flex-direction:column;gap:10px;min-width:0;align-self:start}
.pdv-cart-column-102>.pdv-recent-top-102{width:100%;min-height:42px;justify-content:center!important}
.pdv-cart-column-102>.pdv-cart{width:100%;margin:0!important}

@media(min-width:901px){
  body.bp-pdv-menu-retracted-102 .shell.menu-pos-top .app-menu>.nav-link,
  body.bp-pdv-menu-retracted-102 .shell.menu-pos-bottom .app-menu>.nav-link,
  body.bp-pdv-menu-retracted-102 .shell.menu-pos-top .app-menu>.desktop-more-wrap>.nav-link,
  body.bp-pdv-menu-retracted-102 .shell.menu-pos-bottom .app-menu>.desktop-more-wrap>.nav-link{
    width:46px!important;min-width:46px!important;max-width:46px!important;padding-left:0!important;padding-right:0!important;justify-content:center!important;gap:0!important
  }
  body.bp-pdv-menu-retracted-102 .shell.menu-pos-top .app-menu>.nav-link>span:last-child,
  body.bp-pdv-menu-retracted-102 .shell.menu-pos-bottom .app-menu>.nav-link>span:last-child,
  body.bp-pdv-menu-retracted-102 .shell.menu-pos-top .app-menu>.desktop-more-wrap>.nav-link>span:last-child,
  body.bp-pdv-menu-retracted-102 .shell.menu-pos-bottom .app-menu>.desktop-more-wrap>.nav-link>span:last-child{display:none!important}
  body.bp-pdv-menu-retracted-102 .shell.menu-pos-top .app-menu>.desktop-more-wrap,
  body.bp-pdv-menu-retracted-102 .shell.menu-pos-bottom .app-menu>.desktop-more-wrap{flex:0 0 46px!important;width:46px!important;min-width:46px!important}
  body.bp-pdv-menu-retracted-102 :is(.shell.menu-pos-left,.shell.menu-pos-right){--bp-side-w:68px!important}
  body.bp-pdv-menu-retracted-102 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu{width:68px!important}
  body.bp-pdv-menu-retracted-102 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu .right-nav-only .nav-link{justify-content:center!important;padding-left:0!important;padding-right:0!important;gap:0!important}
  body.bp-pdv-menu-retracted-102 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu .right-nav-only .nav-link>span:last-child{display:none!important}
  body.bp-pdv-menu-retracted-102 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu .right-nav-only .nav-icon{margin:0!important}
}
@media(max-width:820px){
  .pdv-cart-column-102{width:100%}
  .pdv-cart-column-102>.pdv-recent-top-102{min-height:44px}
}

/* ===== IDMIX Tech 1.0.3 ===== */

/* Alertas: canto superior direito no desktop; faixa lateral identifica o tipo. */
html body #toast-root{position:fixed!important;left:auto!important;right:16px!important;bottom:auto!important;top:calc(var(--bp-topbar-h,64px) + 12px)!important;width:min(380px,calc(100% - 32px))!important;transform:none!important;z-index:122000!important;gap:9px!important;pointer-events:none!important}
html[data-menu-position="top"] body #toast-root{top:calc(var(--bp-topbar-h,64px) + var(--bp-menu-h,54px) + 12px)!important}
html body:has(.urgent-call-banner:not(.hidden)) #toast-root{top:calc(var(--bp-topbar-h,64px) + 68px)!important}
html body .toast.toast-103{--toast-accent:var(--primary);position:relative!important;display:grid!important;grid-template-columns:28px minmax(0,1fr) 28px!important;align-items:start!important;gap:10px!important;width:100%!important;padding:12px 10px 12px 12px!important;background:var(--surface,#fff)!important;color:var(--fg)!important;border:1px solid var(--border)!important;border-left:4px solid var(--toast-accent)!important;border-radius:var(--bp-control-radius,9px)!important;box-shadow:none!important;backdrop-filter:none!important;opacity:0!important;transform:translateX(18px)!important;transition:opacity .2s ease,transform .2s ease!important;pointer-events:auto!important}
html body .toast.toast-103.show{opacity:1!important;transform:none!important}
html body .toast.toast-103.success{--toast-accent:var(--green,#16a34a)}
html body .toast.toast-103.warning{--toast-accent:var(--warning,#d99a12)}
html body .toast.toast-103.error{--toast-accent:var(--danger,#dc2626)}
html body .toast.toast-103.info{--toast-accent:var(--primary,#168bd2)}
html body .toast.toast-103 .toast-icon{width:28px!important;height:28px!important;min-width:28px!important;display:grid!important;place-items:center!important;color:var(--toast-accent)!important;background:color-mix(in srgb,var(--toast-accent) 9%,var(--surface2))!important;border:0!important;border-radius:50%!important}
html body .toast.toast-103 .toast-icon .ui-icon{width:17px!important;height:17px!important;min-width:17px!important;max-width:17px!important;stroke:currentColor!important}
html body .toast-copy-103{display:grid!important;gap:2px!important;min-width:0!important;line-height:1.3!important}
html body .toast-copy-103>b{font-size:12px!important;font-weight:750!important;color:var(--fg)!important}
html body .toast-copy-103>span{font-size:11.5px!important;font-weight:450!important;color:var(--muted)!important;overflow-wrap:anywhere!important}
html body .toast-close-103{width:28px!important;height:28px!important;min-width:28px!important;padding:0!important;margin:0!important;display:grid!important;place-items:center!important;border:0!important;background:transparent!important;color:var(--muted)!important;cursor:pointer!important;border-radius:6px!important}
html body .toast-close-103:hover{background:var(--surface2)!important;color:var(--fg)!important}
html body .toast-close-103 .ui-icon{width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important}
@media(max-width:760px){html body #toast-root{left:10px!important;right:10px!important;top:calc(var(--bp-topbar-h,56px) + 8px)!important;width:auto!important;transform:none!important}html[data-menu-position="top"] body #toast-root{top:calc(var(--bp-topbar-h,56px) + var(--bp-menu-h,54px) + 8px)!important}html body .toast.toast-103{transform:translateY(-10px)!important}html body .toast.toast-103.show{transform:none!important}}

/* Cores personalizadas do menu. Sem configuração, o visual anterior permanece. */
html body .app-menu{background:var(--bp-menu-bg,var(--ud-navy))!important}
html body .app-menu :is(.nav-link,.nav-link .nav-icon,.nav-link .ui-icon){color:var(--bp-menu-fg,inherit)!important}
html body .app-menu .nav-link>span:last-child{color:var(--bp-menu-fg,inherit)!important}
html body .app-menu .nav-link:hover{background:color-mix(in srgb,var(--bp-menu-fg,#fff) 10%,transparent)!important}
html body .app-menu .nav-link.active{background:color-mix(in srgb,var(--bp-menu-fg,#fff) 14%,transparent)!important;color:var(--bp-menu-fg,#fff)!important}

/* Gerador de paleta em Configurações. */
html body .bp-palette-builder-103{padding-top:14px!important;border-top:1px solid var(--border)!important}
html body .bp-palette-head-103{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:12px!important;flex-wrap:wrap!important}
html body .bp-palette-head-103 .label{margin:0 0 3px!important}
html body .bp-palette-head-103 p{margin:0!important;max-width:650px!important}
html body .bp-current-colors-103{display:flex!important;gap:10px!important;align-items:center!important;flex-wrap:wrap!important}
html body .bp-current-colors-103>span{display:inline-flex!important;align-items:center!important;gap:6px!important;font-size:11px!important;color:var(--muted)!important}
html body .bp-current-colors-103 i{display:block!important;width:20px!important;height:20px!important;border:1px solid var(--border)!important;border-radius:6px!important}
html body .bp-palette-generator-103{display:grid!important;grid-template-columns:50px minmax(110px,160px) auto auto!important;gap:8px!important;align-items:center!important;margin-top:12px!important}
html body #bp-palette-seed-103{width:50px!important;height:42px!important;padding:3px!important;border:1px solid var(--border)!important;background:var(--surface)!important;border-radius:var(--bp-control-radius,8px)!important;cursor:pointer!important}
html body #bp-palette-hex-103{height:42px!important;text-transform:uppercase!important;font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important}
html body .bp-palette-generator-103>.btn{height:42px!important;min-height:42px!important}
html body .bp-palette-list-103{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important;margin-top:10px!important}
html body .bp-palette-item-103{display:grid!important;gap:7px!important;padding:9px!important;border:1px solid var(--border)!important;background:var(--surface2)!important;border-radius:var(--bp-control-radius,8px)!important;min-width:0!important}
html body .bp-palette-color-103{display:block!important;width:100%!important;height:48px!important;border:1px solid color-mix(in srgb,var(--fg) 12%,transparent)!important;border-radius:6px!important}
html body .bp-palette-item-103 code{font-size:10.5px!important;color:var(--muted)!important;text-align:center!important}
html body .bp-palette-actions-103{display:grid!important;grid-template-columns:1fr 1fr!important;gap:5px!important}
html body .bp-palette-actions-103>.btn{width:100%!important;min-width:0!important;min-height:34px!important;height:34px!important;padding:0 7px!important;font-size:10.5px!important}
html body .bp-palette-actions-103>.btn .ui-icon{width:15px!important;height:15px!important;min-width:15px!important;max-width:15px!important}
@media(max-width:900px){html body .bp-palette-list-103{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){html body .bp-palette-generator-103{grid-template-columns:50px minmax(0,1fr)!important}html body .bp-palette-generator-103>.btn{grid-column:1/-1!important;width:100%!important}}
@media(max-width:430px){html body .bp-palette-list-103{grid-template-columns:1fr!important}}

/* PDV: busca/categorias sempre fixas no fluxo e carrinho acessível no desktop. */
:root{--bp-pdv-sticky-top:calc(var(--bp-topbar-h,64px) + 10px)}
html[data-menu-position="top"]{--bp-pdv-sticky-top:calc(var(--bp-topbar-h,64px) + var(--bp-menu-h,54px) + 10px)}
html body .pdv-fixed-tools-150{position:sticky!important;top:var(--bp-pdv-sticky-top)!important;z-index:90!important;padding:0 0 4px!important;background:var(--bg)!important}
html body .pdv-fixed-tools-150 .pdv-search-row{margin-bottom:9px!important}
html body .pdv-fixed-tools-150 .pdv-categories{padding-bottom:8px!important;margin-bottom:0!important;white-space:nowrap!important;overflow-x:auto!important}
html body .pdv-search-wrap:focus-within{outline:0!important;outline-offset:0!important;box-shadow:none!important;border-radius:var(--bp-control-radius,8px)!important}
html body #pdv-search.pdv-search-selected-103{caret-color:var(--primary)!important}
html body .pdv-cart-column-102>.pdv-recent-top-102{height:50px!important;min-height:50px!important;max-height:50px!important;margin:0!important;width:100%!important;justify-content:center!important}
@media(min-width:821px){html body .pdv-cart-column-102{position:sticky!important;top:var(--bp-pdv-sticky-top)!important;align-self:start!important;max-height:calc(100dvh - var(--bp-pdv-sticky-top) - 10px)!important;overflow:hidden!important}html body .pdv-cart-column-102>.pdv-cart{position:relative!important;top:auto!important;transform:none!important;align-self:stretch!important;margin:0!important;max-height:calc(100dvh - var(--bp-pdv-sticky-top) - 70px)!important;overflow:auto!important}}
@media(max-width:820px){html body .pdv-fixed-tools-150{top:calc(var(--bp-topbar-h,56px) + 6px)!important}html[data-mobile-menu-position="top"] body .pdv-fixed-tools-150{top:calc(var(--bp-topbar-h,56px) + var(--bp-menu-h,54px) + 6px)!important}html body .pdv-cart-column-102{position:relative!important;top:auto!important;max-height:none!important;overflow:visible!important}html body .pdv-cart-column-102>.pdv-cart{max-height:none!important;overflow:visible!important}}

/* Botões textuais e ícones: área inteira clicável. */
html body :is(button,.btn)>.ui-icon,html body :is(button,.btn)>.ui-icon *{pointer-events:none!important}
/* END IDMIX Tech 1.0.3 */
/* 1.0.3 · a cor escolhida para Menu também acompanha a navegação móvel. */
html body .mobile-nav{background:var(--bp-menu-bg,var(--surface))!important}
html body .mobile-nav :is(.nav-link,.nav-icon,.ui-icon),html body .mobile-nav .nav-link>span:last-child{color:var(--bp-menu-fg,inherit)!important}
html body .mobile-nav .nav-link.active{background:color-mix(in srgb,var(--bp-menu-fg,#fff) 14%,transparent)!important;color:var(--bp-menu-fg,inherit)!important}


/* ===== IDMIX Tech 1.0.5 · PDV fixo, menu hover e pagamentos ===== */

/* Bordas dos botões permanecem visíveis também no hover. */
html body :is(button,.btn,.theme-btn,.filter-btn,.payment-option,.pdv-cat,.pdv-category,.icon-btn,.top-btn,.top-user):not(:disabled){
  border-style:solid!important;
  border-width:1px!important;
}
html body :is(.btn,.theme-btn,.filter-btn,.payment-option,.pdv-cat,.pdv-category,.icon-btn):hover{
  border-color:color-mix(in srgb,var(--primary) 70%,var(--border))!important;
}
html body :is(.btn.primary,.btn.green,.btn.danger,.btn.ghost-danger):hover{
  border-color:currentColor!important;
}

/* Categorias são somente texto. */
html body :is(.pdv-cat,.pdv-category)>.ui-icon,
html body :is(.pdv-cat,.pdv-category)>.option-icon{display:none!important}

/* Menu do PDV expande no hover e retorna ao retraído ao sair. */
@media(min-width:901px){
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 :is(.shell.menu-pos-left,.shell.menu-pos-right){--bp-side-w:68px!important}
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu{width:250px!important}
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu .right-nav-only .nav-link{justify-content:flex-start!important;padding-left:14px!important;padding-right:14px!important;gap:10px!important}
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 :is(.shell.menu-pos-left,.shell.menu-pos-right) .app-menu .right-nav-only .nav-link>span:last-child{display:inline!important}
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 .shell.menu-pos-top .app-menu>.nav-link,
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 .shell.menu-pos-bottom .app-menu>.nav-link,
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 .shell.menu-pos-top .app-menu>.desktop-more-wrap>.nav-link,
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 .shell.menu-pos-bottom .app-menu>.desktop-more-wrap>.nav-link{width:auto!important;min-width:auto!important;padding-left:12px!important;padding-right:12px!important;gap:8px!important}
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 .shell.menu-pos-top .app-menu>.nav-link>span:last-child,
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 .shell.menu-pos-bottom .app-menu>.nav-link>span:last-child,
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 .shell.menu-pos-top .app-menu>.desktop-more-wrap>.nav-link>span:last-child,
  body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 .shell.menu-pos-bottom .app-menu>.desktop-more-wrap>.nav-link>span:last-child{display:inline!important}
}

/* PDV desktop/tablet: controles e carrinho ficam no lugar; só a grade principal rola. */
@media(min-width:821px){
  html body:has(.pdv-page.pdv-layout-fixed-104){overflow:hidden!important}
  html body:has(.pdv-page.pdv-layout-fixed-104) .content{overflow:hidden!important}
  html body .pdv-page.pdv-layout-fixed-104{
    height:calc(100dvh - var(--bp-pdv-sticky-top) - 8px)!important;
    min-height:0!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    gap:0!important;
  }
  html body .pdv-page.pdv-layout-fixed-104 .pdv-shell{
    flex:1 1 auto!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
    align-items:stretch!important;
    padding:0!important;
  }
  html body .pdv-page.pdv-layout-fixed-104 .pdv-catalog{
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  html body .pdv-page.pdv-layout-fixed-104 .pdv-fixed-tools-150{
    position:relative!important;
    top:auto!important;
    flex:0 0 auto!important;
    z-index:10!important;
    background:var(--bg)!important;
  }
  html body .pdv-page.pdv-layout-fixed-104 .pdv-products{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    align-content:start!important;
    padding-right:3px!important;
  }
  html body .pdv-page.pdv-layout-fixed-104 .pdv-cart-column-102{
    position:relative!important;
    top:auto!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    align-self:stretch!important;
    display:flex!important;
  }
  html body .pdv-page.pdv-layout-fixed-104 .pdv-cart-column-102>.pdv-cart{
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    flex:1 1 auto!important;
  }
  html body .pdv-page.pdv-layout-fixed-104 .pdv-cart-lines{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow-y:auto!important;
  }
}
html body .pdv-page.pdv-layout-fixed-104 .pdv-control-row-104{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) minmax(150px,190px)!important;
  gap:10px!important;
  align-items:center!important;
  margin-bottom:10px!important;
}
html body .pdv-page.pdv-layout-fixed-104 .pdv-control-row-104>.pdv-scan-button,
html body .pdv-page.pdv-layout-fixed-104 .pdv-control-row-104>.pdv-search-wrap,
html body .pdv-page.pdv-layout-fixed-104 .pdv-control-row-104>.pdv-recent-fixed-104{
  height:50px!important;
  min-height:50px!important;
  max-height:50px!important;
  margin:0!important;
}
html body .pdv-page.pdv-layout-fixed-104 .pdv-control-row-104>.pdv-recent-fixed-104{width:100%!important;justify-content:center!important}
html body .pdv-page.pdv-layout-fixed-104 .pdv-categories{margin:0!important;padding:0 0 10px!important;flex:0 0 auto!important}
html body .pdv-products .pdv-product.pdv-product-104{height:190px!important;min-height:190px!important;max-height:190px!important}
html body .pdv-products .pdv-product.pdv-product-104 .stock-low-104{color:var(--danger)!important;font-weight:750!important}
html body .pdv-products .pdv-product.pdv-product-104.low-stock-card-104{border-color:var(--danger)!important}
html body .pdv-products .pdv-product.pdv-product-104.out-of-stock-104{opacity:.52!important;cursor:not-allowed!important;filter:saturate(.45)!important}
@media(max-width:820px){
  html body .pdv-page.pdv-layout-fixed-104 .pdv-control-row-104{grid-template-columns:auto minmax(0,1fr)!important}
  html body .pdv-page.pdv-layout-fixed-104 .pdv-control-row-104>.pdv-recent-fixed-104{grid-column:1/-1!important}
}
@media(max-width:700px){html body .pdv-products .pdv-product.pdv-product-104{height:170px!important;min-height:170px!important;max-height:170px!important}}

/* Opções de pagamento: ícone, título e descrição centralizados em coluna. */
html body .payment-options .payment-option{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  gap:7px!important;
}
html body .payment-options .payment-option>.option-icon{display:grid!important;place-items:center!important;margin:0 auto!important}
html body .payment-options .payment-option>span:last-child{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  gap:2px!important;
}
html body .payment-options .payment-option>span:last-child>b,
html body .payment-options .payment-option>span:last-child>small{text-align:center!important;margin:0!important;width:100%!important}

/* Configuração de integrações de pagamento. */
html body .bp-payment-config-104{display:grid!important;gap:12px!important}
html body .bp-payment-provider-fields-104{display:grid!important;gap:10px!important}
html body .bp-payment-provider-fields-104>.info-note{margin:0!important}
html body #bp-payment-integration-wrap-104.hidden{display:none!important}

/* Acompanhamento do terminal e confirmação empilhada de cancelamento. */
html body .bp-terminal-wait-104{text-align:center!important;align-items:center!important}
html body .bp-terminal-pulse-104{width:58px!important;height:58px!important;margin:0 auto!important;display:grid!important;place-items:center!important;border:1px solid var(--primary)!important;border-radius:50%!important;color:var(--primary)!important}
html body .bp-terminal-pulse-104 .ui-icon{width:27px!important;height:27px!important}
html body .bp-modal-stack-104{z-index:130500!important;background:rgba(0,0,0,.28)!important}
html body .bp-modal-stack-104 .modal{box-shadow:none!important}


/* PDV responsivo 1.0.5: controles e dock do carrinho fixos; somente produtos rolam em telas pequenas. */
@media(max-width:820px){
  html body:has(.pdv-page.pdv-layout-fixed-104){overflow:hidden!important}
  html body:has(.pdv-page.pdv-layout-fixed-104) .content{overflow:hidden!important}
  html body .pdv-page.pdv-layout-fixed-104{
    height:calc(100dvh - var(--bp-topbar-h,56px) - 8px)!important;min-height:0!important;overflow:hidden!important;
    display:flex!important;flex-direction:column!important;padding-bottom:76px!important;
  }
  html[data-mobile-menu-position="top"] body .pdv-page.pdv-layout-fixed-104{height:calc(100dvh - var(--bp-topbar-h,56px) - var(--bp-menu-h,54px) - 8px)!important}
  html body .pdv-page.pdv-layout-fixed-104 .pdv-shell{height:100%!important;min-height:0!important;overflow:hidden!important;display:block!important;padding:0!important}
  html body .pdv-page.pdv-layout-fixed-104 .pdv-catalog{height:100%!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
  html body .pdv-page.pdv-layout-fixed-104 .pdv-fixed-tools-150{position:relative!important;top:auto!important;flex:0 0 auto!important;z-index:10!important;background:var(--bg)!important}
  html body .pdv-page.pdv-layout-fixed-104 .pdv-products{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;padding-right:2px!important}
  html body .pdv-page.pdv-layout-fixed-104 .pdv-cart-column-102{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;pointer-events:none!important}
  html body .pdv-page.pdv-layout-fixed-104 .pdv-control-row-104{grid-template-columns:auto minmax(0,1fr)!important}
  html body .pdv-page.pdv-layout-fixed-104 .pdv-control-row-104>.pdv-recent-fixed-104{grid-column:1/-1!important}
  html body .pdv-mobile-dock-1413{grid-template-columns:minmax(0,1fr) auto!important}
  html body .pdv-mobile-cart-open-104{height:48px!important;min-width:0!important;justify-content:flex-start!important;text-align:left!important;gap:8px!important;padding-inline:11px!important}
  html body .pdv-mobile-cart-open-104>span:last-child{min-width:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;line-height:1.05!important}
  html body .pdv-mobile-cart-open-104 small{font-size:10px!important;color:var(--muted)!important;white-space:nowrap!important}
  html body .pdv-mobile-cart-open-104 b{font-size:15px!important;white-space:nowrap!important}
  html body .bp-mobile-cart-host-104 #pdv-cart{position:relative!important;display:flex!important;width:100%!important;height:auto!important;max-height:calc(100dvh - 160px)!important;overflow:auto!important;clip-path:none!important;pointer-events:auto!important}
}

/* END IDMIX Tech 1.0.5 */

/* ===== IDMIX Tech 1.0.6 · ajustes finais seguros ===== */
/* Todo botão conserva uma borda perceptível também durante hover/focus. */
html body :is(button,.btn,.icon-btn,.top-btn,.top-user,.theme-btn,.filter-btn,.payment-option,.public-tool-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.pdv-remove):not(:disabled),
html body :is(button,.btn,.icon-btn,.top-btn,.top-user,.theme-btn,.filter-btn,.payment-option,.public-tool-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.pdv-remove):not(:disabled):hover,
html body :is(button,.btn,.icon-btn,.top-btn,.top-user,.theme-btn,.filter-btn,.payment-option,.public-tool-btn,.panel-close,.x,.back,.link-button,.login-back,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.pdv-remove):not(:disabled):focus-visible{
  border-style:solid!important;
  border-width:1px!important;
  border-color:color-mix(in srgb,currentColor 68%,var(--border))!important;
  box-shadow:none!important;
}

/* PDV: esquerda fixa com Ler código + Buscar; Vendas recentes fica somente acima do carrinho. */
html body .pdv-page.pdv-layout-106 .pdv-control-row-106{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  margin:0 0 10px!important;
}
html body .pdv-page.pdv-layout-106 .pdv-control-row-106>.pdv-scan-button,
html body .pdv-page.pdv-layout-106 .pdv-control-row-106>.pdv-search-wrap{
  height:50px!important;min-height:50px!important;max-height:50px!important;margin:0!important;
}
html body .pdv-page.pdv-layout-106 .pdv-control-row-106>.pdv-recent-top-102{display:none!important}
html body .pdv-page.pdv-layout-106 .pdv-cart-column-102>.pdv-recent-fixed-106{
  display:inline-flex!important;width:100%!important;height:50px!important;min-height:50px!important;max-height:50px!important;margin:0!important;justify-content:center!important;
}

@media(min-width:821px){
  html body .pdv-page.pdv-layout-106 .pdv-cart-column-102{
    position:relative!important;top:auto!important;align-self:stretch!important;
    height:calc(100% - 10px)!important;max-height:calc(100% - 10px)!important;min-height:0!important;
    display:grid!important;grid-template-rows:50px minmax(0,1fr)!important;gap:10px!important;
    overflow:hidden!important;padding:0!important;margin:0!important;
  }
  html body .pdv-page.pdv-layout-106 .pdv-cart-column-102>.pdv-cart{
    position:relative!important;top:auto!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
    margin:0!important;overflow:hidden!important;align-self:stretch!important;
    display:flex!important;flex-direction:column!important;
  }
  html body .pdv-page.pdv-layout-106 .pdv-cart-column-102>.pdv-cart .pdv-cart-lines{
    flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;
  }
}
@media(max-width:820px){
  html body .pdv-page.pdv-layout-106 .pdv-control-row-106{grid-template-columns:auto minmax(0,1fr)!important}
}

/* Formas de pagamento: conjunto centralizado; ícone em coluna central e textos à direita, alinhados à esquerda. */
html body .payment-options .payment-option,
html body .pdv-payment-options .payment-option{
  display:grid!important;
  grid-template-columns:44px minmax(190px,260px)!important;
  justify-content:center!important;
  align-items:center!important;
  column-gap:12px!important;
  text-align:left!important;
}
html body .payment-options .payment-option>.option-icon,
html body .pdv-payment-options .payment-option>.option-icon{
  width:44px!important;height:44px!important;margin:0!important;display:grid!important;place-items:center!important;align-self:center!important;justify-self:center!important;
}
html body .payment-options .payment-option>span:last-child,
html body .pdv-payment-options .payment-option>span:last-child{
  min-width:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;text-align:left!important;gap:2px!important;
}
html body .payment-options .payment-option>span:last-child>b,
html body .payment-options .payment-option>span:last-child>small,
html body .pdv-payment-options .payment-option>span:last-child>b,
html body .pdv-payment-options .payment-option>span:last-child>small{
  width:100%!important;margin:0!important;text-align:left!important;
}
@media(max-width:520px){
  html body .payment-options .payment-option,
  html body .pdv-payment-options .payment-option{grid-template-columns:40px minmax(0,1fr)!important;justify-content:stretch!important}
  html body .payment-options .payment-option>.option-icon,
  html body .pdv-payment-options .payment-option>.option-icon{width:40px!important;height:40px!important}
}
/* END IDMIX Tech 1.0.6 */

/* ===== IDMIX Tech 1.0.14 · consolidação visual, PDV e desempenho ===== */

/* Conteúdo interno nunca intercepta o clique: o controle pai é sempre o alvo. */
html body :is(button,.btn,.theme-btn,.filter-btn,.payment-option,.icon-btn,.top-btn,.top-user,.nav-link) :is(svg,path,g,circle,rect,line,polyline,polygon,span.ui-icon,.option-icon,.nav-icon){pointer-events:none!important}

/* Contrato final dos botões: geometria, bordas e estados estáveis; nenhuma sombra. */
html body :is(button,.btn,.top-btn,.top-user,.icon-btn,.theme-btn,.filter-btn,.payment-option,.public-tool-btn,.panel-close,.back,.link-button,.login-back,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.pdv-remove):not(.toast-close-103):not(.x),
html body :is(button,.btn,.top-btn,.top-user,.icon-btn,.theme-btn,.filter-btn,.payment-option,.public-tool-btn,.panel-close,.back,.link-button,.login-back,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.pdv-remove):not(.toast-close-103):not(.x):is(:hover,:active,:focus,:focus-visible){
  box-sizing:border-box!important;border-width:1px!important;border-style:solid!important;
  transform:none!important;translate:none!important;scale:none!important;filter:none!important;
  box-shadow:none!important;text-shadow:none!important;outline:0!important;outline-offset:0!important;
}
html body :is(.btn.outline,.btn.secondary,.theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),.pdv-category:not(.active),.pdv-cat:not(.active)),
html body :is(.btn.outline,.btn.secondary,.theme-btn:not(.active),.filter-btn:not(.active),.payment-option:not(.active),.pdv-category:not(.active),.pdv-cat:not(.active)):is(:hover,:active,:focus,:focus-visible){border-color:var(--line)!important}
html body :is(.btn.primary,.btn.active,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.color-btn.active,.settings-choice.active,.toggle-option.active,[aria-pressed="true"]),
html body :is(.btn.primary,.btn.active,.theme-btn.active,.filter-btn.active,.payment-option.active,.pdv-category.active,.pdv-cat.active,.color-btn.active,.settings-choice.active,.toggle-option.active,[aria-pressed="true"]):is(:hover,:active,:focus,:focus-visible){border-color:var(--primary)!important}
html body :is(.btn.green,.btn.green:hover,.btn.green:active,.btn.green:focus,.btn.green:focus-visible){border-color:var(--green)!important}
html body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-btn.icon-danger,.kds-item-cancel,.kitchen-trash),
html body :is(.btn.danger,.btn.ghost-danger,.icon-btn.danger,.icon-btn.icon-danger,.kds-item-cancel,.kitchen-trash):is(:hover,:active,:focus,:focus-visible){border-color:var(--danger,#dc2626)!important}

/* Fechar alerta/modal é propositalmente sem borda e sem efeito de botão. */
html body :is(.toast-close-103,#modal-root .x),
html body :is(.toast-close-103,#modal-root .x):is(:hover,:active,:focus,:focus-visible){
  border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;
  transform:none!important;translate:none!important;scale:none!important;filter:none!important;
}

/* Inputs focados não criam sombra/halo. */
html body :is(input,select,textarea,.input,.select,.textarea):is(:focus,:focus-visible),
html[data-ui-template] body :is(input,select,textarea,.input,.select,.textarea):is(:focus,:focus-visible){
  box-shadow:none!important;text-shadow:none!important;outline:0!important;outline-offset:0!important;filter:none!important;transform:none!important;
}
html body :is(.pdv-search-wrap,.catalog-search-wrap,.delivery-search-wrap,.search-wrap):focus-within{box-shadow:none!important;outline:0!important;outline-offset:0!important}

/* Formas de pagamento: ícone central na sua coluna e textos totalmente visíveis à direita. */
html body .payment-options{display:grid!important;gap:10px!important;min-width:0!important}
html body .payment-options .payment-option,
html body .pdv-payment-options .payment-option{
  width:100%!important;max-width:100%!important;min-width:0!important;min-height:72px!important;height:auto!important;
  overflow:visible!important;display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;
  justify-content:stretch!important;align-items:center!important;gap:14px!important;text-align:left!important;padding:12px 18px!important;
}
html body .payment-options .payment-option>.option-icon,
html body .pdv-payment-options .payment-option>.option-icon{
  position:static!important;inset:auto!important;width:32px!important;height:32px!important;min-width:32px!important;
  margin:0!important;display:grid!important;place-items:center!important;justify-self:center!important;align-self:center!important;
  border:0!important;background:transparent!important;overflow:visible!important;
}
html body .payment-options .payment-option>.option-icon .ui-icon,
html body .pdv-payment-options .payment-option>.option-icon .ui-icon{width:22px!important;height:22px!important;display:block!important}
html body .payment-options .payment-option>span:last-child,
html body .pdv-payment-options .payment-option>span:last-child{
  min-width:0!important;width:100%!important;max-width:none!important;overflow:visible!important;display:flex!important;
  flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;text-align:left!important;gap:2px!important;
}
html body .payment-options .payment-option>span:last-child>b,
html body .payment-options .payment-option>span:last-child>small,
html body .pdv-payment-options .payment-option>span:last-child>b,
html body .pdv-payment-options .payment-option>span:last-child>small{
  display:block!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;text-align:left!important;
  white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important;line-height:1.25!important;
}
@media(max-width:520px){
  html body .payment-options .payment-option,html body .pdv-payment-options .payment-option{grid-template-columns:28px minmax(0,1fr)!important;gap:11px!important;padding:11px 13px!important}
  html body .payment-options .payment-option>.option-icon,html body .pdv-payment-options .payment-option>.option-icon{width:28px!important;height:28px!important;min-width:28px!important}
}

/* Cards do PDV: compactos, quase quadrados e sempre obedecendo à configuração global de bordas. */
html body .pdv-products{align-content:start!important}
body.bp-pdv-screen-fixed-112 .pdv-page .pdv-products{
  grid-template-columns:repeat(auto-fill,minmax(168px,188px))!important;
  justify-content:start!important;gap:10px!important;
}
html body .pdv-product.pdv-product-112{
  box-sizing:border-box!important;height:198px!important;min-height:198px!important;max-height:198px!important;
  overflow:hidden!important;display:flex!important;flex-direction:column!important;position:relative!important;
  cursor:pointer!important;background:var(--surface)!important;border:1px solid var(--line)!important;
  box-shadow:none!important;transform:none!important;translate:none!important;filter:none!important;
  transition:background-color .12s ease,border-color .12s ease,color .12s ease!important;
}
html[data-ui-radius="square"] body .pdv-product.pdv-product-112{border-radius:0!important}
html[data-ui-radius="rounded"] body .pdv-product.pdv-product-112{border-radius:var(--ui-card-radius)!important}
html[data-ui-radius="square"] body .pdv-product.pdv-product-112 :is(.pdv-product-meta-113>small,.pdv-stock-status-113){border-radius:0!important}
html[data-ui-radius="rounded"] body .pdv-product.pdv-product-112 :is(.pdv-product-meta-113>small,.pdv-stock-status-113){border-radius:var(--ui-control-radius)!important}
html body .pdv-product.pdv-product-112:not(:disabled):hover,
html body .pdv-product.pdv-product-112:not(:disabled):focus-visible{
  background:color-mix(in srgb,var(--primary) 3%,var(--surface))!important;border-color:var(--primary)!important;
  box-shadow:none!important;transform:none!important;translate:none!important;scale:none!important;filter:none!important;
}
html body .pdv-product.pdv-product-112.low-stock-card-104,
html body .pdv-product.pdv-product-112.low-stock-card-104:hover{border-color:var(--danger,#dc2626)!important}
html body .pdv-product.pdv-product-112:disabled{cursor:not-allowed!important;opacity:.56!important;filter:none!important}
/* Imagem restaurada ao tratamento da versão anterior: sem moldura/padding interno e object-fit contain. */
html body .pdv-product.pdv-product-112>img,
html body .pdv-product.pdv-product-112>.pdv-product-placeholder{
  box-sizing:border-box!important;width:100%!important;height:104px!important;min-height:104px!important;max-height:104px!important;
  object-fit:contain!important;margin:0!important;padding:0!important;background:var(--surface2)!important;
  border-bottom:1px solid var(--line)!important;
}
html body .pdv-product.pdv-product-112>.pdv-product-placeholder{display:grid!important;place-items:center!important;color:var(--muted)!important}
html body .pdv-product.pdv-product-112 .pdv-product-body{
  flex:1 1 auto!important;min-height:0!important;padding:8px 9px 9px!important;display:flex!important;flex-direction:column!important;gap:4px!important;text-align:left!important;
}
html body .pdv-product.pdv-product-112 .pdv-product-meta-113{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:5px!important;min-width:0!important}
html body .pdv-product.pdv-product-112 .pdv-product-meta-113>small{
  display:block!important;min-width:0!important;max-width:58%!important;padding:2px 5px!important;border:1px solid var(--line)!important;
  border-radius:999px!important;background:var(--surface2)!important;color:var(--muted)!important;font-size:7.5px!important;font-weight:750!important;
  line-height:1.15!important;letter-spacing:.01em!important;text-transform:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
html body .pdv-product.pdv-product-112 .pdv-product-code-113{margin-left:auto!important;max-width:42%!important;font-variant-numeric:tabular-nums!important}
html body .pdv-product.pdv-product-112 .pdv-product-name-113{
  font-size:12px!important;line-height:1.18!important;font-weight:800!important;min-height:28px!important;display:-webkit-box!important;
  -webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;color:var(--fg)!important;
}
html body .pdv-product.pdv-product-112 .pdv-product-footer-113{margin-top:auto!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:5px!important;min-width:0!important}
html body .pdv-product.pdv-product-112 .pdv-price-line{display:flex!important;align-items:baseline!important;gap:4px!important;min-width:0!important;flex-wrap:wrap!important}
html body .pdv-product.pdv-product-112 .pdv-price-line strong{font-size:14px!important;line-height:1!important;color:var(--primary)!important;font-weight:900!important;white-space:nowrap!important}
html body .pdv-product.pdv-product-112 .pdv-price-line del{font-size:8px!important;color:var(--muted)!important;white-space:nowrap!important}
html body .pdv-product.pdv-product-112 .pdv-stock-status-113{
  flex:0 0 auto!important;margin:0!important;padding:2px 5px!important;border-radius:999px!important;background:var(--surface2)!important;
  color:var(--muted)!important;font-style:normal!important;font-size:7.5px!important;font-weight:750!important;line-height:1.15!important;white-space:nowrap!important;
}
html body .pdv-product.pdv-product-112 .pdv-stock-status-113.low{background:color-mix(in srgb,var(--danger) 9%,var(--surface2))!important;color:var(--danger)!important}
html body .pdv-in-cart-1431{box-shadow:none!important}
@media(max-width:600px){
  body.bp-pdv-screen-fixed-112 .pdv-page .pdv-products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  html body .pdv-product.pdv-product-112{height:184px!important;min-height:184px!important;max-height:184px!important}
  html body .pdv-product.pdv-product-112>img,html body .pdv-product.pdv-product-112>.pdv-product-placeholder{height:88px!important;min-height:88px!important;max-height:88px!important;padding:0!important}
  html body .pdv-product.pdv-product-112 .pdv-product-body{padding:7px 8px 8px!important;gap:3px!important}
  html body .pdv-product.pdv-product-112 .pdv-product-name-113{font-size:11.5px!important;min-height:27px!important}
}

/* Botões Voltar: um único padrão global, sempre à esquerda do grupo de ações. */
html body .bp-back-button-114{
  width:auto!important;min-width:96px!important;min-height:40px!important;height:auto!important;
  padding:9px 13px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  background:var(--surface)!important;color:var(--fg)!important;border:1px solid var(--line)!important;
  box-shadow:none!important;transform:none!important;translate:none!important;scale:none!important;filter:none!important;
  justify-self:start!important;align-self:center!important;text-align:center!important;
}
html body .bp-back-button-114:is(:hover,:active,:focus,:focus-visible){
  background:var(--surface2)!important;color:var(--fg)!important;border-color:var(--line)!important;
  box-shadow:none!important;transform:none!important;translate:none!important;scale:none!important;filter:none!important;
}
html body .modal-actions>.bp-back-button-114{order:-100!important;margin-right:auto!important;margin-left:0!important}
html body :is(.payment-options,.space,.grid)>.bp-back-button-114{margin-left:0!important;margin-right:auto!important;justify-self:start!important;align-self:start!important}
html body .page-head:has(>.actions>.bp-back-button-114){flex-wrap:wrap!important}
html body .page-head>.actions:has(>.bp-back-button-114){order:-1!important;width:100%!important;justify-content:flex-start!important;margin:0 0 8px!important}
html body .success-card>.bp-back-button-114{align-self:flex-start!important;margin-right:auto!important}
html[data-ui-radius="square"] body .bp-back-button-114{border-radius:0!important}
html[data-ui-radius="rounded"] body .bp-back-button-114{border-radius:var(--ui-control-radius)!important}

/* Menu lateral retraído expande em sobreposição: nunca redimensiona ou empurra a página. */
body.bp-pdv-menu-retracted-102{--bp-side-w:68px!important}
body.bp-pdv-menu-retracted-102 .app-menu{width:68px!important;z-index:80!important}
body.bp-pdv-menu-retracted-102.bp-pdv-menu-hover-expanded-104 .app-menu{width:250px!important}
body.bp-pdv-menu-retracted-102 .main{margin-left:var(--bp-side-w,68px)!important}

/* PDV fixo: ferramentas/categorias/carrinho presos; somente produtos rolam. */
body.bp-pdv-screen-fixed-112{height:100dvh!important;min-height:100dvh!important;overflow:hidden!important}
body.bp-pdv-screen-fixed-112 .shell{height:100dvh!important;min-height:0!important;overflow:hidden!important}
body.bp-pdv-screen-fixed-112 .main{height:100dvh!important;min-height:0!important;overflow:hidden!important;box-sizing:border-box!important}
body.bp-pdv-screen-fixed-112 .content{
  height:100%!important;min-height:0!important;overflow:hidden!important;box-sizing:border-box!important;
  width:100%!important;max-width:none!important;margin:0!important;display:flex!important;flex-direction:column!important;
  padding:8px!important;
}
body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106{
  flex:1 1 auto!important;height:auto!important;max-height:none!important;min-height:0!important;overflow:hidden!important;
  margin:0!important;padding:0!important;display:flex!important;flex-direction:column!important;
}
body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106 .pdv-shell{
  flex:1 1 auto!important;height:100%!important;max-height:100%!important;min-height:0!important;overflow:hidden!important;align-items:stretch!important;
}
body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106 .pdv-catalog{
  height:100%!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;
}
body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106 :is(.pdv-fixed-tools-150,.pdv-control-row-106,.pdv-categories){flex:0 0 auto!important;position:relative!important;top:auto!important}
body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106 .pdv-products{
  flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;
  overscroll-behavior:contain!important;scrollbar-gutter:stable!important;padding-bottom:0!important;margin-bottom:0!important;
}
@media(min-width:821px){
  body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106 .pdv-cart-column-102{
    height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;display:grid!important;
    grid-template-rows:50px minmax(0,1fr)!important;gap:10px!important;position:relative!important;top:auto!important;align-self:stretch!important;margin:0!important;padding:0!important;
  }
  body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106 .pdv-cart-column-102>.pdv-recent-fixed-106{position:relative!important;top:auto!important;width:100%!important;height:50px!important;min-height:50px!important;max-height:50px!important;margin:0!important}
  body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106 .pdv-cart-column-102>.pdv-cart{
    position:relative!important;top:auto!important;width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;
    margin:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;align-self:stretch!important;
  }
  body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106 .pdv-cart-lines{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overscroll-behavior:contain!important}
}
@media(max-width:820px){
  body.bp-pdv-screen-fixed-112 .content{padding:8px!important}
  body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106{padding-bottom:76px!important}
  body.bp-pdv-screen-fixed-112 .pdv-page.pdv-layout-106 .pdv-cart-column-102{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;pointer-events:none!important}
  body.bp-pdv-screen-fixed-112 .pdv-mobile-dock-1413{bottom:8px!important}
  html[data-mobile-menu-position="bottom"] body.bp-pdv-screen-fixed-112 .pdv-mobile-dock-1413{bottom:calc(var(--bp-menu-h,54px) + 8px)!important}
}
/* END IDMIX Tech 1.0.14 */

/* ===== IDMIX Tech 1.0.18 · Dashboard / Comandas / taxa de serviço ===== */

/* Alertas: ícone centralizado verticalmente à esquerda do conteúdo. */
html body .toast.toast-103{align-items:center!important}
html body .toast.toast-103 .toast-icon{align-self:center!important;justify-self:center!important;margin:0!important}
html body .toast.toast-103 .toast-copy-103{align-self:center!important;min-width:0!important}
html body .toast.toast-103 .toast-close-103{align-self:center!important}

/* Busca de Comandas mantém o mesmo tratamento dos demais campos de busca. */
html body .comanda-search-115{min-width:0!important}
html body .comanda-search-115 .input{min-width:0!important;width:100%!important;box-shadow:none!important}

/* Card de Comanda: mesma resposta visual do card de produto do PDV, sem movimento ou sombra. */
html body .comanda-card.comanda-card-115{
  box-sizing:border-box!important;position:relative!important;display:flex!important;flex-direction:column!important;min-width:0!important;
  cursor:pointer!important;background:var(--surface)!important;border:1px solid var(--line)!important;color:var(--fg)!important;
  box-shadow:none!important;transform:none!important;translate:none!important;scale:none!important;filter:none!important;outline:0!important;
  transition:background-color .12s ease,border-color .12s ease,color .12s ease!important;
}
html body .comanda-card.comanda-card-115:is(:hover,:focus-visible){
  background:color-mix(in srgb,var(--primary) 3%,var(--surface))!important;border-color:var(--primary)!important;
  box-shadow:none!important;transform:none!important;translate:none!important;scale:none!important;filter:none!important;outline:0!important;
}
html body .comanda-card.comanda-card-115.status-cancelada:is(:hover,:focus-visible){border-color:var(--danger,#dc2626)!important}
html body .comanda-card-115 .comanda-foot{align-items:center!important;gap:10px!important}
html body .comanda-card-115 .comanda-open-115{margin-left:auto!important;flex:0 0 auto!important;min-height:36px!important;padding:7px 10px!important}
html[data-ui-radius="square"] body .comanda-card.comanda-card-115{border-radius:0!important}
html[data-ui-radius="rounded"] body .comanda-card.comanda-card-115{border-radius:var(--ui-card-radius)!important}

/* Banner da Comanda: status acima do título e mesa realmente centralizada à direita. */
html body .comanda-banner-main-115{align-items:center!important}
html body .comanda-banner-copy-150 .comanda-title-status-115{display:inline-flex!important;width:max-content!important;margin:0 0 7px!important}
html body .comanda-banner-right-115{align-self:stretch!important;display:flex!important;align-items:center!important;justify-content:center!important}
html body .comanda-table-hero-115{width:100%!important;height:100%!important;min-height:76px!important;display:grid!important;place-items:center!important;text-align:center!important;margin:0!important}
html body .comanda-table-hero-115 strong{margin:0!important;text-align:center!important}

/* Itens da Comanda seguem a leitura visual do carrinho do PDV. */
html body .comanda-item-main-115{min-width:0!important;align-items:center!important}
html body .comanda-item-copy-115{min-width:0!important;display:flex!important;flex-direction:column!important;gap:3px!important}
html body .comanda-item-thumb-115{display:block!important;align-self:center!important}
html body .comanda-item-available-115{line-height:1.2!important}
html body .comanda-item-row-115 .item-actions{align-items:center!important}

/* Subtotal + taxa + total da Comanda: mesma ordem usada no PDV/backend. */
html body .comanda-value-breakdown-115{margin-top:12px!important;padding-top:12px!important;border-top:1px solid var(--line)!important;display:grid!important;gap:7px!important}
html body .comanda-value-breakdown-115>div{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
html body .comanda-value-breakdown-115>div:not(.total-row){font-size:13px!important;color:var(--muted)!important}
html body .comanda-value-breakdown-115 .total-row{margin:0!important;padding-top:7px!important;border-top:1px solid var(--line)!important}
html body .comanda-payment-card-115 .comanda-checkout-115{width:100%!important}

/* Resumo de pagamento da Comanda aparece antes das formas, sem alterar o layout dos botões. */
html body .comanda-payment-summary-115{width:100%!important;box-sizing:border-box!important;padding:11px 13px!important;border:1px solid var(--line)!important;background:var(--surface2)!important;display:grid!important;gap:6px!important}
html body .comanda-payment-summary-115>div{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;font-size:13px!important}
html body .comanda-payment-summary-115 .is-total{padding-top:7px!important;border-top:1px solid var(--line)!important;color:var(--fg)!important;font-size:14px!important}
html[data-ui-radius="square"] body .comanda-payment-summary-115{border-radius:0!important}
html[data-ui-radius="rounded"] body .comanda-payment-summary-115{border-radius:var(--ui-control-radius)!important}

/* Adicionar item: imagem idêntica ao carrinho do PDV; conteúdo não força foco na busca. */
html body .comanda-picker-product-115{min-width:0!important;align-items:center!important}
html body .comanda-picker-thumb-115{display:block!important;align-self:center!important}
html body .comanda-picker-copy-115{min-width:0!important}
html body .comanda-picker-copy-115>b{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important}

@media(max-width:700px){
  html body .comanda-banner-main-115{grid-template-columns:minmax(0,1fr)!important}
  html body .comanda-banner-right-115{width:100%!important}
  html body .comanda-table-hero-115{min-height:52px!important}
  html body .comanda-card-115 .comanda-open-115{min-height:34px!important}
}

/* END IDMIX Tech 1.0.18 */

/* ========================================================================== */
/* IDMIX Tech 1.0.18 · consistência PDV/Comandas                                  */
/* ========================================================================== */

/* PDV: a borda normal do card usa exatamente a mesma cor do input Buscar produto. */
body.bp-pdv-screen-fixed-112{--bp-pdv-shared-border:var(--border-strong,var(--border,var(--line)))}
html body.bp-pdv-screen-fixed-112 .pdv-search-wrap>.input,
html body.bp-pdv-screen-fixed-112 .pdv-search-wrap>.input:is(:focus,:focus-visible),
html body.bp-pdv-screen-fixed-112 .pdv-product.pdv-product-112:not(.low-stock-card-104){border-color:var(--bp-pdv-shared-border)!important}
html body.bp-pdv-screen-fixed-112 .pdv-product.pdv-product-112:not(:disabled):not(.low-stock-card-104):is(:hover,:focus-visible){border-color:var(--primary)!important}

/* Filtros de Comandas: ícone compatível + rótulo + contador, sem normalizador trocar o desenho. */
html body .comanda-filter-bar-116 .filter-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important}
html body .comanda-filter-bar-116 .filter-btn>.ui-icon{width:15px!important;height:15px!important;flex:0 0 15px!important}
html body .comanda-filter-bar-116 .filter-btn>b{margin-left:2px!important}

/* Card de Comanda permanece inteiro clicável; Abrir é apenas uma indicação visual. */
html body .comanda-open-cue-116{margin-left:auto!important;display:inline-flex!important;align-items:center!important;gap:6px!important;color:var(--primary)!important;font-weight:700!important;white-space:nowrap!important}
html body .comanda-open-cue-116>.ui-icon{width:15px!important;height:15px!important}

/* Busca por identificador: número, cliente ou mesa no mesmo modal usado pelo QR. */
html body .comanda-lookup-input-116{position:relative!important;min-width:0!important}
html body .comanda-lookup-input-116>.ui-icon{position:absolute!important;left:12px!important;top:50%!important;transform:translateY(-50%)!important;width:17px!important;height:17px!important;color:var(--muted)!important;pointer-events:none!important;z-index:2!important}
html body .comanda-lookup-input-116>.input{width:100%!important;padding-left:39px!important}
html body .comanda-lookup-results-116{display:grid!important;gap:7px!important;max-height:300px!important;overflow:auto!important}
html body .comanda-lookup-row-116{width:100%!important;min-height:54px!important;padding:9px 11px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto 18px!important;align-items:center!important;gap:9px!important;text-align:left!important;background:var(--surface2)!important;color:var(--fg)!important;border:1px solid var(--line)!important;box-shadow:none!important;transform:none!important}
html body .comanda-lookup-row-116:is(:hover,:focus-visible){border-color:var(--primary)!important;background:color-mix(in srgb,var(--primary) 3%,var(--surface2))!important;box-shadow:none!important;transform:none!important}
html body .comanda-lookup-row-main-116{min-width:0!important;display:grid!important;gap:2px!important}
html body .comanda-lookup-row-main-116 small{color:var(--muted)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html body .comanda-lookup-row-116>.ui-icon{width:16px!important;height:16px!important;color:var(--primary)!important}
html[data-ui-radius="square"] body .comanda-lookup-row-116{border-radius:0!important}
html[data-ui-radius="rounded"] body .comanda-lookup-row-116{border-radius:var(--ui-control-radius)!important}

/* Finalizar Comanda: Receber tem o mesmo porte do checkout do PDV e permanece à direita. */
html body .comanda-payment-card-115{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(250px,330px)!important;align-items:center!important;gap:18px!important}
html body .comanda-payment-card-115 .comanda-checkout-116{width:100%!important;min-width:0!important;height:48px!important;min-height:48px!important;max-height:48px!important;margin:0!important;justify-content:center!important}
html body .comanda-payment-card-115 .comanda-checkout-116>.ui-icon{width:18px!important;height:18px!important}

/* Mesma família de modais de pagamento nas duas origens. */
html body .bp-payment-methods-116{width:100%!important;min-width:0!important}
html body .bp-payment-methods-116 .payment-option{width:100%!important}

@media(max-width:800px){
  html body .comanda-payment-card-115{grid-template-columns:1fr!important;align-items:stretch!important}
  html body .comanda-payment-card-115 .comanda-checkout-116{width:100%!important}
  html body .comanda-lookup-row-116{grid-template-columns:minmax(0,1fr) auto 16px!important}
}
/* END IDMIX Tech 1.0.18 */

/* ===== IDMIX Tech 1.0.18 · Comanda em modal ===== */
html body .comanda-modal-layer-117>.modal-wrap{z-index:460!important}
html body .comanda-detail-modal-117 .comanda-detail{max-width:none!important;width:100%!important}
html body .comanda-detail-modal-117 .modal-body{min-height:0!important}
/* END IDMIX Tech 1.0.18 */


/* ===== IDMIX Tech 1.0.18 · responsividade e linguagem visual compartilhada ===== */
:root{
  --bp-shared-banner-bg:linear-gradient(112deg,var(--ud-navy-deep),var(--ud-navy));
  --bp-shared-banner-fg:#fff;
  --bp-shared-banner-muted:#c4d0d9;
  --bp-shared-banner-icon:#fff;
}
/* Menu superior, inferior, esquerdo e direito usam a mesma base cromática do banner de título. */
html body :is(.app-menu,.mobile-nav,.desktop-more-menu),
html[data-ui-template="udesign"] body .page-head{
  background:var(--bp-menu-bg,var(--bp-shared-banner-bg))!important;
  color:var(--bp-menu-fg,var(--bp-shared-banner-fg))!important;
  box-shadow:none!important;
}
html body :is(.app-menu,.mobile-nav,.desktop-more-menu) :is(.nav-link,.nav-icon,.ui-icon,.nav-link>span:last-child){color:var(--bp-menu-fg,var(--bp-shared-banner-fg))!important}
html body :is(.app-menu,.mobile-nav,.desktop-more-menu) .nav-link:not(.active){opacity:.88!important}
html body :is(.app-menu,.mobile-nav,.desktop-more-menu) .nav-link:hover{opacity:1!important;background:color-mix(in srgb,var(--bp-menu-fg,#fff) 10%,transparent)!important}
html body :is(.app-menu,.mobile-nav,.desktop-more-menu) .nav-link.active{opacity:1!important;background:color-mix(in srgb,var(--bp-menu-fg,#fff) 15%,transparent)!important;color:var(--bp-menu-fg,#fff)!important}
html[data-ui-template="udesign"] body .page-head :is(.page-title,.eyebrow,.ui-icon){color:var(--bp-menu-fg,var(--bp-shared-banner-fg))!important}
html[data-ui-template="udesign"] body .page-head .page-sub{color:var(--bp-menu-muted,var(--bp-shared-banner-muted))!important}
html[data-ui-template="udesign"] body .page-head :is(.date-chip,.data-badge,.pill){color:var(--bp-menu-fg,#fff)!important;border-color:color-mix(in srgb,var(--bp-menu-fg,#fff) 24%,transparent)!important;background:color-mix(in srgb,var(--bp-menu-fg,#fff) 8%,transparent)!important}

/* Detalhes da Comanda: modal padrão, exatamente a largura-base de Nova Comanda. */
html body .comanda-detail-modal-117 .modal-body{min-height:0!important;overflow:auto!important}
html body .comanda-detail-modal-117 .comanda-detail{width:100%!important;max-width:100%!important;min-width:0!important}

/* Ações que quebrariam linha viram ícones lado a lado, mantendo acessibilidade via title/aria-label. */
html body .bp-responsive-actions-118{min-width:0!important}
html body .bp-responsive-actions-118.bp-icons-only-118{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:7px!important;overflow:visible!important}
html body .bp-responsive-actions-118.bp-icons-only-118>.btn,
html body .bp-responsive-actions-118.bp-icons-only-118>.icon-btn{
  width:42px!important;min-width:42px!important;max-width:42px!important;height:42px!important;min-height:42px!important;flex:0 0 42px!important;padding:0!important;gap:0!important;font-size:0!important;justify-content:center!important;
}
html body .bp-responsive-actions-118.bp-icons-only-118>.btn>:not(svg.ui-icon):not(.ui-icon):not(.badge-count),
html body .bp-responsive-actions-118.bp-icons-only-118>.icon-btn>:not(svg.ui-icon):not(.ui-icon):not(.badge-count){display:none!important}
html body .bp-responsive-actions-118.bp-icons-only-118>.btn>.ui-icon,
html body .bp-responsive-actions-118.bp-icons-only-118>.icon-btn>.ui-icon{display:block!important;margin:0!important}

/* Configuração de alerta sonoro. */
html body .bp-alert-sound-settings-118 .bp-volume-range-118{width:100%!important;accent-color:var(--primary)!important;cursor:pointer!important}
html body #bp-alert-sound-card-118 .settings-card-meta{display:flex!important;align-items:center!important;gap:6px 10px!important;flex-wrap:wrap!important}

@media(max-width:760px){
  html body .page-head>.actions{max-width:100%!important}
  html body .comanda-detail-modal-117 .modal-body{max-height:calc(100dvh - 126px)!important}
}
/* END IDMIX Tech 1.0.18 */


/* ===== IDMIX Tech 1.0.20 · modais, Comandas, Agenda e Configurações ===== */

/* Todos os modais, sem exceção, ficam no centro do viewport e acima de menu/conteúdo. */
html body #modal-root{position:relative!important;z-index:20000!important}
html body #modal-root>.modal-wrap,
html[data-menu-position] body #modal-root>.modal-wrap,
html body:has(.shell) #modal-root>.modal-wrap,
html body .comanda-modal-layer-117>.modal-wrap{
  position:fixed!important;inset:0!important;top:0!important;right:0!important;bottom:0!important;left:0!important;
  width:100vw!important;height:100dvh!important;display:flex!important;align-items:center!important;justify-content:center!important;
  padding:18px!important;margin:0!important;overflow:auto!important;box-sizing:border-box!important;
}
html body #modal-root>.modal-wrap{z-index:20000!important}
html body .comanda-modal-layer-117{position:fixed!important;inset:0!important;z-index:19000!important;pointer-events:none!important}
html body .comanda-modal-layer-117>.modal-wrap{z-index:19000!important;pointer-events:auto!important}
html body #modal-root>.modal-wrap>.modal:not(.modal-fullscreen),html body .comanda-modal-layer-117 .modal{margin:auto!important;max-height:calc(100dvh - 36px)!important;box-sizing:border-box!important}
html body .comanda-detail-modal-117{width:min(920px,calc(100vw - 36px))!important;max-width:920px!important}
html body .modal-body{overflow-x:hidden!important}

/* Banner da Comanda mais fino e proporcional ao conteúdo. */
html body .comanda-detail-modal-117 .comanda-banner-115{padding:11px 14px!important;min-height:0!important;gap:9px!important;margin-bottom:10px!important}
html body .comanda-detail-modal-117 .comanda-banner-main-115{gap:12px!important;grid-template-columns:minmax(0,1fr) minmax(110px,180px)!important}
html body .comanda-detail-modal-117 .comanda-banner-copy-150{gap:2px!important}
html body .comanda-detail-modal-117 .comanda-banner-copy-150 .page-title{font-size:21px!important;line-height:1.1!important;margin:0!important;letter-spacing:-.025em!important}
html body .comanda-detail-modal-117 .comanda-customer-title-150{font-size:13px!important;line-height:1.25!important;margin:2px 0!important;font-weight:650!important}
html body .comanda-detail-modal-117 .comanda-banner-copy-150 .page-sub{font-size:10px!important;line-height:1.35!important;margin:1px 0 0!important}
html body .comanda-detail-modal-117 .comanda-title-status-115{min-height:24px!important;padding:3px 8px!important;margin:0 0 4px!important;display:inline-flex!important;align-items:center!important;gap:5px!important;font-size:10px!important}
html body .comanda-detail-modal-117 .comanda-title-status-115>.ui-icon,html body .card-status-row .pill>.ui-icon{width:13px!important;height:13px!important;flex:0 0 13px!important}
html body .comanda-detail-modal-117 .comanda-table-hero-115{min-height:44px!important;height:auto!important;padding:7px 9px!important}
html body .comanda-detail-modal-117 .comanda-table-hero-115 strong{font-size:14px!important}
html body .comanda-detail-modal-117 .comanda-banner-actions-150{gap:7px!important}
html body .comanda-detail-modal-117 .comanda-banner-actions-150 .btn{min-height:38px!important;height:38px!important;padding:0 10px!important}
html body .card-status-row .pill{display:inline-flex!important;align-items:center!important;gap:5px!important}

/* Ações estreitas nunca geram barra horizontal: só ícones, lado a lado. */
html body .bp-responsive-actions-118{max-width:100%!important;overflow:hidden!important;scrollbar-width:none!important}
html body .bp-responsive-actions-118::-webkit-scrollbar{display:none!important}
html body .bp-responsive-actions-118.bp-icons-only-118{display:flex!important;flex-wrap:nowrap!important;gap:6px!important;overflow:hidden!important}
html body .bp-responsive-actions-118.bp-icons-only-118>.btn,html body .bp-responsive-actions-118.bp-icons-only-118>.icon-btn{width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;flex:0 0 40px!important;padding:0!important}

/* Menu: hover e ativo usam exatamente a mesma cor do título IDMIX Tech. */
html body .app-header-brand-copy b{color:var(--primary)!important}
html body :is(.app-menu,.mobile-nav,.desktop-more-menu) .nav-link:is(:hover,.active),
html body :is(.app-menu,.mobile-nav,.desktop-more-menu) .nav-link:is(:hover,.active) :is(.ui-icon,.nav-icon,span){color:var(--primary)!important;opacity:1!important}
html body :is(.app-menu,.mobile-nav,.desktop-more-menu) .nav-link:is(:hover,.active){background:color-mix(in srgb,var(--surface) 90%,transparent)!important;border-color:color-mix(in srgb,var(--primary) 55%,transparent)!important}

/* Alertas sonoros independentes. */
html body .bp-alert-sound-settings-119{gap:12px!important}
html body .bp-alert-kind-119{display:grid!important;grid-template-columns:42px minmax(150px,.8fr) minmax(280px,1.4fr)!important;align-items:center!important;gap:12px!important;padding:12px!important;border:1px solid var(--border)!important;background:var(--surface2)!important}
html body .bp-alert-kind-icon-119{width:42px!important;height:42px!important;display:grid!important;place-items:center!important;color:var(--primary)!important;background:var(--surface)!important;border:1px solid var(--border)!important}
html body .bp-alert-kind-copy-119{display:grid!important;gap:2px!important}.bp-alert-kind-copy-119 small{color:var(--muted)!important;font-size:10px!important}
html body .bp-alert-kind-controls-119{display:grid!important;grid-template-columns:minmax(150px,1fr) minmax(130px,.8fr) auto!important;align-items:end!important;gap:9px!important;min-width:0!important}
html body .bp-alert-volume-119{display:grid!important;gap:4px!important}.bp-alert-volume-119>span{font-size:10px!important;color:var(--muted)!important;display:flex!important;justify-content:space-between!important}.bp-alert-volume-119 input{width:100%!important;accent-color:var(--primary)!important}

/* Configurações em blocos claros + painel de cores populares. */
html body .settings-group-119{padding:14px!important}
html body .settings-group-119>.settings-group-head{margin-bottom:11px!important;padding-bottom:9px!important;border-bottom:1px solid var(--border)!important}
html body .settings-group-119>.settings-group-head h2{font-size:16px!important;margin:0!important}.settings-group-119>.settings-group-head p{font-size:10px!important;margin:3px 0 0!important;color:var(--muted)!important}
html body .bp-popular-accent-panel-119{display:grid!important;gap:10px!important;margin-top:7px!important}
html body .bp-popular-head-119{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}.bp-popular-head-119>div{display:grid!important;gap:2px!important}.bp-popular-head-119 small{font-size:10px!important;color:var(--muted)!important}
html body .bp-popular-colors-119{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:7px!important}
html body .bp-popular-color-119{position:relative!important;display:grid!important;gap:4px!important;padding:5px!important;min-width:0!important;background:var(--surface)!important;border:1px solid var(--border)!important;color:var(--fg)!important;box-shadow:none!important;transform:none!important;text-align:center!important}
html body .bp-popular-color-119>span:first-child{display:block!important;width:100%!important;aspect-ratio:1.65!important;background:var(--sw)!important}
html body .bp-popular-color-119 small{font-size:8px!important;font-family:monospace!important;color:var(--muted)!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body .bp-popular-color-119>.ui-icon{position:absolute!important;right:7px!important;top:7px!important;width:15px!important;height:15px!important;color:#fff!important;filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))!important}
html body .bp-popular-color-119.active{border-color:var(--primary)!important}
html body .bp-color-custom-119{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto!important;align-items:end!important;gap:8px!important}.bp-color-custom-119 label{display:grid!important;gap:5px!important;font-size:10px!important;color:var(--muted)!important}.bp-color-custom-119 input[type=color]{width:100%!important;height:42px!important;padding:3px!important;background:var(--surface)!important;border:1px solid var(--border)!important}

@media(max-width:760px){
  html body #modal-root>.modal-wrap,html body .comanda-modal-layer-117>.modal-wrap{padding:10px!important}
  html body .comanda-detail-modal-117{width:min(100%,calc(100vw - 20px))!important;max-height:calc(100dvh - 20px)!important}
  html body .comanda-detail-modal-117 .comanda-banner-main-115{grid-template-columns:1fr!important}
  html body .comanda-detail-modal-117 .comanda-banner-right-115{display:none!important}
  html body .agenda-summary-119{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}.agenda-summary-119>.card{padding:8px!important;min-height:54px!important}.agenda-summary-119>.card>span{width:30px!important;height:30px!important}.agenda-summary-119 b{font-size:15px!important}
  html body .bp-alert-kind-119{grid-template-columns:38px minmax(0,1fr)!important}.bp-alert-kind-controls-119{grid-column:1/-1!important;grid-template-columns:1fr!important}.bp-alert-kind-controls-119 .btn{width:100%!important}
  html body .bp-popular-colors-119{grid-template-columns:repeat(4,minmax(0,1fr))!important}.bp-color-custom-119{grid-template-columns:1fr 1fr!important}.bp-color-custom-119>.btn{grid-column:1/-1!important}
}
@media(max-width:480px){html body .bp-popular-colors-119{grid-template-columns:repeat(3,minmax(0,1fr))!important}.agenda-summary-119{grid-template-columns:1fr!important}}
/* END IDMIX Tech 1.0.20 */

/* ===== IDMIX Tech 1.0.20 · Agenda, modais, Cozinha e Configurações ===== */

/* Ícones decorativos dos banners de título usam cor escura; botões preservam a própria cor. */
html body .page-head :is(.data-badge,.title-indicator,.date-chip,.pill):not(.btn) .ui-icon,
html body .page-head > :not(.actions) .ui-icon{color:#172033!important;stroke:currentColor!important}
html body .page-head .btn.primary .ui-icon{color:inherit!important}

/* Todos os modais ficam centralizados no viewport e acima de menus/popovers. */
html body #modal-root{position:relative!important;z-index:210000!important}
html body #modal-root>.modal-wrap,
html body .comanda-modal-layer-117>.modal-wrap{
  position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  margin:0!important;padding:18px!important;background:rgba(2,6,23,.68)!important;
  backdrop-filter:blur(7px)!important;-webkit-backdrop-filter:blur(7px)!important;
}
html body #modal-root>.modal-wrap{z-index:210000!important}
html body .comanda-modal-layer-117{position:fixed!important;inset:0!important;z-index:200000!important;pointer-events:auto!important}
html body .comanda-modal-layer-117>.modal-wrap{z-index:200000!important}
html body #modal-root>.modal-wrap>.modal,
html body .comanda-modal-layer-117>.modal-wrap>.modal{
  margin:auto!important;max-width:calc(100vw - 36px)!important;max-height:calc(100dvh - 36px)!important;
  overflow:auto!important;overscroll-behavior:contain!important
}
html body .comanda-detail-modal-117{width:min(820px,calc(100vw - 36px))!important}
html body .modal-head{
  display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;gap:10px!important
}
html body .modal-head .modal-title{text-align:left!important;min-width:0!important}
html body :is(#modal-root,.comanda-modal-layer-117) .modal-head .x,
html body :is(#modal-root,.comanda-modal-layer-117) .modal-head .x:is(:hover,:focus,:focus-visible,:active){
  border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;transform:none!important;filter:none!important
}
/* Comanda: banner mais compacto, sem badge de Aberta e Mesa no mesmo peso visual do título. */
html body .comanda-detail-modal-117 .comanda-banner-115{padding:9px 11px!important;min-height:0!important}
html body .comanda-detail-modal-117 .comanda-banner-main-115{align-items:center!important;gap:10px!important}
html body .comanda-detail-modal-117 .comanda-banner-copy-150 .page-title{font-size:19px!important;line-height:1.1!important;margin:0!important}
html body .comanda-detail-modal-117 .comanda-customer-title-150{font-size:12px!important;line-height:1.2!important;margin:2px 0!important}
html body .comanda-detail-modal-117 .comanda-banner-copy-150 .page-sub{font-size:9px!important;margin:1px 0 0!important}
html body .comanda-detail-modal-117 .comanda-title-status-115{display:none!important}
html body .comanda-detail-modal-117 .comanda-table-hero-115{min-height:38px!important;padding:5px 9px!important;display:flex!important;align-items:center!important;justify-content:center!important}
html body .comanda-detail-modal-117 .comanda-table-hero-115 strong{font-size:19px!important;line-height:1.1!important;font-weight:750!important}

/* Agenda: layout base sem os resumos da 1.0.20, com leitura horizontal e status + hora + título. */
html body .agenda-page-120 .agenda-calendar{padding:10px!important}
html body .agenda-calendar-title-120{display:flex!important;align-items:center!important;gap:7px!important;padding:2px 3px 9px!important;border-bottom:1px solid var(--border)!important;color:var(--fg)!important}
html body .agenda-calendar-title-120>.ui-icon{width:17px!important;height:17px!important;color:var(--fg)!important}
html body .agenda-calendar-title-120 strong{font-size:13px!important;font-weight:700!important}
html body .agenda-page-120 .agenda-day{min-height:76px!important;max-height:106px!important;aspect-ratio:1.48/1!important;padding:5px!important;overflow:hidden!important;box-shadow:none!important}
html body .agenda-page-120 .agenda-day.past-day{cursor:default!important;background:color-mix(in srgb,var(--surface2) 72%,var(--surface))!important}
html body .agenda-page-120 .agenda-day.past-day .agenda-day-number{color:var(--muted)!important}
html body .agenda-page-120 .agenda-day-number{width:23px!important;height:23px!important;font-size:10px!important}
html body .agenda-page-120 .agenda-events{gap:3px!important;margin-top:2px!important}
html body .agenda-page-120 .agenda-event-120{
  min-height:24px!important;height:24px!important;padding:2px 4px!important;
  display:grid!important;grid-template-columns:16px 34px minmax(0,1fr)!important;gap:4px!important;align-items:center!important;
  background:var(--surface)!important;border:1px solid var(--border)!important;text-decoration:none!important
}
html body .agenda-page-120 .agenda-event-120:is(:hover,:focus,:focus-visible){background:var(--surface2)!important;border-color:var(--primary)!important;transform:none!important;box-shadow:none!important}
html body .agenda-status-icon-120{width:16px!important;height:16px!important;display:grid!important;place-items:center!important;color:var(--primary)!important}
html body .agenda-status-icon-120>.ui-icon{width:12px!important;height:12px!important}
html body .agenda-status-icon-120.confirmada,html body .agenda-status-icon-120.concluida{color:var(--success,#16a34a)!important}
html body .agenda-status-icon-120.cancelada{color:var(--danger,#dc2626)!important}
html body .agenda-event-120 .agenda-event-time{font-size:8px!important;color:var(--muted)!important;white-space:nowrap!important}
html body .agenda-event-120 b{font-size:9px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html body .agenda-more-120{font-size:8px!important;color:var(--muted)!important;padding-left:3px!important}
html body .agenda-upcoming-item-120{grid-template-columns:24px 54px minmax(0,1fr)!important;min-height:52px!important;padding:7px 8px!important;gap:7px!important}
html body .agenda-upcoming-item-120 .agenda-status-icon-120{justify-self:center!important}
html body .agenda-upcoming-date-120{display:grid!important;gap:1px!important;border-right:1px solid var(--border)!important;padding-right:7px!important;text-align:center!important}
html body .agenda-upcoming-date-120 b{font-size:10px!important}.agenda-upcoming-date-120 small{font-size:9px!important;color:var(--muted)!important}
html body .agenda-upcoming-copy-120{display:grid!important;gap:2px!important;min-width:0!important}.agenda-upcoming-copy-120 b{font-size:11px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.agenda-upcoming-copy-120 small{font-size:9px!important;color:var(--muted)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html body .agenda-past-note-120{display:flex!important;align-items:center!important;gap:8px!important;padding:9px 10px!important;border:1px solid var(--border)!important;background:var(--surface2)!important;color:var(--muted)!important;font-size:10px!important}
html body .agenda-past-note-120>.ui-icon{width:15px!important;height:15px!important}

/* Cozinha: leitura mais moderna, sem sombra ou movimento; ajustes preservam contexto. */
html body .kitchen{gap:12px!important}
html body .kitchen :is(.kcol,.kds-column){background:color-mix(in srgb,var(--surface2) 60%,var(--surface))!important;border:1px solid var(--border)!important;padding:8px!important;box-shadow:none!important}
html body .kitchen .khead{padding:7px 5px 10px!important;border-bottom:1px solid var(--border)!important;margin-bottom:8px!important}
html body .kitchen .korder.kds-order-card-120{background:var(--surface)!important;border:1px solid var(--border)!important;padding:11px!important;box-shadow:none!important;transform:none!important}
html body .kitchen .korder.kds-order-card-120:is(:hover,:focus-within){border-color:var(--primary)!important;box-shadow:none!important;transform:none!important}
html body .kds-order-title{gap:8px!important;padding-bottom:8px!important;border-bottom:1px solid var(--border)!important}
html body .kds-items{display:grid!important;gap:6px!important;margin:8px 0!important}
html body .kds-item{min-height:48px!important;padding:6px!important;border:1px solid var(--border)!important;background:var(--surface2)!important}
html body .kds-item.done{opacity:.7!important}

/* Cor de destaque: botões minúsculos como ícones, sem cabeçalho, cor personalizada ou controles de menu. */
html body .bp-popular-accent-panel-120{margin-top:5px!important;display:block!important}
html body .bp-popular-colors-120{display:flex!important;flex-wrap:wrap!important;gap:5px!important;align-items:center!important}
html body .bp-popular-colors-120 .bp-popular-color-119{
  width:25px!important;min-width:25px!important;max-width:25px!important;height:25px!important;min-height:25px!important;
  padding:2px!important;margin:0!important;display:grid!important;place-items:center!important;position:relative!important;
  background:var(--surface)!important;border:1px solid var(--border)!important;box-shadow:none!important;transform:none!important;overflow:hidden!important
}
html body .bp-popular-colors-120 .bp-popular-color-119>span:first-child{position:absolute!important;inset:2px!important;width:auto!important;height:auto!important;aspect-ratio:auto!important;background:var(--sw)!important}
html body .bp-popular-colors-120 .bp-popular-color-119>.ui-icon{position:relative!important;z-index:2!important;inset:auto!important;width:13px!important;height:13px!important;color:#fff!important;filter:none!important}
html body .bp-popular-colors-120 .bp-popular-color-119.active{border-color:var(--fg)!important;border-width:2px!important}
html body .bp-popular-colors-120 .bp-popular-color-119:is(:hover,:focus,:focus-visible){border-color:var(--primary)!important;box-shadow:none!important;transform:none!important}
html body .bp-popular-head-119,html body .bp-color-custom-119{display:none!important}

@media(max-width:980px){
  html body .agenda-page-120 .agenda-day{aspect-ratio:auto!important;min-height:82px!important;max-height:none!important}
}
@media(max-width:720px){
  html body #modal-root>.modal-wrap,html body .comanda-modal-layer-117>.modal-wrap{padding:10px!important}
  html body #modal-root>.modal-wrap>.modal,html body .comanda-modal-layer-117>.modal-wrap>.modal{max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}
    html body   html body .agenda-page-120 .agenda-day{aspect-ratio:auto!important;min-height:auto!important;max-height:none!important;grid-template-columns:32px minmax(0,1fr)!important}
  html body .agenda-upcoming-item-120{grid-template-columns:22px 48px minmax(0,1fr)!important}
}
/* END IDMIX Tech 1.0.20 */

/* Submodais fora de #modal-root também ficam centralizados e acima do modal de origem. */
html body :is(.delivery-items-submodal-149,.bp-modal-stack-104){
  position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:220000!important;
  display:flex!important;align-items:center!important;justify-content:center!important;padding:18px!important;margin:0!important;
  background:rgba(2,6,23,.68)!important;backdrop-filter:blur(7px)!important;-webkit-backdrop-filter:blur(7px)!important
}
html body :is(.delivery-items-submodal-149,.bp-modal-stack-104)>.modal{margin:auto!important;max-width:calc(100vw - 36px)!important;max-height:calc(100dvh - 36px)!important;overflow:auto!important}
html body :is(.delivery-items-submodal-149,.bp-modal-stack-104) .modal-head .x,
html body :is(.delivery-items-submodal-149,.bp-modal-stack-104) .modal-head .x:is(:hover,:focus,:active){border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important}
@media(max-width:720px){html body :is(.delivery-items-submodal-149,.bp-modal-stack-104){padding:10px!important}html body :is(.delivery-items-submodal-149,.bp-modal-stack-104)>.modal{max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}}


/* ===== IDMIX Tech 1.0.23 · Comanda centralizada no viewport inteiro ===== */
html body > #comanda-modal-layer-117.bp-comanda-viewport-portal-121{
  position:fixed!important;
  inset:0!important;
  top:0!important;right:0!important;bottom:0!important;left:0!important;
  width:100vw!important;
  max-width:none!important;
  height:100dvh!important;
  min-height:100dvh!important;
  margin:0!important;
  padding:18px!important;
  box-sizing:border-box!important;
  z-index:900000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:auto!important;
  pointer-events:auto!important;
  background:rgba(2,6,23,.68)!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
  isolation:isolate!important;
}
html body > #comanda-modal-layer-117.bp-comanda-viewport-portal-121 > .modal-wrap{
  position:relative!important;
  inset:auto!important;
  top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
  width:100%!important;
  max-width:none!important;
  min-height:100%!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  z-index:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  pointer-events:none!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html body > #comanda-modal-layer-117.bp-comanda-viewport-portal-121 > .modal-wrap > .comanda-detail-modal-117{
  position:relative!important;
  inset:auto!important;
  margin:auto!important;
  width:min(820px,calc(100vw - 36px))!important;
  max-width:820px!important;
  max-height:calc(100dvh - 36px)!important;
  pointer-events:auto!important;
  z-index:1!important;
}
/* Submodais comuns sempre ficam acima da Comanda. */
html body #modal-root{z-index:1000000!important}
html body #modal-root > .modal-wrap{z-index:1000000!important}
@media(max-width:760px){
  html body > #comanda-modal-layer-117.bp-comanda-viewport-portal-121{padding:10px!important}
  html body > #comanda-modal-layer-117.bp-comanda-viewport-portal-121 > .modal-wrap > .comanda-detail-modal-117{
    width:min(100%,calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
    max-height:calc(100dvh - 20px)!important;
  }
}
/* END IDMIX Tech 1.0.23 */


/* ===== IDMIX Tech 1.0.24 · cores restauradas ao padrão da 1.0.10 ===== */
/* O banner volta à cromia própria da 1.0.10. A cor personalizada de Menu não recolore o banner. */
html[data-ui-template="udesign"] body .page-head{
  background:linear-gradient(112deg,var(--ud-navy-deep),var(--ud-navy))!important;
  color:#fff!important;
}
html[data-ui-template="udesign"] body .page-head :is(.page-title,.ui-icon){color:#fff!important}
html[data-ui-template="udesign"] body .page-head .eyebrow{color:color-mix(in srgb,var(--primary) 82%,#fff)!important}
html[data-ui-template="udesign"] body .page-head .page-sub{color:#c4d0d9!important}

/* Cabeçalho modal e correção de fila vazia permanecem, pois não pertencem à configuração de cores. */
html body .modal-head{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;grid-template-columns:none!important}
html body .modal-head .modal-title{flex:0 1 auto!important;min-width:0!important;margin:0!important;text-align:left!important}
html body .modal-head .x{margin-left:auto!important;flex:0 0 auto!important}
html body #ready-popover-145:empty{display:none!important}
/* END IDMIX Tech 1.0.24 */

/* ===== IDMIX Tech v1.0.23 · Relatórios completos + Cozinha refinada ===== */
.reports-pro-123 .report-block-123{display:grid;gap:12px}
.reports-pro-123 .report-block-head-123{display:flex;align-items:end;justify-content:space-between;gap:12px}
.reports-pro-123 .report-block-head-123 span{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.reports-pro-123 .report-block-head-123 h2{margin:3px 0 0;font-size:18px;color:var(--fg)}
.reports-pro-123 .report-metrics-grid-123{align-items:stretch}
.reports-pro-123 .report-metric-card-123{display:flex;flex-direction:column;justify-content:center;min-height:104px;gap:5px}
.reports-pro-123 .report-metric-card-123>span{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.reports-pro-123 .report-metric-card-123>b{font-size:21px;line-height:1.1;color:var(--fg);font-weight:850}
.reports-pro-123 .report-metric-card-123>small{font-size:10px;color:var(--muted)}
.reports-pro-123 .report-metric-card-123.danger>b{color:var(--danger)}
.report-status-list-123{display:grid;margin-top:8px}
.report-status-list-123>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--border)}
.report-status-list-123>div:last-child{border-bottom:0}
.report-status-list-123 span{font-size:11px;color:var(--muted)}
.report-status-list-123 b{font-size:12px;color:var(--fg);text-align:right}
.report-daily-bars-123{height:190px;display:flex;align-items:end;gap:5px;padding:16px 2px 0;overflow:hidden}
.report-daily-bars-123>div{height:100%;min-width:10px;flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:5px}
.report-daily-bars-123 i{display:block;width:min(18px,100%);min-height:4px;background:var(--primary);border-radius:2px 2px 0 0}
.report-daily-bars-123 span{font-size:8px;color:var(--muted)}
.report-overview-grid-123>.card,.report-ops-grid-123>.card{min-width:0}

/* Cozinha: refinamento visual sem alterar o fluxo. */
html body .kitchen{gap:12px!important;align-items:start!important}
html body .kitchen :is(.kcol,.kds-column){padding:10px!important;background:color-mix(in srgb,var(--surface2) 52%,var(--surface))!important;border:1px solid var(--border)!important;box-shadow:none!important}
html body .kitchen .khead{min-height:48px;padding:7px 8px 10px!important;margin:0 0 8px!important;border-bottom:1px solid var(--border)!important;display:flex!important;align-items:center!important}
html body .kitchen .khead b{font-size:12px!important;letter-spacing:.01em}
html body .kitchen .kcount{width:28px!important;height:28px!important;min-width:28px!important;display:grid!important;place-items:center!important;font-size:10px!important;font-weight:800!important}
html body .kitchen .kds-column-body{display:grid!important;gap:9px!important;margin-top:0!important}
html body .kitchen .korder.kds-order-card-120{margin:0!important;padding:12px!important;background:var(--surface)!important;border:1px solid var(--border)!important;box-shadow:none!important;transform:none!important}
html body .kitchen .korder.kds-order-card-120:is(:hover,:focus-within){border-color:var(--primary)!important;background:color-mix(in srgb,var(--primary) 3%,var(--surface))!important;box-shadow:none!important;transform:none!important}
html body .kitchen .kds-order-title{align-items:flex-start!important;gap:12px!important}
html body .kitchen .kds-comanda{display:block!important;margin-top:3px!important;font-size:13px!important}
html body .kitchen .kds-items{display:grid!important;gap:7px!important;margin-top:10px!important}
html body .kitchen .kds-item{padding:8px!important;background:color-mix(in srgb,var(--surface2) 65%,var(--surface))!important;border:1px solid var(--border)!important;box-shadow:none!important}
html body .kitchen .kds-item-copy b{font-size:11px!important}
html body .kitchen .kds-item-copy small{font-size:9px!important;line-height:1.35!important}
html body .kitchen .k-time{align-self:flex-start!important;white-space:nowrap!important}
html body .kds-remove-tools-123{margin-top:9px!important}
html body .kds-remove-tools-123 .btn{height:38px!important;min-height:38px!important;box-shadow:none!important;transform:none!important}
@media(max-width:1100px){.reports-pro-123 .report-ops-grid-123{grid-template-columns:1fr 1fr!important}.reports-pro-123 .report-metrics-grid-123{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){.reports-pro-123 .report-ops-grid-123,.reports-pro-123 .report-metrics-grid-123{grid-template-columns:1fr!important}.report-daily-bars-123{height:150px}.reports-pro-123 .report-metric-card-123{min-height:88px}}
/* END IDMIX Tech v1.0.23 */


/* ===== IDMIX Tech 1.0.25 · ícones sempre visíveis + modal sem Voltar no título ===== */
/* Ícones de ações nunca dependem de hover para aparecer: herdam exatamente a cor do controle. */
html body :is(button,.btn,.theme-btn,.filter-btn,.payment-option,.top-btn,.top-user,.icon-btn,.public-tool-btn,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.nav-link) .ui-icon,
html body :is(button,.btn,.theme-btn,.filter-btn,.payment-option,.top-btn,.top-user,.icon-btn,.public-tool-btn,.picker-add,.pdv-category,.pdv-cat,.urgent-action,.cash-head-button,.nav-link) svg.ui-icon{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  color:currentColor!important;
  stroke:currentColor!important;
  fill:none!important;
}
/* A regra branca do banner nunca pode sobrescrever o ícone de um botão claro. */
html[data-ui-template="udesign"] body .page-head :is(button,.btn,.theme-btn,.filter-btn,.icon-btn) .ui-icon,
html[data-ui-template="udesign"] body .page-head :is(button,.btn,.theme-btn,.filter-btn,.icon-btn) svg.ui-icon{
  color:currentColor!important;
  stroke:currentColor!important;
}
/* Cabeçalho do modal volta a ter somente título + fechar. */
html body .modal-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
html body .modal-head .modal-title{flex:1 1 auto!important;margin:0!important;text-align:left!important;min-width:0!important}
html body .modal-head .x{margin-left:auto!important;flex:0 0 auto!important}
/* Todos os cards do topo mantêm área consistente mesmo quando vazios. */
html body :is(#ready-popover-145,#calls-popover-145,#notifications-popover-145,.bp-top-popover-145),
html body .app-header-actions #user-menu-popover:not(.hidden){min-height:150px!important}
/* END IDMIX Tech 1.0.25 */

/* ===== IDMIX Tech 1.0.26 · ajustes cumulativos solicitados ===== */
/* Confirmação de cancelamento do PDV sempre acima de tudo. */
html body .bp-confirm-over-everything-126{position:fixed!important;inset:0!important;z-index:1600000!important}
html body .bp-confirm-over-everything-126>.modal{z-index:1600001!important}

/* Comanda: banner compacto, informações à esquerda e ações à direita. */
html body .comanda-banner-126{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important;padding:14px 16px!important;border-bottom:0!important;box-shadow:none!important}
html body .comanda-banner-main-126{min-width:0!important}
html body .comanda-banner-copy-126{display:grid!important;gap:3px!important;min-width:0!important}
html body .comanda-banner-copy-126 .page-title{font-size:20px!important;line-height:1.15!important;margin:0!important}
html body .comanda-banner-copy-126 p{margin:0!important;font-size:12px!important;line-height:1.35!important;color:var(--fg)!important}
html body .comanda-banner-copy-126 p.small{font-size:10px!important;color:var(--muted)!important}
html body .comanda-banner-actions-126{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;flex-wrap:nowrap!important;min-width:0!important}
html body .comanda-banner-actions-126 .bp-icon-only-126{width:40px!important;min-width:40px!important;height:40px!important;padding:0!important;display:grid!important;place-items:center!important}
html body .comanda-banner-actions-126 .bp-icon-only-126 .ui-icon{margin:0!important}
@media(max-width:720px){html body .comanda-banner-126{grid-template-columns:1fr!important;align-items:start!important}html body .comanda-banner-actions-126{justify-content:flex-start!important;flex-wrap:wrap!important}}

/* Agenda: dias passados permanecem visualmente normais; status claro e cancelado tracejado. */
html body .agenda-page-126 .agenda-day{background:var(--surface)!important;opacity:1!important;filter:none!important}
html body .agenda-page-126 .agenda-day:not(.agenda-day-empty){min-height:118px!important;aspect-ratio:1.45/1!important}
html body .agenda-page-126 .agenda-event-126,
html body .agenda-page-126 .agenda-upcoming-item-126{display:flex!important;align-items:center!important;gap:6px!important;min-width:0!important;border:1px solid var(--border)!important;background:var(--surface2)!important;color:var(--fg)!important;box-shadow:none!important;transform:none!important;text-align:left!important}
html body .agenda-page-126 .agenda-event-126{width:100%!important;padding:5px 6px!important;font-size:9px!important;overflow:hidden!important}
html body .agenda-page-126 .agenda-event-status-126{display:inline-flex!important;align-items:center!important;gap:4px!important;flex:0 0 auto!important;font-weight:800!important}
html body .agenda-page-126 .agenda-event-status-126 .ui-icon{width:13px!important;height:13px!important}
html body .agenda-page-126 .agenda-event-time-126{font-weight:900!important;white-space:nowrap!important}
html body .agenda-page-126 .agenda-event-title-126{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html body .agenda-page-126 .status-reservada{border-color:color-mix(in srgb,var(--primary) 45%,var(--border))!important;color:var(--primary)!important}
html body .agenda-page-126 .status-confirmada{border-color:color-mix(in srgb,var(--secondary) 50%,var(--border))!important;color:var(--secondary)!important}
html body .agenda-page-126 .status-concluida{border-color:color-mix(in srgb,var(--green) 48%,var(--border))!important;color:var(--green)!important}
html body .agenda-page-126 .status-cancelada{border-color:color-mix(in srgb,var(--danger) 48%,var(--border))!important;color:var(--danger)!important;text-decoration:line-through!important;text-decoration-thickness:1px!important}
html body .agenda-upcoming-list-126{display:grid!important;gap:8px!important}
html body .agenda-upcoming-item-126{grid-template-columns:auto auto auto minmax(0,1fr)!important;padding:10px!important}
html body .agenda-past-note-126{display:flex!important;align-items:center!important;gap:8px!important;padding:10px 12px!important;border:1px solid var(--border)!important;background:var(--surface2)!important;color:var(--muted)!important;font-size:11px!important}
@media(max-width:760px){html body .agenda-page-126 .agenda-day:not(.agenda-day-empty){aspect-ratio:auto!important;min-height:92px!important}html body .agenda-upcoming-item-126{grid-template-columns:auto auto minmax(0,1fr)!important}.agenda-event-day-126{display:none!important}}

/* Cozinha: superfícies neutras; cor só no status. */
html body .kitchen :is(.kcol,.kds-column){background:var(--surface)!important;border:1px solid var(--border)!important}
html body .kitchen .khead{background:transparent!important;border-bottom:1px solid var(--border)!important;color:var(--fg)!important}
html body .kitchen .kds-item{background:var(--surface2)!important;border-color:var(--border)!important}
html body .kitchen .korder.kds-order-card-120{background:var(--surface)!important;border-color:var(--border)!important}
html body .kitchen .korder.kds-order-card-120:is(:hover,:focus-within){background:color-mix(in srgb,var(--primary) 3%,var(--surface))!important;border-color:color-mix(in srgb,var(--primary) 52%,var(--border))!important}
html body .kitchen .kds-item-actions{margin-left:auto!important;display:flex!important;align-items:center!important}
html body .kitchen .kds-item-cancel{width:32px!important;height:32px!important;min-width:32px!important;padding:0!important}

/* Delivery: sem linha decorativa no nome; mapa após referência; modal de itens acima de tudo. */
html body .delivery-new-order-126 .delivery-name-autocomplete{border-bottom:0!important;padding-bottom:0!important}
html body .delivery-new-order-126 #delivery-map-149{margin-top:0!important;min-height:190px!important;border:1px solid var(--border)!important}
html body .delivery-payment-grid-126{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
html body .delivery-payment-btn-126{min-width:0!important;min-height:48px!important;padding:8px 10px!important}
html body .delivery-payment-btn-126>span:last-child{min-width:0!important;text-align:left!important}
html body .delivery-fee-row-126{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;padding:12px!important;border:1px solid var(--border)!important;background:var(--surface2)!important}
html body .delivery-items-submodal-126{z-index:1500000!important}
html body .delivery-items-submodal-126>.delivery-items-modal-149{width:min(860px,calc(100vw - 36px))!important;max-width:860px!important;max-height:calc(100dvh - 36px)!important;margin:auto!important}
html body .delivery-items-submodal-126 #delivery-product-search{box-shadow:none!important}
@media(max-width:680px){html body .delivery-payment-grid-126{grid-template-columns:1fr!important}}

/* Produtos: card/lista consistentes, controles juntos e ações sem quebrar a leitura. */
html body .product-view-toggle-126{display:flex!important;gap:6px!important;align-items:center!important}
html body .products-card-grid-126{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important;gap:12px!important}
html body .product-card-126{display:flex!important;flex-direction:column!important;gap:12px!important;min-height:260px!important}
html body .product-card-126 .product-head{display:grid!important;grid-template-columns:64px minmax(0,1fr) auto!important;gap:10px!important;align-items:start!important}
html body .product-card-126 .product-thumb{width:64px!important;height:64px!important;object-fit:contain!important}
html body .product-card-126 .product-actions-126{margin-top:auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;flex-wrap:nowrap!important}
html body .product-controls-left-126{flex:0 0 auto!important}
html body .product-row-actions-126{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:wrap!important}
html body .product-stock-stepper-126{display:inline-grid!important;grid-template-columns:34px 42px 34px!important;align-items:center!important;gap:0!important}
html body .product-stock-stepper-126 button{width:34px!important;height:34px!important;min-width:34px!important;padding:0!important}
html body .product-stock-stepper-126 b{text-align:center!important}
html body .product-list-actions-126{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:nowrap!important}
html body .product-list-name-126{display:flex!important;align-items:center!important;gap:10px!important;min-width:220px!important}
html body .product-list-name-126 img,html body .product-list-name-126 .thumb-placeholder{width:40px!important;height:40px!important;object-fit:contain!important;flex:0 0 40px!important}
html body .product-status-row-126{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border:1px solid var(--border)!important;padding:10px 12px!important;background:var(--surface2)!important}
html body .catalog-result-126{display:flex!important;gap:12px!important;align-items:flex-start!important}
html body .catalog-result-126>img{width:84px!important;height:84px!important;object-fit:contain!important}
@media(max-width:760px){html body .products-card-grid-126{grid-template-columns:1fr!important}html body .product-card-126 .product-actions-126{align-items:flex-start!important;flex-direction:column!important}html body .product-row-actions-126{width:100%!important;justify-content:flex-start!important}}

/* Relatórios em modo compatível continuam visualmente completos. */
html body .reports-pro-123 .empty-inline{min-height:72px!important;display:grid!important;place-items:center!important}
/* END IDMIX Tech 1.0.26 */

/* ===== IDMIX Tech 1.0.28 · correções visuais cirúrgicas ===== */
/* Detalhes da Comanda: Mesa/cliente herdam a cor legível do banner e a faixa inferior é removida. */
html body .comanda-banner-126 .comanda-banner-copy-126 p{color:inherit!important}
html body .comanda-banner-126 .comanda-banner-copy-126 p.small{color:inherit!important;opacity:.78!important}
html body .comanda-banner-126::after{content:none!important;display:none!important;width:0!important;height:0!important;background:none!important}
html body .comanda-banner-126{border-bottom:0!important;box-shadow:none!important}

/* Vendas recentes > Cancelar venda: centralização absoluta no viewport, independente da posição do menu. */
html body .bp-confirm-over-everything-126{
  position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:18px!important;overflow:auto!important;box-sizing:border-box!important;z-index:1600000!important;
}
html body .bp-confirm-over-everything-126>.modal{
  position:relative!important;inset:auto!important;margin:auto!important;transform:none!important;
  width:min(540px,calc(100vw - 36px))!important;max-width:540px!important;max-height:calc(100dvh - 36px)!important;
  z-index:1600001!important;
}
@media(max-width:560px){html body .bp-confirm-over-everything-126{padding:10px!important}html body .bp-confirm-over-everything-126>.modal{width:min(100%,calc(100vw - 20px))!important;max-height:calc(100dvh - 20px)!important}}
/* END IDMIX Tech 1.0.28 */

/* ===== IDMIX Tech 1.0.29 · popovers e modal PDV consolidados ===== */
/* Cards do topo são portalizados no body e posicionados pelo JS conforme o trigger/menu real. */
html body .bp-top-card-129,
html body .bp-top-popover-145.bp-top-card-129,
html body .app-header-actions #user-menu-popover.bp-top-card-129:not(.hidden){
  position:fixed!important;right:auto!important;bottom:auto!important;
  width:min(420px,calc(100vw - 20px))!important;max-width:420px!important;
  min-height:150px!important;max-height:min(70dvh,620px)!important;overflow:auto!important;
  z-index:950000!important;pointer-events:auto!important;visibility:visible!important;opacity:1!important;
  background:var(--surface)!important;border:1px solid var(--border)!important;box-shadow:none!important;
}
html body .bp-top-hover-bridge-129{position:fixed!important;z-index:949999!important;background:transparent!important;pointer-events:auto!important}
/* O menu superior nunca cobre Pedidos/Chamados/Alertas/Usuário. */
html body .app-menu{z-index:610!important}
@media(max-width:800px){html body .bp-top-card-129,html body .bp-top-popover-145.bp-top-card-129,html body .app-header-actions #user-menu-popover.bp-top-card-129:not(.hidden){width:calc(100vw - 20px)!important;max-width:none!important}}

/* Cancelar venda recente: centro geométrico do viewport, independente do menu lateral/retraído. */
html body > #pdv-cancel-stack-104.bp-confirm-viewport-129{
  position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;
  inset:0!important;width:auto!important;height:auto!important;margin:0!important;padding:18px!important;
  display:block!important;overflow:auto!important;box-sizing:border-box!important;
  z-index:1600000!important;background:rgba(2,6,23,.68)!important;backdrop-filter:blur(7px)!important;-webkit-backdrop-filter:blur(7px)!important;
}
html body > #pdv-cancel-stack-104.bp-confirm-viewport-129 > .bp-confirm-modal-129{
  position:fixed!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;
  width:min(540px,calc(100vw - 36px))!important;max-width:540px!important;max-height:calc(100dvh - 36px)!important;
  margin:0!important;transform:translate(-50%,-50%)!important;z-index:1600001!important;overflow:auto!important;
}
html body > #pdv-cancel-stack-104.bp-confirm-viewport-129 .modal-head .x,
html body > #pdv-cancel-stack-104.bp-confirm-viewport-129 .modal-head .x:is(:hover,:focus,:focus-visible,:active){
  border:0!important;border-width:0!important;border-style:none!important;outline:0!important;box-shadow:none!important;
  background:transparent!important;border-radius:0!important;transform:none!important;filter:none!important;
}
@media(max-width:560px){html body > #pdv-cancel-stack-104.bp-confirm-viewport-129{padding:10px!important}html body > #pdv-cancel-stack-104.bp-confirm-viewport-129 > .bp-confirm-modal-129{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important}}
/* END IDMIX Tech 1.0.29 */



/* ===== IDMIX Tech 1.0.30 · refinamento do banner de Detalhes da Comanda ===== */
/* Hierarquia compacta: Comanda, cliente, mesa e abertura à esquerda; ações centralizadas à direita. */
html body .comanda-detail-modal-117 .page-head.comanda-banner-126{
  grid-template-columns:minmax(0,1fr) minmax(300px,330px)!important;
  align-items:center!important;
  gap:14px!important;
  padding:11px 14px!important;
  min-height:0!important;
  border:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
html body .comanda-detail-modal-117 .comanda-banner-main-126{align-self:center!important;min-width:0!important}
html body .comanda-detail-modal-117 .comanda-banner-copy-126{display:grid!important;gap:3px!important;align-content:center!important;min-width:0!important}
html body .comanda-detail-modal-117 .comanda-banner-copy-126 .page-title{
  font-size:16px!important;line-height:1.15!important;font-weight:760!important;letter-spacing:-.015em!important;margin:0 0 2px!important;
}
html body .comanda-detail-modal-117 .comanda-banner-copy-126 .comanda-customer-line-130{
  font-size:13px!important;line-height:1.25!important;font-weight:700!important;margin:0!important;color:inherit!important;
}
html body .comanda-detail-modal-117 .comanda-banner-copy-126 .comanda-table-line-130{
  font-size:12px!important;line-height:1.25!important;font-weight:600!important;margin:0!important;color:inherit!important;
}
html body .comanda-detail-modal-117 .comanda-banner-copy-126 .comanda-opened-line-130{
  font-size:10px!important;line-height:1.3!important;margin:1px 0 0!important;color:inherit!important;opacity:.78!important;
}
html body .comanda-detail-modal-117 .comanda-banner-actions-126{
  width:100%!important;min-width:0!important;align-self:center!important;justify-self:stretch!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;flex-wrap:nowrap!important;
}
/* A barra grossa inferior do template UDesign não pertence ao banner de Comanda. */
html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126::after,
html[data-ui-template="udesign"] body .comanda-detail-modal-117 .comanda-banner-126::after,
html body .comanda-detail-modal-117 .page-head.comanda-banner-126::after{
  content:none!important;display:none!important;width:0!important;height:0!important;right:auto!important;bottom:auto!important;
  border:0!important;background:none!important;box-shadow:none!important;
}
@media(max-width:720px){
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126{grid-template-columns:1fr!important;gap:10px!important}
  html body .comanda-detail-modal-117 .comanda-banner-actions-126{justify-content:flex-start!important;flex-wrap:wrap!important}
}
/* END IDMIX Tech 1.0.30 */

/* ===== IDMIX Tech 1.0.31 · ações no topo direito do banner da Comanda ===== */
/* Mantém o conteúdo à esquerda e ancora as ações no topo da coluna direita. */
html body .comanda-detail-modal-117 .page-head.comanda-banner-126{
  align-items:start!important;
}
html body .comanda-detail-modal-117 .comanda-banner-main-126{
  align-self:start!important;
}
html body .comanda-detail-modal-117 .comanda-banner-actions-126{
  align-self:start!important;
  justify-self:stretch!important;
  justify-content:center!important;
  margin-top:0!important;
  padding-top:0!important;
}
@media(max-width:720px){
  html body .comanda-detail-modal-117 .comanda-banner-actions-126{
    justify-content:flex-start!important;
  }
}
/* END IDMIX Tech 1.0.31 */

/* ===== IDMIX Tech 1.0.32 · correção estrutural das ações do banner da Comanda ===== */
/*
 * O template UDesign força .page-head para display:flex com !important.
 * Aqui o banner da Comanda volta explicitamente a ser grid com seletor mais específico,
 * garantindo texto à esquerda e ações realmente ancoradas no topo direito.
 */
html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126,
html body .comanda-detail-modal-117 .page-head.comanda-banner-126{
  display:grid!important;
  grid-template-areas:"copy actions"!important;
  grid-template-columns:minmax(0,1fr) minmax(300px,330px)!important;
  grid-template-rows:auto!important;
  align-items:start!important;
  justify-content:stretch!important;
  flex-direction:initial!important;
  flex-wrap:initial!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-main-126{
  grid-area:copy!important;
  align-self:start!important;
  justify-self:stretch!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-actions-126{
  grid-area:actions!important;
  align-self:start!important;
  justify-self:stretch!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
}
@media(max-width:720px){
  html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126,
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126{
    grid-template-areas:"copy" "actions"!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
  }
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-actions-126{
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
  }
}
/* END IDMIX Tech 1.0.32 */


/* ===== IDMIX Tech 1.0.33 · ações centralizadas na altura do banner, sem scroll/corte ===== */
/*
 * Desktop: o bloco de ações ocupa o tamanho real dos botões e fica centralizado
 * verticalmente em relação à altura do banner. O overflow horizontal legado da
 * classe .comanda-banner-actions-150 é neutralizado para não criar barra de rolagem.
 */
html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126,
html body .comanda-detail-modal-117 .page-head.comanda-banner-126{
  display:grid!important;
  grid-template-areas:"copy actions"!important;
  grid-template-columns:minmax(0,1fr) max-content!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  overflow:visible!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-main-126{
  grid-area:copy!important;
  align-self:center!important;
  min-width:0!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-actions-126{
  grid-area:actions!important;
  align-self:center!important;
  justify-self:end!important;
  width:max-content!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  flex-wrap:nowrap!important;
  overflow:visible!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-actions-126::-webkit-scrollbar{
  display:none!important;
  width:0!important;
  height:0!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-actions-126 > .btn{
  flex:0 0 auto!important;
  max-width:none!important;
  white-space:nowrap!important;
}
@media(max-width:720px){
  html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126,
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126{
    grid-template-areas:"copy" "actions"!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    overflow:visible!important;
  }
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-actions-126{
    width:100%!important;
    max-width:100%!important;
    justify-self:stretch!important;
    justify-content:center!important;
    flex-wrap:wrap!important;
    overflow:visible!important;
  }
}
/* END IDMIX Tech 1.0.33 */


/* ===== IDMIX Tech 1.0.37 · banners sem regressão de tipografia ===== */
/*
 * A partir da base 1.0.33, replica somente a MECÂNICA do banner aprovado:
 * conteúdo à esquerda + área secundária/ações à direita, centralizados na altura.
 * Não altera font-size, line-height ou font-weight dos banners das outras páginas.
 */
html[data-ui-template="udesign"] body .page-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  justify-content:stretch!important;
  gap:22px!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
html[data-ui-template="udesign"] body .page-head > :first-child{
  min-width:0!important;
  align-self:center!important;
  justify-self:stretch!important;
}
html[data-ui-template="udesign"] body .page-head > :last-child:not(:first-child){
  min-width:0!important;
  max-width:100%!important;
  align-self:center!important;
  justify-self:end!important;
}
html[data-ui-template="udesign"] body .page-head:has(> .actions){
  grid-template-columns:minmax(0,1fr) minmax(260px,46%)!important;
}
html[data-ui-template="udesign"] body .page-head > .actions{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  overflow:visible!important;
  overflow-x:visible!important;
}
html[data-ui-template="udesign"] body .page-head > .actions > :is(.btn,button){
  flex:0 1 auto!important;
  max-width:100%!important;
}
/* Ícone/círculo decorativo: continua GRANDE, mas sua caixa inteira nasce dentro do banner. */
html[data-ui-template="udesign"] body .page-head::before{
  box-sizing:border-box!important;
  width:min(330px,calc(100% - 24px))!important;
  height:330px!important;
  right:12px!important;
  left:auto!important;
  top:-92px!important;
  transform:none!important;
  max-width:none!important;
  pointer-events:none!important;
}
/* Detalhes da Comanda: preserva a tipografia própria já aprovada e corrige apenas geometria. */
html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126,
html body .comanda-detail-modal-117 .page-head.comanda-banner-126{
  display:grid!important;
  grid-template-areas:"copy actions"!important;
  grid-template-columns:minmax(0,1fr) minmax(260px,46%)!important;
  align-items:center!important;
  gap:14px!important;
  max-width:100%!important;
  overflow:hidden!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-main-126{
  grid-area:copy!important;
  align-self:center!important;
  min-width:0!important;
  max-width:100%!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-actions-126,
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-actions-150{
  grid-area:actions!important;
  align-self:center!important;
  justify-self:stretch!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  overflow:visible!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
  scrollbar-width:none!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > :is(.comanda-banner-actions-126,.comanda-banner-actions-150) > .btn{
  flex:0 1 auto!important;
  max-width:100%!important;
}
html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126::before,
html body .comanda-detail-modal-117 .page-head.comanda-banner-126::before{
  box-sizing:border-box!important;
  width:min(330px,calc(100% - 24px))!important;
  height:330px!important;
  right:12px!important;
  left:auto!important;
  top:-92px!important;
  transform:none!important;
}
@media(max-width:900px){
  html[data-ui-template="udesign"] body .page-head{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:14px!important;
  }
  html[data-ui-template="udesign"] body .page-head:has(> .actions){
    grid-template-columns:minmax(0,1fr) minmax(220px,48%)!important;
  }
  html[data-ui-template="udesign"] body .page-head::before,
  html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126::before{
    box-sizing:border-box!important;
    width:min(210px,calc(100% - 16px))!important;
    height:210px!important;
    right:8px!important;
    top:-48px!important;
  }
}
@media(max-width:720px){
  html[data-ui-template="udesign"] body .page-head,
  html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126,
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:none!important;
    gap:12px!important;
  }
  html[data-ui-template="udesign"] body .page-head > :last-child:not(:first-child),
  html[data-ui-template="udesign"] body .page-head > .actions,
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > :is(.comanda-banner-actions-126,.comanda-banner-actions-150){
    width:100%!important;
    max-width:100%!important;
    justify-self:stretch!important;
    justify-content:center!important;
    flex-wrap:wrap!important;
  }
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-main-126,
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > :is(.comanda-banner-actions-126,.comanda-banner-actions-150){
    grid-area:auto!important;
  }
}
/* END IDMIX Tech 1.0.37 */

/* ===== IDMIX Tech 1.0.38 · banners: ações confortáveis à direita + ícone grande recortado ===== */
/*
 * Preserva integralmente a tipografia existente. No desktop, as ações usam sua largura real,
 * ficam no lado direito e não podem encolher. O círculo decorativo continua com 330px,
 * mas apenas uma faixa dele é revelada dentro do próprio banner, sem right negativo/scroll.
 */
html[data-ui-template="udesign"] body .page-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) max-content!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  justify-content:stretch!important;
  gap:22px!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
html[data-ui-template="udesign"] body .page-head > :first-child{
  min-width:0!important;
  align-self:center!important;
  justify-self:stretch!important;
}
html[data-ui-template="udesign"] body .page-head > :last-child:not(:first-child){
  width:max-content!important;
  min-width:max-content!important;
  max-width:none!important;
  align-self:center!important;
  justify-self:end!important;
}
html[data-ui-template="udesign"] body .page-head > .actions{
  width:max-content!important;
  min-width:max-content!important;
  max-width:none!important;
  margin-left:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  overflow:visible!important;
  overflow-x:visible!important;
}
html[data-ui-template="udesign"] body .page-head > .actions > :is(.btn,button){
  flex:0 0 auto!important;
  width:auto!important;
  max-width:none!important;
  white-space:nowrap!important;
}
/* Círculo grande, visualmente no extremo direito, mas geometricamente inteiro dentro do banner. */
html[data-ui-template="udesign"] body .page-head::before{
  box-sizing:border-box!important;
  width:330px!important;
  height:330px!important;
  right:0!important;
  left:auto!important;
  top:-185px!important;
  transform:none!important;
  clip-path:inset(0 0 0 55%)!important;
  pointer-events:none!important;
}
/* Detalhes da Comanda segue exatamente a mesma mecânica, sem comprimir suas ações. */
html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126,
html body .comanda-detail-modal-117 .page-head.comanda-banner-126{
  display:grid!important;
  grid-template-areas:"copy actions"!important;
  grid-template-columns:minmax(0,1fr) max-content!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  gap:14px!important;
  max-width:100%!important;
  overflow:hidden!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-main-126{
  grid-area:copy!important;
  align-self:center!important;
  min-width:0!important;
  max-width:100%!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-actions-126,
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-actions-150{
  grid-area:actions!important;
  align-self:center!important;
  justify-self:end!important;
  width:max-content!important;
  min-width:max-content!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  flex-wrap:nowrap!important;
  overflow:visible!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
}
html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > :is(.comanda-banner-actions-126,.comanda-banner-actions-150) > .btn{
  flex:0 0 auto!important;
  width:auto!important;
  max-width:none!important;
  white-space:nowrap!important;
}
html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126::before,
html body .comanda-detail-modal-117 .page-head.comanda-banner-126::before{
  width:330px!important;
  height:330px!important;
  right:0!important;
  left:auto!important;
  top:-185px!important;
  transform:none!important;
  clip-path:inset(0 0 0 55%)!important;
}
/* Quando a largura útil realmente fica pequena, empilha em vez de apertar ou cortar botões. */
@media(max-width:980px){
  html[data-ui-template="udesign"] body .page-head,
  html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126,
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:none!important;
    gap:12px!important;
  }
  html[data-ui-template="udesign"] body .page-head > :last-child:not(:first-child),
  html[data-ui-template="udesign"] body .page-head > .actions,
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > :is(.comanda-banner-actions-126,.comanda-banner-actions-150){
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    justify-self:stretch!important;
    justify-content:flex-end!important;
    flex-wrap:wrap!important;
  }
  html[data-ui-template="udesign"] body .page-head > .actions > :is(.btn,button),
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > :is(.comanda-banner-actions-126,.comanda-banner-actions-150) > .btn{
    flex:0 0 auto!important;
    width:auto!important;
  }
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > .comanda-banner-main-126,
  html body .comanda-detail-modal-117 .page-head.comanda-banner-126 > :is(.comanda-banner-actions-126,.comanda-banner-actions-150){
    grid-area:auto!important;
  }
  html[data-ui-template="udesign"] body .page-head::before,
  html[data-ui-template="udesign"] body .comanda-detail-modal-117 .page-head.comanda-banner-126::before{
    width:210px!important;
    height:210px!important;
    right:0!important;
    top:-125px!important;
    clip-path:inset(0 0 0 52%)!important;
  }
}
/* END IDMIX Tech 1.0.38 */


/* ===== IDMIX Tech 1.0.39 · banners sem ícone + refinamento dos cards do PDV ===== */
/* O elemento decorativo de fundo foi removido de todos os banners, sem alterar tipografia ou conteúdo. */
html body .page-head::before,
html[data-ui-template="udesign"] body .page-head::before,
html body .comanda-detail-modal-117 .page-head.comanda-banner-126::before{
  content:none!important;
  display:none!important;
}

/* PDV: nome e preço mais próximos, com hierarquia de valor mais forte que o título. */
html body .pdv-product.pdv-product-112 .pdv-product-body{
  gap:3px!important;
  padding:7px 9px 8px!important;
}
html body .pdv-product.pdv-product-112 .pdv-product-name-113{
  font-size:13px!important;
  line-height:1.15!important;
  min-height:30px!important;
}
html body .pdv-product.pdv-product-112 .pdv-product-footer-113{
  margin-top:0!important;
  gap:5px!important;
}
html body .pdv-product.pdv-product-112 .pdv-price-line strong{
  font-size:16.5px!important;
  line-height:1!important;
  font-weight:900!important;
}
/* END IDMIX Tech 1.0.39 */


/* ===== IDMIX Tech 1.0.40 · LGPD/cookies + Agenda refinada ===== */
.bp-cookie-banner-1040{position:fixed;left:18px;right:18px;bottom:18px;z-index:130000;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:16px 18px;background:var(--surface,#fff);color:var(--fg,#172033);border:1px solid var(--border,#d8dee8);border-radius:var(--ui-card-radius,14px);box-shadow:0 12px 38px rgba(15,23,42,.16)}
.bp-cookie-copy-1040{min-width:0}.bp-cookie-copy-1040>b{display:block;font-size:14px;margin-bottom:3px}.bp-cookie-copy-1040 p{margin:0;font-size:11px;line-height:1.45;color:var(--muted,#687386);max-width:760px}.bp-cookie-copy-1040 a,.bp-privacy-links-1040 a{display:inline-block;margin-top:7px;font-size:10px;color:var(--primary);font-weight:600}.bp-cookie-actions-1040{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.bp-cookie-actions-1040 .btn{white-space:nowrap}
.bp-privacy-trigger-1040{position:fixed;left:12px;bottom:12px;z-index:85000;display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 9px;border:1px solid var(--border,#d8dee8);border-radius:999px;background:var(--surface,#fff);color:var(--muted,#687386);font:600 10px/1 var(--app-font,system-ui);cursor:pointer}.bp-privacy-trigger-1040 .ui-icon{width:15px!important;height:15px!important;min-width:15px!important}
.bp-privacy-category-1040{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--border)}.bp-privacy-category-1040>span{display:grid;gap:3px}.bp-privacy-category-1040 b{font-size:12px}.bp-privacy-category-1040 small{font-size:10px;line-height:1.45;color:var(--muted)}.bp-privacy-category-1040 input{width:18px;height:18px;accent-color:var(--primary)}.bp-privacy-category-1040.is-unused{opacity:.58}.bp-privacy-links-1040{padding-top:2px}

/* Agenda: controles de mês pertencem ao calendário. */
html body .agenda-calendar-1040{padding:0!important;overflow:hidden!important}
html body .agenda-calendar-toolbar-1040{display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px!important;align-items:center!important;gap:10px!important;padding:11px 12px!important;border-bottom:1px solid var(--border)!important}
html body .agenda-calendar-month-1040{display:grid!important;justify-items:center!important;gap:1px!important;min-width:0!important;text-align:center!important}.agenda-calendar-month-1040 small{font-size:9px!important;color:var(--muted)!important}.agenda-calendar-month-1040 strong{font-size:13px!important;text-transform:capitalize!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}
html body .agenda-nav-1040{width:38px!important;height:38px!important;min-width:38px!important;display:grid!important;place-items:center!important;padding:0!important}
html body .agenda-weekdays{border-bottom:0!important;border-left:1px solid var(--border)!important;border-right:1px solid var(--border)!important}.agenda-weekdays span{border-right:1px solid var(--border)!important}.agenda-weekdays span:last-child{border-right:0!important}
html body .agenda-grid-1040{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;border-top:1px solid var(--border)!important;border-left:1px solid var(--border)!important}
html body .agenda-grid-1040>.agenda-day{position:relative!important;min-height:132px!important;padding:7px!important;border-right:1px solid var(--border)!important;border-bottom:1px solid var(--border)!important;overflow:visible!important;background:var(--surface)!important}
html body .agenda-grid-1040>.agenda-day:nth-child(7n){border-right:1px solid var(--border)!important}
html body .agenda-grid-1040>.agenda-day.today{box-shadow:none!important;z-index:1!important}
html body .agenda-grid-1040>.agenda-day.today::after{content:""!important;display:block!important;position:absolute!important;inset:0!important;border:2px solid var(--primary)!important;pointer-events:none!important;z-index:5!important}
html body .agenda-events-1040{display:grid!important;gap:5px!important;margin-top:4px!important;min-width:0!important}
html body .agenda-event-1040{width:100%!important;min-width:0!important;display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;align-items:start!important;gap:6px!important;padding:5px 6px!important;border:1px solid var(--border)!important;background:var(--surface2,#f7f9fb)!important;color:var(--fg)!important;text-align:left!important;height:auto!important;min-height:34px!important;cursor:pointer!important}
html body .agenda-status-icon-1040{width:22px!important;height:22px!important;display:grid!important;place-items:center!important;border-radius:6px!important;background:color-mix(in srgb,var(--primary) 10%,var(--surface))!important;color:var(--primary)!important}.agenda-status-icon-1040 .ui-icon{width:14px!important;height:14px!important;min-width:14px!important;max-width:14px!important;min-height:14px!important;max-height:14px!important}
html body .agenda-event-copy-1040{display:grid!important;gap:2px!important;min-width:0!important}.agenda-event-copy-1040 strong{font-size:9px!important;line-height:1.1!important;font-weight:800!important}.agenda-event-copy-1040>span{font-size:9px!important;line-height:1.25!important;color:var(--fg)!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important}
html body .agenda-event-1040.status-confirmada .agenda-status-icon-1040,.agenda-upcoming-item-1040.status-confirmada .agenda-status-icon-1040{color:#075985!important;background:#eaf7ff!important}.agenda-event-1040.status-concluida .agenda-status-icon-1040,.agenda-upcoming-item-1040.status-concluida .agenda-status-icon-1040{color:#166534!important;background:#ecfdf3!important}.agenda-event-1040.status-cancelada .agenda-status-icon-1040,.agenda-upcoming-item-1040.status-cancelada .agenda-status-icon-1040{color:#b42318!important;background:#fff1f0!important}.agenda-event-1040.status-cancelada{opacity:.68!important}.agenda-event-1040.status-cancelada .agenda-event-copy-1040>span{text-decoration:line-through!important}
html body .agenda-more-1040{font-size:9px!important;color:var(--muted)!important;padding:2px 3px!important}
html body .agenda-upcoming-list-1040{display:grid!important;gap:7px!important}.agenda-upcoming-item-1040{width:100%!important;display:grid!important;grid-template-columns:30px 54px minmax(0,1fr)!important;align-items:center!important;gap:8px!important;padding:8px!important;border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--fg)!important;text-align:left!important;min-width:0!important;cursor:pointer!important}.agenda-upcoming-date-1040{display:grid!important;justify-items:center!important;gap:1px!important;border-right:1px solid var(--border)!important;padding-right:8px!important}.agenda-upcoming-date-1040 b{font-size:10px!important}.agenda-upcoming-date-1040 small{font-size:9px!important;color:var(--muted)!important}.agenda-upcoming-copy-1040{display:grid!important;gap:2px!important;min-width:0!important}.agenda-upcoming-copy-1040 b{font-size:11px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere!important}.agenda-upcoming-copy-1040 small{font-size:9px!important;line-height:1.3!important;color:var(--muted)!important;white-space:normal!important;overflow-wrap:anywhere!important}
@media(max-width:980px){.bp-cookie-banner-1040{grid-template-columns:1fr!important}.bp-cookie-actions-1040{justify-content:flex-start!important}.agenda-upcoming-1040{order:0!important}}
@media(max-width:720px){.bp-cookie-banner-1040{left:10px;right:10px;bottom:10px;padding:13px}.bp-cookie-actions-1040{display:grid!important;grid-template-columns:1fr 1fr!important}.bp-cookie-actions-1040 .btn:last-child{grid-column:1/-1!important}.bp-privacy-trigger-1040 span{display:none}.bp-privacy-trigger-1040{width:36px;height:36px;padding:0;place-content:center}.agenda-weekdays{display:none!important}html body .agenda-grid-1040{grid-template-columns:1fr!important;gap:7px!important;border:0!important;padding:8px!important}html body .agenda-grid-1040>.agenda-day-empty{display:none!important}html body .agenda-grid-1040>.agenda-day{min-height:auto!important;border:1px solid var(--border)!important;display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:8px!important}html body .agenda-grid-1040>.agenda-day.agenda-day-empty{display:none!important}html body .agenda-events-1040{margin-top:0!important}html body .agenda-event-1040{grid-template-columns:24px minmax(0,1fr)!important}.agenda-upcoming-item-1040{grid-template-columns:30px 50px minmax(0,1fr)!important}}
/* END IDMIX Tech 1.0.40 */

/* ===== IDMIX Tech 1.0.41 · campos de data editáveis + Agenda consolidada ===== */
.bp-date-control-1041{position:relative;display:flex;align-items:stretch;width:100%;min-width:0}.bp-native-date-source-1041{position:absolute!important;right:10px!important;bottom:2px!important;width:2px!important;height:2px!important;opacity:.001!important;pointer-events:none!important;padding:0!important;border:0!important}.bp-date-text-1041{padding-right:44px!important;min-width:0!important}.bp-date-picker-1041{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer;border-radius:calc(var(--radius) * .7);z-index:2}.bp-date-picker-1041:hover{background:var(--surface2);color:var(--primary)}.bp-date-picker-1041:focus-visible{outline:2px solid color-mix(in srgb,var(--primary) 55%,transparent);outline-offset:1px}.bp-date-picker-1041:disabled{opacity:.45;cursor:not-allowed}.bp-date-picker-1041 .ui-icon{width:17px;height:17px}.bp-date-control-1041:focus-within .bp-date-text-1041{border-color:color-mix(in srgb,var(--primary) 55%,var(--border));box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)}

html body .agenda-page-1041{display:grid!important;gap:14px!important;min-width:0!important}.agenda-summary-1041{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.agenda-summary-1041 article{display:flex;align-items:center;gap:10px;min-width:0;padding:11px 12px;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow)}.agenda-summary-1041 article>span{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border-radius:10px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary)}.agenda-summary-1041 article>span .ui-icon{width:17px;height:17px}.agenda-summary-1041 article>div{display:grid;gap:1px;min-width:0}.agenda-summary-1041 small{font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-summary-1041 b{font-size:17px;line-height:1.1}
.agenda-layout-1041{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(270px,.7fr);gap:12px;align-items:start;min-width:0}.agenda-calendar-1041,.agenda-upcoming-1041{padding:0!important;overflow:hidden!important;min-width:0}.agenda-toolbar-1041{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--surface2) 72%,var(--surface)),var(--surface))}.agenda-month-nav-1041{display:grid;grid-template-columns:38px minmax(150px,1fr) 38px;align-items:center;gap:8px;min-width:250px}.agenda-month-nav-1041>div{display:grid;justify-items:center;gap:1px;text-align:center;min-width:0}.agenda-month-nav-1041 small{font-size:9px;color:var(--muted)}.agenda-month-nav-1041 strong{font-size:13px;text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.agenda-icon-btn-1041{width:36px;height:36px;padding:0;border:1px solid var(--border);background:var(--surface);color:var(--fg);display:grid;place-items:center;border-radius:10px;cursor:pointer}.agenda-icon-btn-1041:hover{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));color:var(--primary);background:color-mix(in srgb,var(--primary) 5%,var(--surface))}.agenda-toolbar-actions-1041{display:flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0}.agenda-toolbar-actions-1041 .bp-date-control-1041{width:148px;flex:0 0 148px}.agenda-toolbar-actions-1041 .bp-date-text-1041{height:36px!important;font-size:10px!important}.agenda-toolbar-actions-1041 .bp-date-picker-1041{height:30px;width:30px}
.agenda-filters-1041{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid var(--border);overflow:visible}.agenda-filters-1041::-webkit-scrollbar{display:none}.agenda-filter-1041{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;padding:5px 9px;font-size:9px;font-weight:700;white-space:nowrap;cursor:pointer}.agenda-filter-1041.active{background:color-mix(in srgb,var(--primary) 10%,var(--surface));border-color:color-mix(in srgb,var(--primary) 40%,var(--border));color:var(--primary)}
.agenda-weekdays-1041{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:var(--surface2);border-bottom:1px solid var(--border)}.agenda-weekdays-1041 span{padding:7px 5px;text-align:center;font-size:9px;font-weight:800;color:var(--muted);border-right:1px solid var(--border)}.agenda-weekdays-1041 span:last-child{border-right:0}.agenda-grid-1041{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:var(--border);gap:1px;min-width:0}.agenda-day-1041,.agenda-day-empty-1041{background:var(--surface);min-width:0;min-height:126px}.agenda-day-1041{position:relative;padding:7px;cursor:pointer;transition:background .15s ease}.agenda-day-1041:hover{background:color-mix(in srgb,var(--primary) 2.5%,var(--surface))}.agenda-day-1041.today{z-index:1}.agenda-day-1041.today::after{content:"";position:absolute;inset:0;border:2px solid var(--primary);pointer-events:none;z-index:5}.agenda-day-head-1041{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:5px}.agenda-day-head-1041>b{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;font-size:10px}.agenda-day-1041.today .agenda-day-head-1041>b{background:var(--primary);color:#fff}.agenda-day-head-1041>span{font-size:8px;font-weight:800;min-width:18px;height:18px;padding:0 5px;display:grid;place-items:center;border-radius:999px;background:var(--surface2);color:var(--muted)}.agenda-events-1041{display:grid;gap:4px;min-width:0}.agenda-event-1041{width:100%;min-width:0;display:grid;grid-template-columns:23px minmax(0,1fr);align-items:start;gap:5px;padding:5px;border:1px solid var(--border);border-radius:8px;background:var(--surface2);color:var(--fg);text-align:left;cursor:pointer}.agenda-event-1041:hover{border-color:color-mix(in srgb,var(--primary) 30%,var(--border));background:color-mix(in srgb,var(--primary) 4%,var(--surface))}.agenda-status-icon-1041{width:22px;height:22px;display:grid;place-items:center;border-radius:7px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary)}.agenda-status-icon-1041 .ui-icon{width:13px;height:13px}.agenda-event-copy-1041{display:grid;gap:1px;min-width:0}.agenda-event-copy-1041 strong{font-size:9px;line-height:1.1}.agenda-event-copy-1041 span{font-size:9px;line-height:1.25;white-space:normal;overflow-wrap:anywhere}.agenda-event-1041.status-confirmada .agenda-status-icon-1041,.agenda-upcoming-item-1041.status-confirmada .agenda-status-icon-1041{color:#075985;background:#eaf7ff}.agenda-event-1041.status-concluida .agenda-status-icon-1041,.agenda-upcoming-item-1041.status-concluida .agenda-status-icon-1041{color:#166534;background:#ecfdf3}.agenda-event-1041.status-cancelada .agenda-status-icon-1041,.agenda-upcoming-item-1041.status-cancelada .agenda-status-icon-1041{color:#b42318;background:#fff1f0}.agenda-event-1041.status-cancelada{opacity:.65}.agenda-event-1041.status-cancelada .agenda-event-copy-1041 span{text-decoration:line-through}.agenda-more-1041{font-size:8px;color:var(--muted);padding:2px 3px}
.agenda-upcoming-head-1041{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:13px;border-bottom:1px solid var(--border)}.agenda-upcoming-head-1041 h3{margin:2px 0}.agenda-upcoming-list-1041{display:grid;gap:0;max-height:630px;overflow:auto}.agenda-upcoming-item-1041{display:grid;grid-template-columns:30px 54px minmax(0,1fr);align-items:center;gap:8px;width:100%;min-width:0;padding:9px 10px;border:0;border-bottom:1px solid var(--border);background:var(--surface);color:var(--fg);text-align:left;cursor:pointer}.agenda-upcoming-item-1041:hover{background:var(--surface2)}.agenda-upcoming-date-1041{display:grid;justify-items:center;gap:1px;padding-right:8px;border-right:1px solid var(--border)}.agenda-upcoming-date-1041 b{font-size:10px}.agenda-upcoming-date-1041 small{font-size:8px;color:var(--muted)}.agenda-upcoming-copy-1041{display:grid;gap:2px;min-width:0}.agenda-upcoming-copy-1041 b{font-size:10px;line-height:1.25;white-space:normal;overflow-wrap:anywhere}.agenda-upcoming-copy-1041 small{font-size:9px;line-height:1.25;color:var(--muted);white-space:normal;overflow-wrap:anywhere}.agenda-empty-1041{display:grid;justify-items:center;text-align:center;gap:5px;padding:34px 16px;color:var(--muted)}.agenda-empty-1041 .ui-icon{width:24px;height:24px}.agenda-empty-1041 b{color:var(--fg);font-size:11px}.agenda-empty-1041 span{font-size:9px}
.agenda-form-1041,.agenda-settings-form-1041{display:grid;gap:11px}.agenda-form-section-1041{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.agenda-form-section-title-1041{display:flex;align-items:center;gap:9px;padding-bottom:9px;border-bottom:1px solid var(--border)}.agenda-form-section-title-1041>span{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary)}.agenda-form-section-title-1041>span .ui-icon{width:15px;height:15px}.agenda-form-section-title-1041>div{display:grid;gap:1px}.agenda-form-section-title-1041 b{font-size:11px}.agenda-form-section-title-1041 small{font-size:9px;color:var(--muted)}.agenda-duration-1041{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.agenda-duration-1041>span{font-size:9px;color:var(--muted);margin-right:2px}.agenda-duration-1041 button{border:1px solid var(--border);background:var(--surface2);color:var(--fg);border-radius:999px;padding:4px 8px;font-size:9px;cursor:pointer}.agenda-duration-1041 button:hover{border-color:var(--primary);color:var(--primary)}.agenda-past-note-1041{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));border-radius:var(--radius);background:color-mix(in srgb,var(--primary) 5%,var(--surface));color:var(--muted);font-size:9px}.agenda-settings-intro-1041{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:var(--radius);background:color-mix(in srgb,var(--primary) 6%,var(--surface2));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border))}.agenda-settings-intro-1041>.ui-icon{width:21px;height:21px;color:var(--primary)}.agenda-settings-intro-1041>div{display:grid;gap:2px}.agenda-settings-intro-1041 b{font-size:11px}.agenda-settings-intro-1041 span{font-size:9px;color:var(--muted)}.agenda-setting-toggle-1041{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer}.agenda-setting-toggle-1041>span{display:grid;gap:1px}.agenda-setting-toggle-1041 b{font-size:10px}.agenda-setting-toggle-1041 small{font-size:8px;color:var(--muted)}.agenda-setting-toggle-1041 input{position:absolute;opacity:0}.agenda-setting-toggle-1041 i{width:38px;height:22px;border-radius:999px;background:var(--border);position:relative;flex:0 0 38px}.agenda-setting-toggle-1041 i::after{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002;transition:.18s}.agenda-setting-toggle-1041 input:checked+i{background:var(--primary)}.agenda-setting-toggle-1041 input:checked+i::after{transform:translateX(16px)}
@media(max-width:1100px){.agenda-layout-1041{grid-template-columns:1fr}.agenda-upcoming-list-1041{max-height:420px}.agenda-summary-1041{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.agenda-summary-1041{grid-template-columns:1fr 1fr}.agenda-toolbar-1041{display:grid;grid-template-columns:1fr;gap:9px}.agenda-month-nav-1041{min-width:0;width:100%}.agenda-toolbar-actions-1041{justify-content:center;flex-wrap:wrap}.agenda-toolbar-actions-1041 .bp-date-control-1041{width:min(180px,100%);flex:1 1 150px}.agenda-weekdays-1041{display:none}.agenda-grid-1041{grid-template-columns:1fr;background:transparent;gap:7px;padding:8px}.agenda-day-empty-1041{display:none}.agenda-day-1041{min-height:auto;border:1px solid var(--border);border-radius:var(--radius);display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px}.agenda-day-head-1041{display:grid;place-items:center;align-content:start;margin:0}.agenda-day-head-1041>span{margin-top:4px}.agenda-events-1041{align-content:start}.agenda-upcoming-list-1041{max-height:none}.agenda-form-section-1041 .grid.g2,.agenda-settings-form-1041 .grid.g2{grid-template-columns:1fr!important}}
@media(max-width:480px){.agenda-summary-1041{grid-template-columns:1fr}.agenda-upcoming-item-1041{grid-template-columns:28px 48px minmax(0,1fr);padding:8px}.agenda-filters-1041{padding-inline:8px}}
/* END IDMIX Tech 1.0.41 */


/* ===== IDMIX Tech 1.0.42 · Agenda mais larga, baixa e alinhada ===== */
html body .agenda-page-1042{display:grid!important;gap:14px!important;min-width:0!important}
html body .agenda-layout-1042{display:grid!important;grid-template-columns:minmax(0,1fr) 240px!important;gap:12px!important;align-items:start!important;min-width:0!important}
html body .agenda-calendar-1042,html body .agenda-upcoming-1042{padding:0!important;overflow:hidden!important;min-width:0!important}
html body .agenda-toolbar-1042{display:grid!important;grid-template-columns:38px minmax(120px,220px) 38px!important;justify-content:center!important;align-items:center!important;gap:8px!important;padding:10px 12px!important;border-bottom:1px solid var(--border)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--surface2) 72%,var(--surface)),var(--surface))!important}
html body .agenda-toolbar-1042>strong{text-align:center!important;font-size:13px!important;text-transform:capitalize!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body .agenda-filters-1042{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;flex-wrap:wrap!important;padding:7px 10px!important;border-bottom:1px solid var(--border)!important}
html body .agenda-filter-1042{border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--muted)!important;border-radius:999px!important;padding:5px 9px!important;font-size:9px!important;font-weight:700!important;white-space:nowrap!important;cursor:pointer!important}
html body .agenda-filter-1042.active{background:color-mix(in srgb,var(--primary) 10%,var(--surface))!important;border-color:color-mix(in srgb,var(--primary) 40%,var(--border))!important;color:var(--primary)!important}
html body .agenda-weekdays-1042{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;background:var(--surface2)!important;border-bottom:1px solid var(--border)!important}
html body .agenda-weekdays-1042 span{padding:7px 4px!important;text-align:center!important;font-size:9px!important;font-weight:800!important;color:var(--muted)!important;border-right:1px solid var(--border)!important}
html body .agenda-weekdays-1042 span:last-child{border-right:0!important}
html body .agenda-grid-1042{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;background:var(--border)!important;gap:1px!important;min-width:0!important}
html body .agenda-day-1042,html body .agenda-day-empty-1042{background:var(--surface)!important;min-width:0!important;min-height:98px!important}
html body .agenda-day-1042{position:relative!important;padding:6px!important;cursor:pointer!important;transition:background .15s ease!important}
html body .agenda-day-1042:hover{background:color-mix(in srgb,var(--primary) 2.5%,var(--surface))!important}
html body .agenda-day-1042.today::after{content:""!important;position:absolute!important;inset:0!important;border:2px solid var(--primary)!important;pointer-events:none!important;z-index:5!important}
html body .agenda-day-head-1042{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:5px!important;margin-bottom:4px!important}
html body .agenda-day-head-1042>b{width:23px!important;height:23px!important;display:grid!important;place-items:center!important;border-radius:7px!important;font-size:10px!important}
html body .agenda-day-1042.today .agenda-day-head-1042>b{background:var(--primary)!important;color:#fff!important}
html body .agenda-day-head-1042>span{font-size:8px!important;font-weight:800!important;min-width:18px!important;height:18px!important;padding:0 5px!important;display:grid!important;place-items:center!important;border-radius:999px!important;background:var(--surface2)!important;color:var(--muted)!important}
html body .agenda-events-1042{display:grid!important;gap:3px!important;min-width:0!important}
html body .agenda-event-1042{width:100%!important;min-width:0!important;display:grid!important;grid-template-columns:18px 34px minmax(0,1fr)!important;align-items:center!important;gap:4px!important;padding:4px 5px!important;border:1px solid var(--border)!important;border-radius:7px!important;background:var(--surface2)!important;color:var(--fg)!important;text-align:left!important;cursor:pointer!important;min-height:28px!important}
html body .agenda-event-1042:hover{border-color:color-mix(in srgb,var(--primary) 30%,var(--border))!important;background:color-mix(in srgb,var(--primary) 4%,var(--surface))!important}
html body .agenda-event-1042>strong{font-size:9px!important;line-height:1.1!important;white-space:nowrap!important}
html body .agenda-event-1042>span:last-child{font-size:9px!important;line-height:1.2!important;min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html body .agenda-status-calendar-1042{width:18px!important;height:18px!important;display:grid!important;place-items:center!important;color:var(--primary)!important;background:transparent!important}
html body .agenda-status-calendar-1042 .ui-icon{width:14px!important;height:14px!important}
html body .agenda-status-calendar-1042.status-confirmada{color:#0284c7!important}html body .agenda-status-calendar-1042.status-concluida{color:#16a34a!important}html body .agenda-status-calendar-1042.status-cancelada{color:#dc2626!important}
html body .agenda-event-1042.status-cancelada{opacity:.65!important}html body .agenda-event-1042.status-cancelada>span:last-child{text-decoration:line-through!important}
html body .agenda-more-1042{font-size:8px!important;color:var(--muted)!important;padding:1px 3px!important}
html body .agenda-upcoming-head-1042{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:11px 12px!important;border-bottom:1px solid var(--border)!important}
html body .agenda-upcoming-head-1042 h3{margin:0 0 2px!important}
html body .agenda-upcoming-list-1042{display:grid!important;gap:0!important;max-height:590px!important;overflow:auto!important}
html body .agenda-upcoming-item-1042{display:grid!important;grid-template-columns:20px 42px 36px minmax(0,1fr)!important;align-items:center!important;gap:5px!important;width:100%!important;min-width:0!important;padding:8px 9px!important;border:0!important;border-bottom:1px solid var(--border)!important;background:var(--surface)!important;color:var(--fg)!important;text-align:left!important;cursor:pointer!important}
html body .agenda-upcoming-item-1042:hover{background:var(--surface2)!important}
html body .agenda-upcoming-date-1042,html body .agenda-upcoming-time-1042{font-size:9px!important;color:var(--muted)!important;white-space:nowrap!important}
html body .agenda-upcoming-time-1042{font-weight:800!important;color:var(--fg)!important}
html body .agenda-upcoming-title-1042{font-size:10px!important;line-height:1.2!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important}
html body .agenda-upcoming-item-1042.status-cancelada .agenda-upcoming-title-1042{text-decoration:line-through!important}
html body .agenda-form-1042{display:grid!important;gap:11px!important}
html body .agenda-start-only-1042{display:grid!important;gap:5px!important;max-width:360px!important}
html body .agenda-start-only-1042>small{font-size:9px!important;color:var(--muted)!important}
@media(max-width:1120px){html body .agenda-layout-1042{grid-template-columns:1fr!important}html body .agenda-upcoming-list-1042{max-height:400px!important}}
@media(max-width:760px){html body .agenda-weekdays-1042{display:none!important}html body .agenda-grid-1042{grid-template-columns:1fr!important;background:transparent!important;gap:7px!important;padding:8px!important}html body .agenda-day-empty-1042{display:none!important}html body .agenda-day-1042{min-height:auto!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;gap:7px!important}html body .agenda-day-head-1042{display:grid!important;place-items:center!important;align-content:start!important;margin:0!important}html body .agenda-events-1042{align-content:start!important}html body .agenda-toolbar-1042{grid-template-columns:36px minmax(110px,1fr) 36px!important}html body .agenda-upcoming-list-1042{max-height:none!important}}
@media(max-width:480px){html body .agenda-upcoming-item-1042{grid-template-columns:18px 40px 34px minmax(0,1fr)!important;padding:7px 8px!important}html body .agenda-summary-1041{grid-template-columns:1fr 1fr!important}}
/* END IDMIX Tech 1.0.42 */

/* ===== IDMIX Tech 1.0.43 · Agenda limpa, leitura completa e datas por picker ===== */
html body input.bp-date-native-1043{
  min-height:42px!important;width:100%!important;border:1px solid var(--border)!important;border-radius:10px!important;
  background:var(--surface)!important;color:var(--fg)!important;padding:0 11px!important;font:inherit!important;
  box-shadow:0 1px 2px rgba(15,23,42,.035)!important;cursor:pointer!important;color-scheme:light dark!important;
}
html body input.bp-date-native-1043:hover{border-color:color-mix(in srgb,var(--primary) 32%,var(--border))!important;background:color-mix(in srgb,var(--primary) 1.5%,var(--surface))!important}
html body input.bp-date-native-1043:focus{outline:0!important;border-color:var(--primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)!important}
html body input.bp-date-native-1043::-webkit-calendar-picker-indicator{opacity:.72!important;cursor:pointer!important;width:18px!important;height:18px!important;padding:5px!important;border-radius:7px!important}
html body input.bp-date-native-1043::-webkit-calendar-picker-indicator:hover{background:var(--surface2)!important;opacity:1!important}

html body .agenda-page-1043{display:grid!important;gap:14px!important;min-width:0!important}
html body .agenda-layout-1043{display:grid!important;grid-template-columns:minmax(0,1fr) 270px!important;gap:12px!important;align-items:start!important;min-width:0!important}
html body .agenda-calendar-1043,html body .agenda-upcoming-1043{padding:0!important;overflow:hidden!important;min-width:0!important}
html body .agenda-toolbar-1043{display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px!important;width:100%!important;align-items:center!important;gap:8px!important;padding:9px 10px!important;border-bottom:1px solid var(--border)!important;background:var(--surface)!important;box-shadow:none!important}
html body .agenda-toolbar-1043>strong{text-align:center!important;text-transform:capitalize!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-shadow:none!important;box-shadow:none!important}
html body .agenda-icon-btn-1043{width:36px!important;height:36px!important;display:grid!important;place-items:center!important;border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--fg)!important;border-radius:9px!important;cursor:pointer!important;box-shadow:none!important;padding:0!important}
html body .agenda-icon-btn-1043:first-child{justify-self:start!important}html body .agenda-icon-btn-1043:last-child{justify-self:end!important}
html body .agenda-icon-btn-1043:hover{border-color:color-mix(in srgb,var(--primary) 32%,var(--border))!important;background:var(--surface2)!important;color:var(--primary)!important}
html body .agenda-icon-btn-1043 .ui-icon{width:16px!important;height:16px!important}

html body .agenda-weekdays-1043{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;background:var(--surface2)!important;border-bottom:1px solid var(--border)!important}
html body .agenda-weekdays-1043 span{padding:7px 4px!important;text-align:center!important;font-size:9px!important;font-weight:800!important;color:var(--muted)!important;border-right:1px solid var(--border)!important}
html body .agenda-weekdays-1043 span:last-child{border-right:0!important}
html body .agenda-grid-1043{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:0!important;border-left:1px solid var(--border)!important;min-width:0!important;background:var(--surface)!important}
html body .agenda-day-1043{position:relative!important;min-width:0!important;min-height:104px!important;padding:6px!important;background:var(--surface)!important;border-right:1px solid var(--border)!important;border-bottom:1px solid var(--border)!important;cursor:pointer!important;transition:background .15s ease!important}
html body .agenda-day-1043:hover{background:color-mix(in srgb,var(--primary) 2.5%,var(--surface))!important}
html body .agenda-day-outside-1043{background:color-mix(in srgb,var(--surface2) 70%,var(--surface))!important;color:color-mix(in srgb,var(--muted) 58%,transparent)!important;cursor:default!important}
html body .agenda-day-outside-1043:hover{background:color-mix(in srgb,var(--surface2) 70%,var(--surface))!important}
html body .agenda-day-1043.today::after{content:""!important;position:absolute!important;inset:-1px!important;border:2px solid var(--primary)!important;pointer-events:none!important;z-index:5!important}
html body .agenda-day-head-1043{display:flex!important;align-items:center!important;justify-content:flex-start!important;margin-bottom:5px!important}
html body .agenda-day-head-1043>b{width:24px!important;height:24px!important;display:grid!important;place-items:center!important;border-radius:7px!important;font-size:10px!important}
html body .agenda-day-1043.today .agenda-day-head-1043>b{background:var(--primary)!important;color:#fff!important}
html body .agenda-day-outside-1043 .agenda-day-head-1043>b{color:color-mix(in srgb,var(--muted) 65%,transparent)!important;font-weight:700!important}
html body .agenda-events-1043{display:grid!important;gap:4px!important;min-width:0!important}
html body .agenda-event-1043,html body .agenda-upcoming-item-1043{display:grid!important;grid-template-columns:18px minmax(0,1fr)!important;align-items:start!important;gap:5px!important;width:100%!important;min-width:0!important;color:var(--fg)!important;text-align:left!important;cursor:pointer!important}
html body .agenda-event-1043{padding:5px!important;border:1px solid var(--border)!important;border-radius:7px!important;background:var(--surface2)!important;min-height:30px!important}
html body .agenda-event-1043:hover{border-color:color-mix(in srgb,var(--primary) 30%,var(--border))!important;background:color-mix(in srgb,var(--primary) 4%,var(--surface))!important}
html body .agenda-status-calendar-1043{width:18px!important;height:18px!important;display:grid!important;place-items:center!important;color:var(--primary)!important;background:transparent!important;margin-top:1px!important}
html body .agenda-status-calendar-1043 .ui-icon{width:14px!important;height:14px!important}
html body .agenda-status-calendar-1043.status-confirmada{color:#0284c7!important}html body .agenda-status-calendar-1043.status-concluida{color:#16a34a!important}html body .agenda-status-calendar-1043.status-cancelada{color:#dc2626!important}
html body .agenda-event-text-1043{display:flex!important;align-items:baseline!important;flex-wrap:wrap!important;column-gap:4px!important;row-gap:1px!important;min-width:0!important;font-size:9.5px!important;line-height:1.25!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
html body .agenda-event-date-1043,html body .agenda-event-text-1043>strong{white-space:nowrap!important;flex:0 0 auto!important}
html body .agenda-event-date-1043{color:var(--muted)!important}html body .agenda-event-text-1043>strong{color:var(--fg)!important}
html body .agenda-event-sep-1043{color:var(--muted)!important;flex:0 0 auto!important}
html body .agenda-event-title-1043{min-width:0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important;word-break:normal!important}
html body .agenda-event-1043.status-cancelada,html body .agenda-upcoming-item-1043.status-cancelada{opacity:.65!important}html body .agenda-event-1043.status-cancelada .agenda-event-title-1043,html body .agenda-upcoming-item-1043.status-cancelada .agenda-event-title-1043{text-decoration:line-through!important}
html body .agenda-more-1043{font-size:8px!important;color:var(--muted)!important;padding:1px 3px!important}

html body .agenda-upcoming-head-1043{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:11px 12px!important;border-bottom:1px solid var(--border)!important}
html body .agenda-upcoming-head-1043 h3{margin:0 0 2px!important}
html body .agenda-upcoming-list-1043{display:grid!important;gap:0!important;max-height:590px!important;overflow:auto!important;overflow-x:hidden!important}
html body .agenda-upcoming-item-1043{padding:9px 10px!important;border:0!important;border-bottom:1px solid var(--border)!important;background:var(--surface)!important}
html body .agenda-upcoming-item-1043:hover{background:var(--surface2)!important}
html body .agenda-upcoming-item-1043 .agenda-event-text-1043{font-size:10px!important;line-height:1.3!important}

html body .agenda-form-1043{display:grid!important;gap:11px!important}
html body .agenda-start-only-1043{display:grid!important;gap:5px!important;max-width:380px!important}

@media(max-width:1120px){html body .agenda-layout-1043{grid-template-columns:1fr!important}html body .agenda-upcoming-list-1043{max-height:420px!important}}
@media(max-width:760px){
  html body .agenda-weekdays-1043{display:none!important}
  html body .agenda-grid-1043{grid-template-columns:1fr!important;border:0!important;gap:7px!important;padding:8px!important}
  html body .agenda-day-outside-1043{display:none!important}
  html body .agenda-day-1043{min-height:auto!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;gap:7px!important}
  html body .agenda-day-head-1043{display:grid!important;place-items:center!important;align-content:start!important;margin:0!important}
  html body .agenda-events-1043{align-content:start!important}
  html body .agenda-toolbar-1043{grid-template-columns:42px minmax(0,1fr) 42px!important;padding-inline:8px!important}
  html body .agenda-upcoming-list-1043{max-height:none!important}
  html body input.bp-date-native-1043{min-height:44px!important}
}
/* END IDMIX Tech 1.0.43 */
