/* IDMIX Tech 2.4.0 — camada visual consolidada, azul e responsiva. */
:root{--tech-brand:#168bd2;--tech-brand-strong:#0f6fae;--tech-ink:#132238;--tech-muted:#66758a;--tech-surface:#fff;--tech-bg:#f3f6fa;--tech-line:#dbe3ec;--tech-shadow:0 12px 30px rgba(20,35,55,.08);--tech-radius:14px}
html{font-size:16px;scroll-behavior:smooth}body{min-width:320px;background:var(--tech-bg);color:var(--tech-ink);-webkit-font-smoothing:antialiased}.shell{min-width:0}.main,.content,.card,.panel,.table-wrap,.modal-body{min-width:0}.content{width:min(1540px,100%);margin-inline:auto;padding:clamp(14px,2vw,28px)}
.app-header{min-height:66px;border-bottom:1px solid var(--tech-line);background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}.app-header-brand{min-width:0}.app-header-brand-copy{min-width:0}.app-header-brand-copy b{font-weight:850;letter-spacing:-.025em}.app-header-brand-copy small{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-mark{background:linear-gradient(145deg,var(--tech-brand),#2563eb)!important;color:#fff!important;border:0!important;box-shadow:0 6px 18px rgba(22,139,210,.22)!important}.brand-mark img{object-fit:contain}
.app-menu,.mobile-nav{background:#fff;border-color:var(--tech-line)}.nav-link{min-height:44px;gap:9px;border-radius:10px;color:#536277;font-weight:700}.nav-link:hover{background:#edf6fd;color:var(--tech-brand)}.nav-link.active{background:#e5f3fc!important;color:var(--tech-brand-strong)!important}.nav-icon,.ui-icon{flex:0 0 auto}.ui-icon{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.top-btn,.top-user{border:1px solid var(--tech-line);background:#fff;color:#526176}.top-btn:hover,.top-user:hover{border-color:#9bc9e7;color:var(--tech-brand)}
.card,.panel,.metric,.stat-card,.settings-card,.management-card{border:1px solid var(--tech-line)!important;border-radius:var(--tech-radius)!important;background:var(--tech-surface)!important;box-shadow:var(--tech-shadow)!important}.card h1,.card h2,.card h3,.page-title,.section-title{letter-spacing:-.025em}.muted,.small.muted,.tiny.muted{color:var(--tech-muted)!important}
.btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;font-weight:780;line-height:1.15;white-space:normal;text-align:center;padding:10px 14px}.btn.primary,.btn.green{background:var(--tech-brand)!important;border-color:var(--tech-brand)!important;color:#fff!important}.btn.primary:hover,.btn.green:hover{background:var(--tech-brand-strong)!important}.btn.outline{border-color:#c9d5e2;background:#fff;color:#33445a}.btn.danger{background:#b42336;border-color:#b42336;color:#fff}.btn:focus-visible,.nav-link:focus-visible,.input:focus-visible,.select:focus-visible,textarea:focus-visible{outline:3px solid rgba(22,139,210,.22)!important;outline-offset:2px}
.input,.select,textarea{width:100%;max-width:100%;min-height:44px;border:1px solid #cbd6e2!important;border-radius:10px!important;background:#fff!important;color:var(--tech-ink)!important;padding:10px 12px}.input::placeholder,textarea::placeholder{color:#8a98aa}.input:focus,.select:focus,textarea:focus{border-color:var(--tech-brand)!important;box-shadow:0 0 0 3px rgba(22,139,210,.1)!important}.label{color:#35465c;font-weight:750}
.table-wrap{width:100%;overflow:auto;border:1px solid var(--tech-line);border-radius:12px;background:#fff;overscroll-behavior-inline:contain}.table{width:100%;min-width:680px;border-collapse:separate;border-spacing:0}.table th{position:sticky;top:0;z-index:1;background:#f5f8fb;color:#5e6d80;font-size:11px;letter-spacing:.045em;text-transform:uppercase}.table th,.table td{padding:12px 13px;border-bottom:1px solid #e8edf3;vertical-align:middle}.table tr:last-child td{border-bottom:0}
.modal-wrap{padding:clamp(10px,3vw,28px);align-items:center}.modal{width:min(720px,100%);max-height:calc(100dvh - 20px);display:flex;flex-direction:column;border:1px solid var(--tech-line);border-radius:16px;background:#fff;color:var(--tech-ink);box-shadow:0 28px 80px rgba(15,28,45,.26)}.modal.modal-lg{width:min(1040px,100%)}.modal-head{flex:0 0 auto;border-bottom:1px solid var(--tech-line);padding:15px 18px}.modal-title{font-size:18px;font-weight:850}.modal-body{overflow:auto;padding:18px}.modal-actions{position:sticky;bottom:-18px;background:linear-gradient(180deg,rgba(255,255,255,.9),#fff 28%);padding-top:20px;padding-bottom:2px;z-index:2}
.empty,.empty-state{min-height:180px;display:grid;place-items:center;text-align:center;padding:28px;color:var(--tech-muted)}.badge,.pill,.status{border-radius:999px}.toast{max-width:min(430px,calc(100vw - 24px));overflow-wrap:anywhere}
img{max-width:100%;height:auto}.qr img{image-rendering:pixelated}.break-anywhere{overflow-wrap:anywhere;word-break:break-word}.code-box{max-width:100%;overflow:hidden}.code-box b{overflow-wrap:anywhere}
@media(max-width:1050px){.grid.g3,.grid.g4,.dashboard-grid,.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.app-header-brand-copy small{max-width:180px}}
@media(max-width:900px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.app-header{padding-inline:12px}.app-header-brand-copy small{display:none}.content{padding:14px 12px 20px}.mobile-nav{height:auto;min-height:62px;padding:7px 6px calc(7px + env(safe-area-inset-bottom));overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav .nav-link{min-width:70px;max-width:92px;flex:0 0 auto;padding:7px 5px;font-size:10px}.mobile-nav .nav-icon{margin:0}.app-menu{display:none}.modal-wrap{padding:8px}.modal{max-height:calc(100dvh - 16px);border-radius:14px}.modal-head{padding:13px 14px}.modal-body{padding:14px}.modal-actions{bottom:-14px;display:grid;grid-template-columns:1fr;gap:8px}.form-row,.grid.g2,.grid.g3,.grid.g4{grid-template-columns:1fr!important}.table-actions{display:flex;flex-wrap:wrap;gap:6px}.table-actions .btn{flex:1 1 120px}.desktop-only{display:none!important}}
@media(max-width:560px){.grid.g3,.grid.g4,.dashboard-grid,.metrics-grid{grid-template-columns:1fr!important}.app-header-actions{gap:5px}.top-btn,.top-user{width:39px;height:39px}.content{padding-inline:10px}.card,.panel{border-radius:12px!important;padding:14px!important}.btn{width:100%}.actions,.page-actions,.toolbar,.filters{display:grid!important;grid-template-columns:1fr!important;width:100%}.modal .btn{width:100%}.table{min-width:620px}.table-wrap[data-mobile-cards="true"]{border:0;background:transparent;overflow:visible}.login-card{width:100%!important;margin:0!important}.login-shell{padding:14px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Painel comercial */
.lead-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.lead-kpi{appearance:none;text-align:left;cursor:pointer;color:inherit;min-width:0;transition:border-color .18s ease,transform .18s ease}.lead-kpi:hover,.lead-kpi.active{border-color:var(--tech-brand);transform:translateY(-1px)}.lead-kpi span{display:block;color:var(--tech-muted);font-size:.78rem;font-weight:700}.lead-kpi b{display:block;margin-top:.3rem;font-size:1.65rem}.lead-filters{display:grid;grid-template-columns:minmax(240px,1fr) minmax(170px,240px) auto auto;gap:.75rem;align-items:center}.leads-table td{vertical-align:top}.leads-table a{color:inherit;text-decoration:none}.leads-table a:hover{text-decoration:underline}.lead-message{max-width:34rem;margin-top:.25rem;white-space:normal}.lead-status-select{min-width:145px}.lead-status-select.good{border-color:#16a34a!important}.lead-status-select.bad{border-color:#dc2626!important}.lead-status-select.open{border-color:#d97706!important}
@media(max-width:980px){.lead-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.lead-filters{grid-template-columns:1fr 1fr}.lead-filters .btn{width:100%}}
@media(max-width:640px){.lead-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-filters{grid-template-columns:1fr}.lead-kpi:last-child{grid-column:1/-1}.leads-table{min-width:760px}}
/* IDMIX Tech 2.1 · avisos comerciais e manutenção por cliente */
#platform-notice-root{position:relative;z-index:1200}
.platform-notice{min-height:54px;padding:9px clamp(14px,3vw,28px);display:flex;align-items:center;justify-content:center;gap:18px;background:#e9f8f5;border-bottom:1px solid #93d8ca;color:#123b35}
.platform-notice>div{display:flex;align-items:center;gap:11px;min-width:0}.platform-notice .ui-icon{flex:0 0 auto}.platform-notice span{display:flex;flex-direction:column;min-width:0}.platform-notice small{color:inherit;opacity:.82}.platform-notice.billing{background:#fff7dc;border-color:#e8c766;color:#4d3a08}.platform-notice.billing.overdue,.platform-notice.billing.danger{background:#fff0f0;border-color:#e7a2a2;color:#6e1d1d}.platform-notice.maintenance{background:#eaf2ff;border-color:#9dbce8;color:#173a6c}.platform-notice .btn{margin-left:auto;background:currentColor;color:#fff;border-color:transparent;white-space:nowrap}
.master-client-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.master-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.master-module-toggle{display:flex;gap:9px;align-items:center;padding:10px;border:1px solid var(--border,#d7e0e8);background:var(--card,#fff)}.master-maintenance-row{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border,#d7e0e8)}.master-maintenance-row:last-child{border-bottom:0}.master-control-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:760px){.platform-notice{align-items:flex-start;flex-direction:column;gap:7px}.platform-notice .btn{width:100%;margin:0}.master-client-control-grid,.master-module-grid{grid-template-columns:1fr}.master-maintenance-row{align-items:flex-start;flex-direction:column}}

/* IDMIX Tech 2.2.0 — configurações do cliente com a mesma disciplina visual do Master. */
.tenant-settings-layout-220{display:grid;grid-template-columns:minmax(210px,250px) minmax(0,1fr);gap:18px;align-items:start}.tenant-settings-layout-220>.settings-grid{display:block!important;min-width:0}.tenant-settings-nav-220{position:sticky;top:82px;display:grid;gap:4px;padding:8px;border:1px solid var(--tech-line);border-radius:var(--tech-radius);background:#fff;box-shadow:var(--tech-shadow)}.tenant-settings-nav-220 button{appearance:none;width:100%;min-width:0;min-height:48px;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;padding:9px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:#5d6d81;text-align:left;cursor:pointer;font:inherit}.tenant-settings-nav-220 button span{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#f0f4f8;color:#718096;font-size:10px;font-weight:850}.tenant-settings-nav-220 button b{overflow:hidden;text-overflow:ellipsis;font-size:12px;line-height:1.25}.tenant-settings-nav-220 button:hover{background:#f4f8fa;color:var(--tech-brand)}.tenant-settings-nav-220 button.active{border-color:#b9ded8;background:#e7f5f2;color:var(--tech-brand-strong)}.tenant-settings-nav-220 button.active span{background:var(--tech-brand);color:#fff}.tenant-settings-pane-220{margin:0!important;padding:18px!important;border:1px solid var(--tech-line)!important;border-radius:var(--tech-radius)!important;background:#fff!important;box-shadow:var(--tech-shadow)!important}.tenant-settings-pane-220[hidden]{display:none!important}.tenant-settings-pane-220>.settings-group-head{align-items:flex-start!important;margin:0 0 14px!important;padding:0 0 13px!important}.tenant-settings-pane-220>.settings-group-head h2{font-size:19px!important;letter-spacing:-.025em}.tenant-settings-pane-220>.settings-group-head p{max-width:680px;font-size:12px!important}.tenant-settings-pane-220>.settings-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.tenant-settings-pane-220>.settings-group-grid>.card{padding:17px!important;border-color:#e1e7ee!important;background:#fbfcfd!important;box-shadow:none!important}.tenant-settings-pane-220 .appearance-card>h3,.tenant-settings-pane-220 .establishment-settings-card>h3{margin-bottom:4px!important}.tenant-settings-pane-220 .appearance-card>.small,.tenant-settings-pane-220 .establishment-settings-card>.small{margin-top:0!important}.tenant-settings-pane-220 .bp-popular-colors-119{grid-template-columns:repeat(6,minmax(0,1fr))!important;max-width:390px}.tenant-settings-pane-220 .bp-popular-color-119{min-height:38px!important}.tenant-settings-pane-220 .theme-color-grid[hidden]{display:none!important}
@media(max-width:980px){.tenant-settings-layout-220{grid-template-columns:1fr}.tenant-settings-nav-220{position:static;display:flex;overflow-x:auto;scrollbar-width:thin;padding:7px}.tenant-settings-nav-220 button{flex:0 0 auto;width:auto;min-width:154px}.tenant-settings-pane-220>.settings-group-grid{grid-template-columns:1fr!important}.tenant-settings-pane-220>.settings-group-grid>*{grid-column:1!important}}
@media(max-width:560px){.tenant-settings-layout-220{gap:12px}.tenant-settings-nav-220{margin-inline:-2px}.tenant-settings-nav-220 button{min-width:142px}.tenant-settings-pane-220{padding:13px!important}.tenant-settings-pane-220>.settings-group-head h2{font-size:17px!important}.tenant-settings-pane-220 .bp-popular-colors-119{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-width:none}}

/* IDMIX Tech 2.3.0 — gabarito único para ações e cartões de ícone. */
:root{--tech-icon-control:42px;--tech-icon-glyph:19px}
html body .app-header-actions :is(.top-btn,.top-user),
html body :is(.icon-btn,.icon-only,.bp-icon-only-126,.panel-close,button.x,.agenda-icon-btn-1041,.agenda-icon-btn-1043){
  width:var(--tech-icon-control)!important;height:var(--tech-icon-control)!important;min-width:var(--tech-icon-control)!important;min-height:var(--tech-icon-control)!important;max-width:var(--tech-icon-control)!important;max-height:var(--tech-icon-control)!important;padding:0!important;display:inline-grid!important;place-items:center!important;flex:0 0 var(--tech-icon-control)!important
}
html body :is(.app-header-actions .top-btn,.app-header-actions .top-user,.icon-btn,.icon-only,.bp-icon-only-126,.panel-close,button.x,.agenda-icon-btn-1041,.agenda-icon-btn-1043)>.ui-icon{width:var(--tech-icon-glyph)!important;height:var(--tech-icon-glyph)!important;min-width:var(--tech-icon-glyph)!important;min-height:var(--tech-icon-glyph)!important;max-width:var(--tech-icon-glyph)!important;max-height:var(--tech-icon-glyph)!important}
html body :is(.stat-icon,.management-card-icon,.settings-card-icon,.settings-admin-card-icon,.integration-provider-icon,.maintenance-block-icon,.maintenance-summary-icon,.permission-admin-icon,.reports1049-kpi-icon,.closed-cash-icon){width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;max-width:42px!important;max-height:42px!important;display:grid!important;place-items:center!important;flex:0 0 42px!important}
html body :is(.stat-icon,.management-card-icon,.settings-card-icon,.settings-admin-card-icon,.integration-provider-icon,.maintenance-block-icon,.maintenance-summary-icon,.permission-admin-icon,.reports1049-kpi-icon,.closed-cash-icon)>.ui-icon{width:19px!important;height:19px!important;min-width:19px!important;min-height:19px!important;max-width:19px!important;max-height:19px!important}

/* Datas sempre digitáveis da esquerda para a direita, sem perder o calendário nativo. */
.bp-date-control-230{position:relative;display:flex;width:100%;min-width:0;direction:ltr!important}
.bp-date-text-230{width:100%;min-width:0;padding-right:48px!important;text-align:left!important;direction:ltr!important;font-variant-numeric:tabular-nums}
.bp-date-picker-230{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:36px;height:36px;display:grid;place-items:center;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--tech-muted);cursor:pointer;overflow:hidden}
.bp-date-picker-230:hover{border-color:var(--tech-line);background:#f3f7fb;color:var(--tech-brand)}
.bp-date-picker-230>.ui-icon{width:18px!important;height:18px!important;pointer-events:none}
.bp-date-native-230{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:.001!important;cursor:pointer!important;border:0!important;padding:0!important}
.bp-date-control-230:focus-within .bp-date-text-230{border-color:var(--tech-brand)!important;box-shadow:0 0 0 3px rgba(15,118,110,.1)!important}

/* PDV em tela cheia no mesmo padrão operacional da Cozinha. */
html body .pdv-page.pdv-layout-106 .pdv-control-row-106{grid-template-columns:auto minmax(0,1fr) auto!important}
html body .pdv-page .pdv-fullscreen-230{height:50px!important;min-height:50px!important;max-height:50px!important;margin:0!important;white-space:nowrap!important}
.pdv-page:fullscreen{width:100vw!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;padding:8px!important;background:var(--bg)!important;overflow:hidden!important}
.pdv-page:fullscreen .pdv-shell{height:100%!important;max-height:100%!important;min-height:0!important}
@media(max-width:720px){html body .pdv-page .pdv-fullscreen-230{width:50px!important;min-width:50px!important;max-width:50px!important;padding:0!important}.pdv-fullscreen-230>span{display:none!important}}
