*{box-sizing:border-box;margin:0;padding:0;font-family:'Segoe UI',Arial,sans-serif;-webkit-tap-highlight-color:transparent}
:root{--bg:#f6f4fb;--card:rgba(255,255,255,.8);--pri:#8b6fe0;--pri2:#6d5bc4;--dark:rgba(15,23,42,.82);--mut:#6b6880;--warn:#d97706;--danger:#dc2626;--ok:#6d5bc4;--radius:12px;
--glass:rgba(255,255,255,.8);--glass-strong:rgba(255,255,255,.92);--glass-line:rgba(255,255,255,.92);--glass-shadow:0 6px 26px rgba(76,60,110,.16);--blur:14px}
html{scroll-behavior:smooth;background:var(--bg)}
body{background:var(--bg);color:#1e293b;font-size:15px;line-height:1.45;padding-bottom:env(safe-area-inset-bottom);min-height:100vh;position:relative}
/* fundo com manchas coloridas p/ o vidro translúcido aparecer */
body::before{content:'';position:fixed;inset:0;z-index:-2;background:
  radial-gradient(55% 45% at 8% 6%,rgba(167,139,250,.6),transparent 62%),
  radial-gradient(50% 45% at 92% 10%,rgba(110,231,183,.5),transparent 62%),
  radial-gradient(55% 50% at 82% 78%,rgba(251,207,232,.7),transparent 62%),
  radial-gradient(50% 45% at 15% 85%,rgba(196,181,253,.55),transparent 62%),
  radial-gradient(40% 40% at 50% 45%,rgba(167,243,208,.4),transparent 65%),
  linear-gradient(135deg,#faf7ff,#eefaf5)}
body::after{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.35;background-image:
  radial-gradient(rgba(255,255,255,.9) 1px,transparent 1px);
  background-size:22px 22px}
.hidden{display:none!important}
img{max-width:100%}
/* ICONES MINIMALISTAS (SVG outline) */
.ic{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;vertical-align:-3px}
.ic-wa{fill:currentColor;stroke:none}
.ic-lg{width:22px;height:22px;stroke-width:1.6;vertical-align:0}
.login-logo .ic{width:42px;height:42px;stroke-width:1.4;vertical-align:0}
.kpi-ico .ic{width:20px;height:20px;stroke-width:1.6;vertical-align:0}
h3 .ic,small .ic{margin-right:2px}
.bottomNav .ic,.fab .ic{stroke-width:1.8}
.lb-close .ic{width:22px;height:22px;stroke-width:2.2}
/* LOGIN */
.login-screen{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f3ff,#eefaf5);position:relative;overflow:hidden;padding:16px}
.login-screen::before{content:'';position:absolute;inset:-20%;background:
  radial-gradient(40% 40% at 22% 22%,rgba(196,181,253,.75),transparent 60%),
  radial-gradient(38% 38% at 80% 28%,rgba(167,243,208,.7),transparent 60%),
  radial-gradient(45% 45% at 60% 82%,rgba(251,207,232,.75),transparent 60%),
  radial-gradient(35% 35% at 12% 80%,rgba(221,214,254,.7),transparent 60%);
  filter:blur(14px)}
.login-card{position:relative;z-index:1;background:rgba(255,255,255,.88);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid rgba(255,255,255,.9);border-radius:16px;padding:28px 22px;width:100%;max-width:380px;text-align:center;box-shadow:var(--glass-shadow)}
.login-logo{font-size:48px}
.login-card h1{font-size:clamp(19px,4vw,22px);margin:8px 0 2px}
.login-card p{color:var(--mut);margin-bottom:16px}
.login-card input{width:100%;padding:13px;margin:6px 0;border:1px solid rgba(255,255,255,.8);background:rgba(255,255,255,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:10px;font-size:16px}
.login-card button{width:100%;padding:14px;background:var(--pri);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:bold;cursor:pointer;margin-top:8px;min-height:48px}.login-card small{display:block;margin-top:12px;color:var(--mut)}
/* LAYOUT */
/* SIDEBAR FIXA + RECOLHIVEL */
#app{display:flex;min-height:100vh;min-height:100dvh}
.sidebar{width:258px;flex:0 0 258px;background:rgba(255,255,255,.88);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-right:1px solid rgba(196,181,253,.45);color:#3f3d52;display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;width:258px;height:100vh;height:100dvh;min-height:100dvh;z-index:70;overflow:hidden;box-shadow:4px 0 24px rgba(76,60,110,.08);transition:width .25s ease,flex-basis .25s ease,transform .25s ease}
.sidebar::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(237,233,254,.4))}
#app.side-collapsed .sidebar{width:68px;flex-basis:68px}
#app.side-collapsed .brand-txt,#app.side-collapsed #menu button .txt,#app.side-collapsed .sidebar-foot .btn-ghost .txt{display:none}
#app.side-collapsed #menu button{justify-content:center;padding:12px 0}
#app.side-collapsed .brand{justify-content:center;padding:16px 0}
#app.side-collapsed .brand-icon{display:none}
#app.side-collapsed .btn-collapse{transform:rotate(180deg);margin-left:0}
.main{margin-left:258px;transition:margin-left .25s ease}
.btn-collapse{margin-left:auto;background:rgba(237,233,254,.9);border:1px solid rgba(196,181,253,.6);color:#6d5bc4;border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}
.btn-collapse:hover{background:#ddd6fe}
.btn-collapse .ic{width:17px;height:17px}
.ic-chev-r{display:none}
#app.side-collapsed .ic-chev-l{display:none}
#app.side-collapsed .ic-chev-r{display:block}
.btn-expand{display:none;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(196,181,253,.6);border-radius:10px;padding:10px 13px;font-size:19px;cursor:pointer;min-width:46px;min-height:44px;align-items:center;justify-content:center;color:#4b4a63}
#app.side-collapsed .btn-expand{display:flex}
#menu button .txt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:768px){
  .main{margin-left:0!important}
  #app.side-collapsed .main{margin-left:0!important}
  .btn-expand{display:none!important}
  .brand-txt{display:block!important}
  #menu button .txt{display:inline!important}
  #menu button{justify-content:flex-start!important;padding:12px!important}
  .brand{justify-content:flex-start!important;padding:16px!important}
  .brand-icon{display:flex!important}
  .btn-collapse{display:none}
}
.brand{display:flex;gap:10px;align-items:center;padding:16px;border-bottom:1px solid rgba(196,181,253,.4)}
.brand-txt{flex:1;min-width:0}
.brand strong{display:block;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;color:#2e2c3d;font-weight:700}
.brand small{color:#7c7990;font-size:12px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#menu{display:flex;flex-direction:column;padding:10px;gap:4px;overflow-y:auto;overflow-x:hidden;flex:1 1 auto;min-height:0;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(139,111,224,.45) transparent}
#menu::-webkit-scrollbar{width:9px}
#menu::-webkit-scrollbar-track{background:transparent}
#menu::-webkit-scrollbar-thumb{background:rgba(139,111,224,.45);border-radius:8px;border:2px solid transparent;background-clip:content-box}
#menu::-webkit-scrollbar-thumb:hover{background:rgba(139,111,224,.75);border:2px solid transparent;background-clip:content-box}
/* Rolagem geral transparente */
html{scrollbar-width:thin;scrollbar-color:rgba(139,111,224,.5) rgba(246,244,251,.6)}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:rgba(246,244,251,.6)}
::-webkit-scrollbar-thumb{background:rgba(139,111,224,.5);border-radius:8px;border:2px solid transparent;background-clip:content-box}
::-webkit-scrollbar-thumb:hover{background:rgba(139,111,224,.8);border:2px solid transparent;background-clip:content-box}
::-webkit-scrollbar-corner{background:transparent}
.table-wrap,.espelho,.prod-card{scrollbar-width:thin;scrollbar-color:transparent transparent}
#menu button{background:transparent;border:none;color:#4b4a63;text-align:left;padding:12px;border-radius:10px;font-size:14px;cursor:pointer;display:flex;gap:10px;align-items:center;min-height:44px}
#menu button:hover{background:rgba(237,233,254,.75)}
#menu button.active{background:linear-gradient(135deg,#a78bfa,#8b6fe0);color:#fff;font-weight:bold;box-shadow:0 2px 14px rgba(139,111,224,.4)}
#menu button.active .ic{stroke:#fff}
.sidebar-foot{padding:12px;border-top:1px solid rgba(196,181,253,.4);padding-bottom:calc(12px + env(safe-area-inset-bottom));margin-top:auto;background:rgba(255,255,255,.5);flex-shrink:0}
.sidebar-foot .btn-ghost{width:100%;background:rgba(237,233,254,.8);color:#5b4bb0;border-color:rgba(196,181,253,.6)}
.overlay{display:none;position:fixed;inset:0;background:rgba(76,60,110,.35);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);z-index:55}
.overlay.show{display:block}
.main{flex:1;min-width:0;padding:0 20px 60px;max-width:none;margin-right:0;margin-left:258px;width:auto;transition:margin-left .25s ease}
#app.side-collapsed .main{margin-left:68px}
.page-title{display:flex;align-items:center;gap:10px;padding:18px 0 10px}
.page-title h1{font-size:clamp(20px,4vw,26px);font-weight:700;letter-spacing:-.3px}
.topbar{display:none}
.topbar h2{flex:1;font-size:clamp(17px,3.5vw,22px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.btn-menu{display:none;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(196,181,253,.6);border-radius:10px;padding:10px 13px;font-size:19px;cursor:pointer;min-width:46px;min-height:44px;align-items:center;justify-content:center}
.top-actions{display:flex;align-items:center;gap:8px}
.btn-sair{background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(196,181,253,.6);border-radius:10px;min-width:44px;min-height:44px;font-size:18px;cursor:pointer;color:var(--danger)}
.btn-tema{margin-left:auto;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(196,181,253,.6);border-radius:10px;min-width:44px;min-height:44px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#5b4bb0;cursor:pointer;font-size:13px;font-weight:600}
.btn-tema:hover{background:#ede9fe}
.btn-tema .i-sol{display:none}
.btn-tema .txt-tema{white-space:nowrap}
.tab{display:none}.tab.active{display:block;animation:fade .2s}
@keyframes fade{from{opacity:0}to{opacity:1}}
/* COMPONENTS */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-bottom:14px}
.card{background:var(--glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--glass-line);border-radius:var(--radius);padding:16px;box-shadow:var(--glass-shadow);min-width:0}
.card small{color:var(--mut);font-size:12px}
.card strong{display:block;font-size:clamp(18px,3vw,22px);margin-top:4px;word-break:break-word}
.warn{color:var(--warn)}.danger{color:var(--danger)}.ok{color:var(--ok)}
.panel{background:var(--glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--glass-line);border-radius:var(--radius);padding:18px;margin-bottom:14px;box-shadow:var(--glass-shadow)}
.panel h3{margin-bottom:12px;font-size:16px}.panel h4{margin:10px 0}
.muted{color:var(--mut);font-size:13px;margin:6px 0}
.toolbar{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}
.toolbar input,.toolbar select{flex:1;min-width:150px;padding:11px;border:1px solid rgba(196,181,253,.5);background:rgba(255,255,255,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:10px;font-size:16px;color:#2e2c3d}
.form-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.field{flex:1;min-width:160px;display:flex;flex-direction:column;min-width:0}
.field.small{max-width:190px;min-width:130px}
.field label{font-size:13px;font-weight:600;margin-bottom:4px;color:#334155}
.field input,.field select,.field textarea{padding:11px;border:1px solid rgba(196,181,253,.5);background:rgba(255,255,255,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:10px;font-size:16px;width:100%;color:#2e2c3d}
.field textarea{resize:vertical;min-height:150px;line-height:1.45;font-family:inherit}
.field input:focus,.field select:focus,.field textarea:focus,.toolbar input:focus{outline:2px solid var(--pri);border-color:var(--pri);background:rgba(255,255,255,.8)}
.flex{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.gap{margin-top:10px}
button{cursor:pointer;touch-action:manipulation}
.btn-primary{background:linear-gradient(135deg,#8b6fe0,#6d5bc4);color:#fff;border:none;border-radius:10px;padding:12px 18px;font-weight:600;min-height:44px;font-size:15px;display:inline-flex;align-items:center;gap:7px;justify-content:center;box-shadow:0 4px 14px rgba(109,91,196,.32)}
.btn-primary:hover{background:linear-gradient(135deg,#7a5fd4,#5b4bb0)}
.btn-primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.btn-primary.big{font-size:16px;padding:14px 20px;width:100%}
.btn-ghost{background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(196,181,253,.6);border-radius:10px;padding:12px 16px;min-height:44px;display:inline-flex;align-items:center;gap:7px;justify-content:center;color:#4b4a63}
.btn-sm{background:rgba(255,255,255,.85);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(196,181,253,.55);border-radius:8px;padding:10px 12px;font-size:13px;min-height:38px;display:inline-flex;align-items:center;gap:5px;justify-content:center;color:#4b4a63}
.btn-sm.danger{background:rgba(254,226,226,.7);color:var(--danger);border-color:rgba(252,165,165,.6)}
.btn-sm.wa{background:rgba(220,252,231,.85);border-color:rgba(34,197,94,.5);color:#128c7e;padding:9px 10px}
.btn-sm.wa:hover{background:rgba(187,247,208,.95)}
.btn-sm.wa-mini{padding:6px 8px;min-height:32px}
.badge{background:linear-gradient(135deg,#a78bfa,#8b6fe0);color:#fff;padding:2px 10px;border-radius:20px;font-size:13px;white-space:nowrap}
.table-wrap{background:rgba(255,255,255,.55);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--glass-line);border-radius:var(--radius);overflow-x:auto;box-shadow:var(--glass-shadow);-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
th,td{padding:10px;border-bottom:1px solid rgba(226,232,240,.9);text-align:left;vertical-align:top}
th{background:rgba(248,250,252,.75);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font-size:11px;text-transform:uppercase;color:var(--mut);position:sticky;top:0}
.total-box strong{font-size:clamp(20px,5vw,26px);color:var(--pri2)}
.catalogo-dica{display:flex;align-items:flex-start;gap:8px;background:rgba(237,233,254,.62);border:1px dashed rgba(139,111,224,.45);border-radius:10px;padding:9px 11px;margin:0 0 12px;color:#4b4a63;font-size:12.5px;line-height:1.45}
.catalogo-dica .ic{width:16px;height:16px;flex:0 0 auto;margin-top:1px;color:#6d5bc4}
.catalogo-dica b{color:#4c1d95}
.grid-prod{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.prod-card{background:var(--glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--glass-line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--glass-shadow);display:flex;flex-direction:column}
.prod-card img,.prod-sem-foto{width:100%;height:150px;object-fit:contain;object-position:center;background:#e2e8f0}
.prod-sem-foto{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#64748b;font-size:12px;cursor:zoom-in;flex-shrink:0}
.prod-sem-foto .ic{width:34px;height:34px;color:#94a3b8}
.prod-card .pbody{padding:12px;flex:1}
.prod-card .cat{font-size:11px;background:#ede9fe;color:#6d5bc4;padding:2px 8px;border-radius:12px}
.prod-card h4{margin:6px 0 2px;font-size:15px}
.prod-card .preco{font-size:19px;font-weight:bold;color:var(--pri2)}
.prod-card .preco small{font-size:11px;font-weight:500;color:var(--mut)}
.caixa-info{display:flex;align-items:center;gap:6px;margin-top:6px;background:rgba(237,233,254,.8);border:1px dashed #a78bfa;border-radius:8px;padding:5px 8px;font-size:12px;color:#4c1d95}
.caixa-info .ic{width:15px;height:15px}
.preco-info{padding:11px 10px;font-size:12px;line-height:1.35;background:rgba(255,255,255,.7);border-radius:8px;border:1px solid rgba(196,181,253,.6);color:var(--mut)}
.caixa-form{background:rgba(237,233,254,.5);border:1px dashed #a78bfa;border-radius:12px;padding:12px;margin-bottom:10px}
#prodPreco.preco-auto{background:rgba(167,243,208,.45);border-color:#6ee7b7}
.preco-info.preco-ok{color:#0f766e}
.preco-info.preco-manual{color:#b45309}
/* SEGMENTED (Caixa / Unidade) */
.seg{display:flex;background:rgba(255,255,255,.7);border:1px solid rgba(196,181,253,.6);border-radius:10px;padding:3px;gap:3px}
.seg-btn{flex:1;background:transparent;border:none;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:600;color:var(--mut);cursor:pointer;white-space:nowrap;min-height:38px;display:flex;align-items:center;justify-content:center;gap:5px}
.seg-btn:hover{background:rgba(237,233,254,.8);color:#5b4bb0}
.seg-btn.active{background:linear-gradient(135deg,#a78bfa,#8b6fe0);color:#fff;box-shadow:0 2px 8px rgba(139,111,224,.35)}
.seg-btn:disabled{opacity:.4;cursor:not-allowed}
.tipo-tag{display:inline-block;padding:1px 7px;border-radius:10px;font-size:10.5px;font-weight:700}
.tipo-cx{background:rgba(237,233,254,.9);color:#6d5bc4;border:1px solid rgba(196,181,253,.8)}
.tipo-un{background:rgba(209,250,229,.9);color:#0f766e;border:1px solid rgba(110,231,183,.8)}
.prod-card .estoq{font-size:12px;color:var(--mut)}
.prod-card button{margin:10px;background:var(--dark);color:#fff;border:none;border-radius:10px;padding:12px;min-height:44px}
.prod-acoes{display:flex;gap:8px;padding:10px;align-items:stretch}
.prod-acoes button{margin:0;border:none;border-radius:10px;min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:600;padding:10px 12px}
.prod-acoes .prod-add{flex:1;min-width:0;background:var(--dark);color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.prod-acoes .prod-wa{flex:0 0 auto;background:rgba(220,252,231,.92);border:1px solid rgba(34,197,94,.55);color:#128c7e;padding:0 13px}
.prod-acoes .prod-wa:hover{background:rgba(187,247,208,1)}
.prod-acoes .prod-wa .ic{width:19px;height:19px}
.oferta-resumo{display:flex;align-items:center;gap:10px;background:rgba(237,233,254,.55);border:1px solid rgba(196,181,253,.55);border-radius:10px;padding:10px;margin:8px 0 12px}
.oferta-resumo img,.oferta-sem-foto{width:58px;height:58px;border-radius:8px;object-fit:cover;flex-shrink:0;background:#e2e8f0}
.oferta-sem-foto{display:flex;align-items:center;justify-content:center;color:#8b6fe0}
.oferta-sem-foto .ic{width:24px;height:24px}
.oferta-resumo b{display:block;font-size:14px;margin-bottom:2px}
.oferta-resumo small{display:block;color:var(--mut);font-size:12px;line-height:1.35}
.oferta-erro{color:var(--danger);font-size:12px}
.calc-venda{background:#eef5fc;border:1px dashed #4a90c2;margin:12px 0}
#calcLucroVenda.calc-pos{color:#3574a3}
#calcLucroVenda.calc-neg{color:#dc2626}
.calc-result{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;background:rgba(237,233,254,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px dashed #a78bfa;border-radius:10px;padding:14px;margin:12px 0}
.calc-result small{display:block;color:var(--mut)}
.calc-result strong{font-size:20px}
.metas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;margin-top:14px}
.meta-card{background:#fff;border:1px solid rgba(150,120,220,.38);border-radius:14px;padding:12px 13px;box-shadow:0 4px 14px rgba(76,60,110,.09);display:flex;flex-direction:column;gap:6px;min-height:176px;transition:box-shadow .2s,transform .2s}
.meta-card:hover{box-shadow:0 8px 22px rgba(76,60,110,.16);transform:translateY(-1px)}
.meta-card.atual{border-color:#a78bfa;background:#fdfbff;box-shadow:0 6px 20px rgba(139,111,224,.24)}
.meta-top{display:flex;align-items:center;justify-content:space-between;gap:6px;padding-bottom:7px;border-bottom:1px solid rgba(150,120,220,.22)}
.meta-top b{font-size:14px;color:#3f3a5c}
.meta-chip{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:#5b21b6;background:#ede9fe;border-radius:20px;padding:2px 7px;white-space:nowrap}
.meta-lbl{font-size:10px;font-weight:700;color:#6b6880;text-transform:uppercase;letter-spacing:.4px;margin-top:2px}
.meta-card input{width:100%;padding:8px 10px;margin:0;border:1px solid rgba(150,120,220,.42);background:#faf8ff;border-radius:9px;font-size:15px;font-weight:700;color:#3f3a5c;min-height:38px}
.meta-card input:focus{outline:2px solid rgba(139,111,224,.3);border-color:#a78bfa;background:#fff}
.meta-real{font-size:11px;color:#6b6880;margin-top:auto}
.meta-real b{color:#3f3a5c;font-size:12px}
.meta-card .bar{height:7px;background:rgba(150,120,220,.16);border-radius:20px;margin:0;overflow:hidden}
.meta-card .bar i{display:block;height:100%;background:linear-gradient(90deg,#a78bfa,#6ee7b7);border-radius:20px}
.meta-foot{display:flex;justify-content:space-between;gap:6px;font-size:10.5px;font-weight:600;color:#6b6880}
.meta-pdf{width:100%;margin-top:2px;padding:7px 8px;min-height:34px;font-size:11.5px;font-weight:600;flex:0 0 auto;white-space:nowrap}
.bar{height:10px;background:#e2e8f0;border-radius:6px;overflow:hidden;margin:6px 0}
.bar i{display:block;height:100%;background:linear-gradient(90deg,#a78bfa,#6ee7b7);border-radius:6px}
.danger-zone{border:1px solid #fecaca}
.hero{background:linear-gradient(120deg,rgba(255,255,255,.9),rgba(237,233,254,.85));backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid rgba(196,181,253,.6);color:#2e2c3d;border-radius:14px;padding:20px;margin-bottom:14px;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;box-shadow:var(--glass-shadow)}
.hero small{color:#5b4bb0;letter-spacing:.5px;text-transform:uppercase;font-size:11px;font-weight:600}
.hero h2{font-size:clamp(20px,4vw,28px);margin:2px 0;color:#1f1d2b}
.hero .muted{color:#3f3d52;font-size:14px;font-weight:500;margin:4px 0 0}
.hero-actions{display:flex;gap:8px;flex-wrap:wrap}
.hero-actions .btn-ghost{background:rgba(255,255,255,.85);color:#5b4bb0;border-color:rgba(196,181,253,.7)}
.kpi .card{position:relative;overflow:hidden;padding-top:14px}
.kpi .card::before{display:none}
.kpi-ico{font-size:22px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.8);margin-bottom:6px;color:#6d5bc4;box-shadow:inset 0 0 0 1px rgba(196,181,253,.5)}
.kpi-green .kpi-ico{color:#0f766e}.kpi-blue .kpi-ico{color:#6d5bc4}.kpi-orange .kpi-ico{color:#be185d}.kpi-red .kpi-ico{color:#be123c}.kpi-dark .kpi-ico{color:#5b21b6}
.kpi-resumo .card strong{font-size:clamp(22px,3.6vw,28px)}
.kpi-sub{font-size:10.5px;color:var(--mut);margin-top:2px;line-height:1.3}
.kpi-ano-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:1px}
.kpi-ano-row small{line-height:1.2}
.kpi-ano{flex:0 0 auto;max-width:140px;min-height:34px;padding:5px 8px;border:1px solid rgba(196,181,253,.55);background:rgba(255,255,255,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:8px;font-family:inherit;font-size:16px;font-weight:700;color:#5b4bb0;cursor:pointer}
.kpi-ano:focus{outline:2px solid var(--pri);border-color:var(--pri)}
.dash-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:12px;margin-bottom:14px}
.chart{display:flex;align-items:flex-end;gap:8px;height:170px;padding-top:10px}
.chart .col{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}
.chart .val{font-size:10px;color:var(--mut);white-space:nowrap}
.chart .bar-col{width:100%;max-width:46px;background:linear-gradient(180deg,#c4b5fd,#8b6fe0);border-radius:6px 6px 0 0;min-height:6px}
.chart .lbl{font-size:11px;color:var(--mut)}
@media(max-width:900px){.dash-grid{grid-template-columns:1fr}}
.ped-balloon{border-left:none;box-shadow:0 2px 10px rgba(76,60,110,.1)}
.ped-balloon h3{display:flex;align-items:center;gap:10px}
.step{background:var(--pri);color:#fff;width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}
.prazo-box{margin-top:14px;padding:12px 14px 14px;border:1px dashed rgba(139,111,224,.55);background:rgba(245,243,255,.6);border-radius:12px}
#pedCliente{flex:1 1 220px;width:auto;min-width:0}
.ped-dados{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.ped-dado{border:1px solid var(--glass-line);border-radius:12px;padding:10px 12px;background:var(--glass);min-width:0;font-size:12.5px;line-height:1.5}
.ped-dado small{display:block;font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:var(--mut);margin-bottom:2px}
.ped-dado b{display:block;font-size:13.5px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ped-dado span{display:block;color:var(--mut);overflow-wrap:anywhere}
@media(max-width:720px){.ped-dados{grid-template-columns:1fr}}
.prazo-box h4{display:flex;align-items:center;gap:6px;margin:0 0 10px;font-size:13px;color:#4b3b8f}
#parcPreview{font-size:12px;line-height:1.6}
#pagtoInfo{font-size:12.5px}
.ped-sucesso{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#ecfdf5;border:1px solid #86efac;border-radius:14px;padding:12px 14px;margin-bottom:14px;box-shadow:0 4px 16px rgba(22,163,74,.12)}
.ped-sucesso .ok-ico{width:34px;height:34px;border-radius:50%;background:#16a34a;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex:0 0 auto}
.ped-sucesso-txt{flex:1 1 220px;min-width:0}
.ped-sucesso-txt b{display:block;font-size:14px;color:#065f46}
.ped-sucesso-txt small{font-size:12px;color:#3f7a5f}
.ped-sucesso .btn-primary,.ped-sucesso .btn-ghost{flex:0 0 auto}
tr.row-flash{animation:rowFlash 2.2s ease}
@keyframes rowFlash{0%,100%{background:transparent}15%,65%{background:#f3e8ff}}
.cat-chip{display:inline-flex;align-items:center;gap:6px;background:rgba(237,233,254,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#4c1d95;border:1px solid rgba(196,181,253,.85);border-radius:20px;padding:7px 8px 7px 14px;font-size:14px}
.cat-chip small{color:var(--mut)}
.fiado-grupo{display:grid;grid-template-columns:1fr;gap:0}
.fiado-grupo .panel h3{display:flex;align-items:center;gap:8px}
.fiado-grupo .badge{background:linear-gradient(135deg,#a78bfa,#8b6fe0)}
/* CARDS DE FILTRO DO FIADO */
.fiado-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-bottom:14px}
.ftab{background:var(--glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--glass-line);border-radius:var(--radius);padding:14px 12px;box-shadow:var(--glass-shadow);cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:2px;position:relative;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;font-family:inherit}
.ftab:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(76,60,110,.18)}
.ftab b{font-size:15px;color:#2e2c3d}
.ftab small{font-size:12px;color:var(--mut)}
.ftab em{font-style:normal;font-size:13px;font-weight:700;color:#5b4bb0;margin-top:4px}
.ftab-ico{width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;color:#6d5bc4;margin-bottom:6px;box-shadow:inset 0 0 0 1px rgba(196,181,253,.5)}
.ftab.active{background:linear-gradient(135deg,rgba(167,139,250,.9),rgba(139,111,224,.9));border-color:rgba(139,111,224,.6)}
.ftab.active b,.ftab.active em,.ftab.active small{color:#fff}
.ftab.active .ftab-ico{background:rgba(255,255,255,.28);color:#fff;box-shadow:none}
.ftab[data-f="vencidos"].ftab.active{background:linear-gradient(135deg,#fb7185,#e11d48);border-color:rgba(225,29,72,.6)}
.ftab[data-f="quitados"].ftab.active{background:linear-gradient(135deg,#34d399,#059669);border-color:rgba(5,150,105,.6)}
.ftab[data-f="avencer"].ftab.active{background:linear-gradient(135deg,#fbbf24,#d97706);border-color:rgba(217,119,6,.6)}
@media(max-width:768px){.fiado-tabs{grid-template-columns:repeat(2,1fr)}}
.chip-x{border:none;background:transparent;cursor:pointer;color:var(--danger);display:inline-flex;padding:0;line-height:0}
.chip-x .ic{width:14px;height:14px;stroke-width:2.2}
.lightbox{position:fixed;inset:0;background:rgba(46,38,84,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;cursor:zoom-out}
.lightbox img{max-width:min(92vw,700px);max-height:78vh;border-radius:12px;box-shadow:0 10px 50px rgba(0,0,0,.6);object-fit:contain;background:#000}
.lb-close{position:absolute;top:14px;right:18px;color:#fff;font-size:30px;cursor:pointer;background:rgba(255,255,255,.15);width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center}.lb-cap{color:#fff;margin-top:12px;font-size:16px;text-align:center}
.espelho{background:rgba(255,255,255,.82);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--glass-line);border-radius:14px;padding:18px;width:min(94vw,640px);max-height:86vh;overflow-y:auto;cursor:default;color:#1e293b;-webkit-overflow-scrolling:touch;box-shadow:var(--glass-shadow)}
.espelho h2{font-size:19px;margin-bottom:6px}
.espelho table{width:100%;border-collapse:collapse;font-size:13px;min-width:0;margin:8px 0}
.espelho th,.espelho td{border:1px solid #cbd5e1;padding:6px;text-align:left}
.espelho .pixbox{border:1px dashed #a78bfa;background:#f5f3ff;border-radius:8px;padding:8px;margin-top:8px}
#map{width:100%;z-index:1}
/* MAPA: LOCALIZAÇÃO DOS CLIENTES */
.mapa-lista{display:flex;flex-direction:column;gap:8px}
.mapa-cli{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;background:rgba(255,255,255,.72);border:1px solid rgba(196,181,253,.6);border-radius:12px;padding:10px 12px}
.mapa-cli-info{flex:1;min-width:200px}
.mapa-cli-info b{display:block;font-size:14px;margin-bottom:2px}
.mapa-cli-info small{display:block;font-size:11.5px;color:var(--mut);line-height:1.45;word-break:break-word}
.mapa-cli-info small.ok{color:#047857;font-weight:600}
.mapa-cli-acoes{display:flex;gap:6px;flex-wrap:wrap}
.mapa-cli-acoes .btn-sm,.mapa-cli-acoes .btn-primary{white-space:nowrap}
.mapa-pop-rota{display:inline-block;margin-top:4px;font-weight:700;color:#5b3fa8}
/* VIA DO PEDIDO (vale p/ tela e impressão) */
.via{border:2px solid #7c5fd0;border-radius:10px;padding:0;margin-bottom:16px;page-break-inside:avoid;overflow:hidden;background:#fff;color:#000}
.via-head{background:#7c5fd0;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;gap:10px;-print-color-adjust:exact;print-color-adjust:exact}
.via-emp{font-size:19px;font-weight:bold}
.via-empsub{font-size:11px;opacity:.9}
.via-num{text-align:right;background:rgba(255,255,255,.15);border-radius:8px;padding:6px 14px}
.via-num small{display:block;font-size:10px;letter-spacing:1px}
.via-num b{font-size:22px}
.via-num span{display:block;font-size:10px;font-weight:bold}
.via-cli{display:flex;justify-content:space-between;gap:10px;padding:10px 16px;background:#f5f3ff;border-bottom:1px solid #ddd6fe;font-size:13px}
.via-cli2{text-align:right;white-space:nowrap}
.via-sec{font-weight:bold;font-size:13px;margin:10px 16px 4px}
table.via-items{width:100%;border-collapse:collapse;font-size:13px;margin:8px 0;min-width:0}
.via-items th{background:#7c5fd0;color:#fff;padding:7px;border:1px solid #7c5fd0;text-align:left;font-size:12px;-print-color-adjust:exact;print-color-adjust:exact}
.via-items td{padding:6px 7px;border:1px solid #cbd5e1}
.via-tot{margin:4px 16px 4px auto;width:250px;max-width:100%;font-size:13px}
.via-tot div{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px dotted #cbd5e1}
.via-total{background:#7c5fd0;color:#fff;border-radius:6px;padding:7px 10px!important;font-size:16px;border:none!important;-print-color-adjust:exact;print-color-adjust:exact}
.via-pix{margin:8px 16px;border:1px dashed #7c5fd0;background:#eef5fc;border-radius:8px;padding:8px;font-size:13px}
.via-obs{margin:4px 16px;font-size:12px}
.via-sign{display:flex;justify-content:space-between;gap:10px;margin:22px 16px 6px;font-size:12px;flex-wrap:wrap}
.via-foot{text-align:center;font-size:12px;font-style:italic;color:#475569;padding:6px 16px 12px}
.via-cut{border-top:2px dashed #000;margin:22px 0;text-align:center;font-size:11px;letter-spacing:2px;padding-top:4px;color:#000}
/* ===== NOTA FISCAL (via) ===== */
.nf{border:1px solid #334155;border-radius:4px;overflow:hidden;background:#fff;color:#111;margin-bottom:10px;font-size:12px;display:flex;flex-direction:column;page-break-inside:avoid;break-inside:avoid}
.nf-head{display:grid;grid-template-columns:1.55fr .85fr .6fr;border-bottom:1px solid #334155}
.nf-head>div{padding:8px 10px;border-right:1px solid #334155}
.nf-head>div:last-child{border-right:none}
.nf-emp b{display:block;font-size:16px;margin-bottom:3px}
.nf-emp small{display:block;color:#444;font-size:10.5px;line-height:1.35}
.nf-doc{display:flex;flex-direction:column;justify-content:center;gap:2px;text-align:center}
.nf-doc small{font-size:9.5px;color:#555;letter-spacing:.5px}
.nf-doc b{font-size:12px}
.nf-num{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center}
.nf-num small{font-size:9.5px;color:#555}
.nf-num b{font-size:19px}
.nf-cli{padding:7px 10px;border-bottom:1px solid #334155}
.nf-cli>small{display:block;font-size:9.5px;color:#555;letter-spacing:.5px;margin-bottom:2px}
.nf-cli>b{display:block;font-size:13.5px;margin-bottom:1px}
.nf-cli>small:last-child{letter-spacing:0;font-size:10.5px;color:#333;line-height:1.35}
table.nf-items{width:100%;border-collapse:collapse;font-size:11px;min-width:0}
.nf-items th{background:#e8e8e8;color:#111;border:1px solid #334155;padding:5px 4px;font-size:9.5px;text-transform:uppercase;position:static}
.nf-items td{border:1px solid #999;padding:4px}
.nf-items td:nth-child(1),.nf-items td:nth-child(4),.nf-items td:nth-child(5){text-align:center}
.nf-items td:nth-child(6),.nf-items td:nth-child(7){text-align:right;white-space:nowrap}
.nf-foot-linha{font-size:10px;color:#555;padding:3px 6px;border-bottom:1px solid #999}
.nf-row{display:flex;gap:0;align-items:stretch}
.nf-row>*{flex:1;min-width:0}
.nf-row.has-parc>.nf-tot{flex:0 0 112mm;max-width:112mm}
.nf-row.has-parc>.nf-box:last-child{flex:1}
.nf-box{border:1px solid #334155;border-top:none;padding:7px 10px;font-size:11px}
.nf-box>b{display:block;font-size:10px;letter-spacing:.6px;color:#555;margin-bottom:5px}
.nf-tot>div{display:flex;justify-content:space-between;padding:2px 0}
.nf-tot span{color:#444}
.nf-tot em{font-style:normal;font-weight:600}
.nf-total{border-top:1px solid #334155;margin-top:4px;padding-top:5px!important;font-size:13px;gap:8px}
.nf-total span{font-weight:700;color:#111!important;white-space:nowrap}
.nf-total em{font-weight:800;font-size:15px;white-space:nowrap}
.nf-pagto{font-size:10px;color:#555;margin-top:5px}
.nf-parc{width:100%;border-collapse:collapse;font-size:10.5px}
.nf-parc th{background:transparent;font-size:8.5px;letter-spacing:.4px;color:#555;text-align:left;padding:0 0 2px;border:none;border-bottom:1px solid #999}
.nf-parc th:nth-child(2){text-align:center}
.nf-parc th:nth-child(3){text-align:right}
.nf-parc td{border:none;padding:1px 0}
.nf-parc td:nth-child(2){text-align:center;color:#555}
.nf-parc td:nth-child(3){text-align:right;font-weight:600}
.nf-parc-total{display:flex;justify-content:space-between;gap:8px;border-top:1px dotted #999;margin-top:4px;padding-top:3px;font-size:10.5px}
.nf-parc-total span{color:#555}
.nf-parc-total em{font-style:normal;font-weight:700}
.nf-pix{background:#f7f7f7}
.nf-pix code{display:block;font-family:Consolas,monospace;font-size:12px;letter-spacing:.5px;word-break:break-all}
.nf-pix em{display:block;font-style:italic;font-size:9.5px;color:#444;margin-top:4px;line-height:1.3}
.nf-parc-linha{display:flex;justify-content:space-between;font-size:10px;padding:1.5px 0}
.nf-parc-linha span{color:#111}
.nf-parc-linha em{font-style:normal;font-weight:400}
.nf-parc-linha.nf-entrada span,.nf-parc-linha.nf-entrada em{font-weight:700}
.nf-obs span{font-size:10.5px;color:#333}
.nf-canhto{display:flex;border:1px solid #334155;border-top:none;min-height:58px}
.nf-fim{margin-top:auto}
.nf-canhto-box{width:170px;border-right:1px solid #334155;padding:6px 8px;background:#f2f2f2}
.nf-canhto-box b{display:block;font-size:10px;letter-spacing:.6px;color:#555}
.nf-canhto-box small{font-size:9.5px;color:#333;line-height:1.4}
.nf-ass{flex:1;display:flex;align-items:flex-end;justify-content:space-around;padding:0 20px 16px}
.nf-ass span{border-top:1px solid #555;padding-top:3px;font-size:9.5px;color:#555;width:44%;text-align:center}
.nf-rodape{text-align:center;font-size:10.5px;font-style:italic;color:#444;padding:7px 4px}
/* PRINT */
@page{size:A4 portrait;margin:10mm}
#printArea{display:none}
@media print{
  body *{visibility:hidden}
  #printArea,#printArea *{visibility:visible}
  #printArea{display:block;position:absolute;left:0;top:0;width:100%;padding:0;color:#000}
  /* remove efeito de vidro na impressão */
  *{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;box-shadow:none!important}
  body::before{display:none!important}
  html,body{margin:0!important;padding:0!important;height:auto!important;background:#fff!important}
  /* Nota fiscal: 1 via por folha, P&B */
  .nf{border-color:#000;margin:0;border-radius:0;page-break-after:always;break-after:page;page-break-inside:avoid;break-inside:avoid;width:100%;min-height:258mm;max-height:268mm;overflow:hidden}
  .nf:last-of-type{page-break-after:auto;break-after:auto}
  .nf-fim{page-break-inside:avoid;break-inside:avoid}
  .nf-head>div,.nf-cli,.nf-items th,.nf-items td,.nf-box,.nf-canhto,.nf-canhto-box{border-color:#000}
  .nf-items th{background:#ddd!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .nf-pix,.nf-canhto-box{background:#f4f4f4!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .nf-canhto{border-top:none}
  .nf-rodape{color:#000}
  .no-print{display:none}
}
/* ===== CALENDÁRIO DE FIADOS ===== */
.cal-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.cal-top h3{margin:0;display:flex;align-items:center;gap:6px;font-size:16px}
.cal-nav{display:flex;align-items:center;gap:6px}
.cal-nav .btn-sm{min-height:34px;padding:6px 11px;font-weight:700;font-size:14px}
.cal-mes{font-weight:700;font-size:14px;color:#4b3b8f;min-width:132px;text-align:center;white-space:nowrap}
.cal-filtros{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px}
.cal-filtros select{width:auto;min-width:140px;min-height:38px}
.cal-filtros input{flex:1 1 180px;max-width:280px;min-height:38px}
.cal-resumo{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.cal-pill{flex:1 1 120px;background:rgba(255,255,255,.85);border:1px solid rgba(196,181,253,.5);border-radius:10px;padding:6px 10px;font-size:11px;color:#6b6880;line-height:1.35}
.cal-pill b{display:block;font-size:15px;color:#3f3a5c}
.cal-pill.pend b{color:#1d4ed8}
.cal-pill.venc b{color:#b91c1c}
.cal-pill.pago b{color:#047857}
.cal-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}
.cal-inner{min-width:660px}
.cal-head{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:6px}
.cal-head div{text-align:center;font-size:10.5px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:#6d5bc4;padding:6px 0;background:rgba(139,111,224,.10);border-radius:8px}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-cell{background:rgba(255,255,255,.92);border:1px solid rgba(196,181,253,.45);border-radius:10px;min-height:104px;padding:5px 6px 6px;display:flex;flex-direction:column;gap:3px;min-width:0}
.cal-cell.out{background:rgba(246,244,252,.55);border-style:dashed;border-color:rgba(196,181,253,.22)}
.cal-cell.today{background:#fffdf5;border-color:#fbbf24;box-shadow:inset 0 0 0 2px #fde68a}
.cal-date{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:22px}
.cal-date .n{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:11.5px;font-weight:700;color:#4b4a63}
.cal-cell.today .cal-date .n{background:#fbbf24;color:#3b2a00}
.cal-date .tt{font-size:9.5px;font-weight:700;color:#5b4bb0;background:rgba(139,111,224,.12);border-radius:6px;padding:1px 5px;white-space:nowrap}
.cal-event{border-radius:7px;padding:3px 5px;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;overflow:hidden}
.cal-event b{display:block;font-size:10px;font-weight:700;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-event span{display:block;font-size:9.5px;font-weight:700;line-height:1.25}
.cal-event.vencido{border-color:#fecaca;background:#fef2f2;color:#991b1b}
.cal-event.pago{border-color:#bbf7d0;background:#f0fdf4;color:#166534}
.cal-more{display:block;text-align:center;background:rgba(139,111,224,.10);color:#5b4bb0;font-size:9.5px;font-weight:700;border-radius:6px;padding:3px 2px}
.cal-cell.has-ev{cursor:pointer}
.cal-cell.has-ev:hover{border-color:#a78bfa;box-shadow:0 2px 10px rgba(139,111,224,.18)}
.cal-count{display:none}
.cal-vazio{grid-column:1/-1;text-align:center;color:#8b87a0;font-size:13px;padding:28px 10px;background:rgba(255,255,255,.6);border:1px dashed rgba(196,181,253,.5);border-radius:10px}
.cal-legenda{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px dashed rgba(196,181,253,.6);font-size:11px;color:#5b5570}
.cal-legenda span{display:inline-flex;align-items:center;gap:5px}
.cal-legenda .dot{width:10px;height:10px;border-radius:3px;display:inline-block;flex:0 0 auto}
.dot-pend{background:#dbeafe;border:1px solid #93c5fd}
.dot-venc{background:#fee2e2;border:1px solid #fca5a5}
.dot-pago{background:#dcfce7;border:1px solid #86efac}
.cal-dia-item{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding:9px 10px;border:1px solid rgba(196,181,253,.5);border-radius:9px;margin-bottom:7px;background:rgba(255,255,255,.75);font-size:13px}
.cal-dia-item>div:first-child{min-width:0}
.cal-dia-acoes{display:flex;align-items:center;gap:8px;flex-shrink:0}
.cal-dia-item small{display:block;color:#6b6880;font-size:11px;margin-top:2px}
.cal-dia-item .v{font-weight:700;white-space:nowrap}
.cal-dia-item.vencido{border-color:#fecaca;background:#fef2f2}
.cal-dia-item.vencido .v{color:#b91c1c}
.cal-dia-item.pago{border-color:#bbf7d0;background:#f0fdf4}
.cal-dia-item.pago .v{color:#047857}

/* ===== TABLET (768–1024) ===== */
@media(max-width:1024px){
  .cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
  .grid-prod{grid-template-columns:repeat(3,1fr)}
  .main{padding:0 16px 60px}
  .field.small{max-width:none;flex:1 1 30%}
}
/* ===== CELULAR (até 768px) ===== */
#bottomNav{display:none}
@media(max-width:768px){
  #bottomNav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(255,255,255,.9);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-top:1px solid rgba(196,181,253,.5);box-shadow:0 -4px 20px rgba(76,60,110,.1);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
  #bottomNav button{flex:1;background:transparent;border:none;color:#6b6880;font-size:20px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px;min-height:52px;cursor:pointer}
  #bottomNav button small{font-size:10px}
  #bottomNav button.active{color:#6d5bc4}
  #bottomNav button.fab{color:#6d5bc4;font-weight:bold}
  .sidebar{position:fixed;left:-270px;top:0;bottom:0;width:270px;flex-basis:270px;height:100dvh;transition:left .25s ease;box-shadow:8px 0 30px rgba(0,0,0,.3)}
  .sidebar.open{left:0}
  .btn-menu{display:block}
  .main{padding:0 12px 80px;margin-left:0!important}
  .page-title{padding:14px 0 8px}
  .cards{grid-template-columns:repeat(2,1fr);gap:10px}
  .card{padding:12px}
  .panel{padding:14px}
  .form-row{flex-direction:column;gap:8px}
  .field,.field.small{max-width:none;min-width:0;width:100%}
  .toolbar{flex-direction:column}
  .toolbar input,.toolbar select{min-width:0;width:100%}
  .grid-prod{grid-template-columns:repeat(2,1fr);gap:10px}
  .prod-card img,.prod-sem-foto{height:120px}
  .btn-primary.big{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom));z-index:65;box-shadow:0 6px 20px rgba(22,163,74,.4)}
  .flex.gap .btn-primary,.flex.gap .btn-ghost{flex:1;min-width:140px}
  table{font-size:13px;min-width:620px}
  th,td{padding:8px}
  .metas-grid{grid-template-columns:repeat(2,1fr)}
  #map{height:50vh!important}
  .mapa-cli{align-items:flex-start}
  .mapa-cli-acoes{width:100%}
  .mapa-cli-acoes .btn-sm,.mapa-cli-acoes .btn-primary{flex:1 1 auto;justify-content:center}
}
/* ===== CELULAR PEQUENO (até 420px) ===== */
@media(max-width:420px){
  .cards{grid-template-columns:repeat(2,1fr);gap:8px}
  .card strong{font-size:17px}
  .grid-prod{grid-template-columns:1fr 1fr;gap:8px}
  .prod-card h4{font-size:13px}
  .prod-card .preco{font-size:17px}
  .prod-acoes{gap:6px;padding:8px}
  .prod-acoes button{font-size:12px;padding:8px}
  .prod-acoes .prod-wa{padding:0 10px}
  .metas-grid{grid-template-columns:repeat(2,1fr);gap:10px}
}
@media(max-width:360px){
  .metas-grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .kpi-resumo{grid-template-columns:1fr}
  .kpi-resumo .card strong{font-size:clamp(22px,6vw,28px)}
}
/* ===== CALENDÁRIO DE FIADOS NO CELULAR ===== */
@media(max-width:640px){
  .cal-top{gap:8px;margin-bottom:8px}
  .cal-top h3{font-size:14px;flex:1 1 100%}
  .cal-nav{flex:1 1 100%;justify-content:space-between}
  .cal-nav .btn-sm{padding:6px 12px}
  .cal-mes{min-width:0;flex:1;font-size:13.5px}
  .cal-filtros select{flex:1 1 120px;min-width:0}
  .cal-filtros input{flex:1 1 140px;max-width:none}
  .cal-filtros{margin-bottom:8px}
  .cal-resumo{gap:6px;margin-bottom:8px}
  .cal-pill{flex:1 1 calc(50% - 6px);padding:5px 8px;font-size:10px}
  .cal-pill b{font-size:13px}
  .cal-inner{min-width:0}
  .cal-head{gap:4px;margin-bottom:4px}
  .cal-head div{font-size:9px;padding:5px 0;border-radius:6px;letter-spacing:0}
  .cal-grid{gap:4px}
  .cal-cell{min-height:56px;padding:3px 3px 4px;border-radius:8px;gap:2px;overflow:hidden}
  .cal-date{min-height:18px;justify-content:center}
  .cal-date .n{width:19px;height:19px;font-size:10.5px}
  .cal-date .tt{display:none}
  .cal-event,.cal-more{display:none}
  .cal-count{display:block;margin-top:auto;text-align:center;font-size:9px;font-weight:700;color:#5b4bb0;background:rgba(139,111,224,.16);border-radius:6px;padding:2px 0}
  .cal-count.venc{background:rgba(254,202,202,.6);color:#b91c1c}
  .cal-count.pago{background:rgba(187,247,208,.6);color:#047857}
  .cal-legenda{gap:10px;font-size:10px;margin-top:8px;padding-top:8px}
  .cal-legenda .dot{width:8px;height:8px}
  .cal-dia-item{font-size:12px;padding:8px}
  .ped-sucesso{padding:10px}
  .ped-sucesso .btn-primary,.ped-sucesso .btn-ghost{flex:1 1 100%}
  .prazo-box{padding:10px}
}

/* ===== SCORE E ESPELHO DO CLIENTE ===== */
.score-badge{display:inline-block;font-weight:700;font-size:12px;padding:2px 9px;border-radius:20px;border:1px solid transparent;white-space:nowrap;line-height:1.5}
.score-otimo{background:#ecfdf5;color:#047857;border-color:#86efac}
.score-bom{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.score-atencao{background:#fffbeb;color:#b45309;border-color:#fde68a}
.score-risco{background:#fef2f2;color:#b91c1c;border-color:#fecaca}
.score-novo{background:#f1f5f9;color:#64748b;border-color:#e2e8f0}
.cli-esp-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;border-bottom:1px dashed rgba(139,111,224,.4);padding-bottom:10px;margin-bottom:10px}
.cli-esp-head h2{font-size:19px;margin-bottom:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.cli-esp-head .muted{margin:1px 0;font-size:12.5px}
.cli-esp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:12px}
.cli-esp-kpi{background:rgba(245,243,255,.7);border:1px solid rgba(196,181,253,.6);border-radius:10px;padding:8px 10px}
.cli-esp-kpi small{display:block;font-size:11px;color:var(--mut)}
.cli-esp-kpi b{display:block;font-size:16px;margin-top:2px;word-break:break-word}
.cli-esp-kpi span{font-size:10.5px;color:var(--mut);line-height:1.3;display:block}
.cli-score-box{background:rgba(245,243,255,.55);border:1px solid rgba(196,181,253,.6);border-radius:12px;padding:10px 12px;margin-bottom:12px}
.score-bar{height:9px;border-radius:6px;background:rgba(139,111,224,.18);overflow:hidden;margin:8px 0}
.score-fill{display:block;height:100%;border-radius:6px}
.score-fill.score-otimo{background:linear-gradient(90deg,#34d399,#059669)}
.score-fill.score-bom{background:linear-gradient(90deg,#93c5fd,#2563eb)}
.score-fill.score-atencao{background:linear-gradient(90deg,#fcd34d,#d97706)}
.score-fill.score-risco{background:linear-gradient(90deg,#fca5a5,#dc2626)}
.score-fill.score-novo{background:linear-gradient(90deg,#cbd5e1,#94a3b8)}
.cli-score-info{display:flex;gap:12px;flex-wrap:wrap;font-size:11.5px;color:var(--mut);margin-bottom:2px}
.cli-score-info b{color:inherit}
.cli-esp-tit{margin:12px 0 6px;font-size:14px;display:flex;align-items:center;gap:6px}
#cliEspelhoBody table{font-size:12.5px}
#cliEspelhoBody th{padding:6px}
#cliEspelhoBody td{padding:6px}
.cli-row{cursor:pointer}
.cli-row:hover{background:rgba(139,111,224,.07)}
@media(max-width:640px){
  .mob-hide{display:none!important}
  .cli-row td .btn-sm{padding:6px 8px;font-size:11px}
}

/* ===================================================================
   TEMA ESCURO
   =================================================================== */
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#12101c;
  --card:rgba(34,29,50,.86);
  --glass:rgba(31,27,46,.86);
  --glass-strong:rgba(42,36,62,.95);
  --glass-line:rgba(148,130,220,.26);
  --glass-shadow:0 8px 28px rgba(0,0,0,.45);
  --mut:#a8a3c1;
  --dark:rgba(245,243,255,.95);
  --pri2:#b9a6ff;
  --ok:#b9a6ff;
  --warn:#fbbf24;
  --danger:#fb7185;
}
html[data-theme="dark"] body{background:#12101c;color:#e7e3f5}
html[data-theme="dark"] body::before{background:
  radial-gradient(55% 45% at 8% 6%,rgba(109,91,196,.45),transparent 62%),
  radial-gradient(50% 45% at 92% 10%,rgba(16,185,129,.20),transparent 62%),
  radial-gradient(55% 50% at 82% 78%,rgba(190,24,93,.20),transparent 62%),
  radial-gradient(50% 45% at 15% 85%,rgba(139,111,224,.30),transparent 62%),
  linear-gradient(135deg,#191426,#0f1a1a)}
html[data-theme="dark"] body::after{opacity:.10}
/* topo / ações */
html[data-theme="dark"] .btn-tema{background:rgba(255,255,255,.07);border-color:rgba(148,130,220,.35);color:#ddd2ff}
html[data-theme="dark"] .btn-tema:hover{background:rgba(139,111,224,.25)}
html[data-theme="dark"] .btn-tema .i-lua{display:none}
html[data-theme="dark"] .btn-tema .i-sol{display:block}
html[data-theme="dark"] .btn-menu,
html[data-theme="dark"] .btn-expand,
html[data-theme="dark"] .btn-sair{background:rgba(255,255,255,.07);border-color:rgba(148,130,220,.35);color:#d8d3ea}
/* login */
html[data-theme="dark"] .login-screen{background:linear-gradient(135deg,#161221,#0f1a19)}
html[data-theme="dark"] .login-card{background:rgba(30,26,45,.94);border-color:rgba(148,130,220,.3);color:#e7e3f5}
html[data-theme="dark"] .login-card h1,
html[data-theme="dark"] .login-card h2{color:#f4f1ff}
html[data-theme="dark"] .login-card input{background:rgba(255,255,255,.06);border-color:rgba(148,130,220,.35);color:#ece9f8}
/* sidebar */
html[data-theme="dark"] .sidebar{background:rgba(24,20,36,.94);border-right-color:rgba(148,130,220,.22);box-shadow:4px 0 24px rgba(0,0,0,.35)}
html[data-theme="dark"] .sidebar::before{background:linear-gradient(180deg,rgba(64,52,98,.5),rgba(24,20,36,.3))}
html[data-theme="dark"] .brand{border-bottom-color:rgba(148,130,220,.22)}
html[data-theme="dark"] .brand strong{color:#f2eeff}
html[data-theme="dark"] .brand small{color:#a8a3c1}
html[data-theme="dark"] .btn-collapse{background:rgba(80,65,125,.5);border-color:rgba(148,130,220,.35);color:#c9b8ff}
html[data-theme="dark"] #menu button{color:#c9c4de}
html[data-theme="dark"] #menu button:hover{background:rgba(109,91,196,.22);color:#f0ecff}
html[data-theme="dark"] .sidebar-foot{background:rgba(255,255,255,.03);border-top-color:rgba(148,130,220,.22)}
html[data-theme="dark"] .sidebar-foot .btn-ghost{background:rgba(255,255,255,.06);color:#ddd2ff;border-color:rgba(148,130,220,.3)}
/* formulários */
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea{background:rgba(255,255,255,.06);border-color:rgba(148,130,220,.32);color:#ece9f8}
html[data-theme="dark"] .field label{color:#c9c4de}
html[data-theme="dark"] .field input,
html[data-theme="dark"] .field select,
html[data-theme="dark"] .toolbar input,
html[data-theme="dark"] .toolbar select,
html[data-theme="dark"] .cal-filtros input,
html[data-theme="dark"] .cal-filtros select,
html[data-theme="dark"] .meta-card input{background:rgba(255,255,255,.06);border-color:rgba(148,130,220,.32);color:#ece9f8}
html[data-theme="dark"] .field input:focus,
html[data-theme="dark"] .field select:focus,
html[data-theme="dark"] .toolbar input:focus{background:rgba(255,255,255,.10)}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#8b86a5}
html[data-theme="dark"] select option{background:#231d38;color:#ece9f8}
/* botões secundários */
html[data-theme="dark"] .btn-ghost,
html[data-theme="dark"] .btn-sm{background:rgba(255,255,255,.06);border-color:rgba(148,130,220,.3);color:#d8d3ea}
html[data-theme="dark"] .btn-ghost:hover,
html[data-theme="dark"] .btn-sm:hover{background:rgba(255,255,255,.11);color:#fff}
html[data-theme="dark"] .btn-sm.danger{background:rgba(244,63,94,.15);border-color:rgba(244,63,94,.35);color:#fda4af}
html[data-theme="dark"] .btn-sm.wa{background:rgba(34,197,94,.16);border-color:rgba(74,222,128,.4);color:#86efac}
html[data-theme="dark"] .btn-sm.wa:hover{background:rgba(34,197,94,.26)}
/* tabelas */
html[data-theme="dark"] .table-wrap{background:rgba(31,27,46,.7)}
html[data-theme="dark"] th{background:rgba(255,255,255,.05);color:#a8a3c1}
html[data-theme="dark"] th,
html[data-theme="dark"] td{border-bottom-color:rgba(148,130,220,.18)}
html[data-theme="dark"] tbody tr:hover{background:rgba(255,255,255,.04)}
/* hero / kpi / dashboard */
html[data-theme="dark"] .hero{background:linear-gradient(120deg,rgba(50,42,74,.92),rgba(36,31,55,.88));border-color:rgba(148,130,220,.32);color:#e7e3f5}
html[data-theme="dark"] .hero h2{color:#f4f1ff}
html[data-theme="dark"] .hero small{color:#c4b5fd}
html[data-theme="dark"] .hero .muted{color:#c9c4de}
html[data-theme="dark"] .hero-actions .btn-ghost{background:rgba(255,255,255,.07);color:#ddd2ff;border-color:rgba(148,130,220,.35)}
html[data-theme="dark"] .kpi-ico{background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(148,130,220,.32)}
html[data-theme="dark"] .kpi-green .kpi-ico{color:#5eead4}
html[data-theme="dark"] .kpi-blue .kpi-ico{color:#c4b5fd}
html[data-theme="dark"] .kpi-orange .kpi-ico{color:#f9a8d4}
html[data-theme="dark"] .kpi-red .kpi-ico{color:#fda4af}
html[data-theme="dark"] .kpi-dark .kpi-ico{color:#d8b4fe}
/* catálogo */
html[data-theme="dark"] .catalogo-dica{background:rgba(139,111,224,.12);border-color:rgba(167,139,250,.45);color:#c9c4de}
html[data-theme="dark"] .catalogo-dica .ic,
html[data-theme="dark"] .catalogo-dica b{color:#c4b5fd}
html[data-theme="dark"] .prod-card img,html[data-theme="dark"] .prod-sem-foto{background:#2a2438}
html[data-theme="dark"] .prod-sem-foto{color:#a8a3c1}
html[data-theme="dark"] .prod-sem-foto .ic{color:#c4b5fd}
html[data-theme="dark"] .prod-card .cat{background:rgba(139,111,224,.22);color:#ddd2ff}
html[data-theme="dark"] .prod-card .preco{color:#c4b5fd}
html[data-theme="dark"] .prod-acoes .prod-add{background:linear-gradient(135deg,#8b6fe0,#6d5bc4);color:#fff}
html[data-theme="dark"] .prod-acoes .prod-wa{background:rgba(34,197,94,.16);border-color:rgba(74,222,128,.4);color:#86efac}
html[data-theme="dark"] .prod-acoes .prod-wa:hover{background:rgba(34,197,94,.26)}
html[data-theme="dark"] .oferta-resumo{background:rgba(139,111,224,.12);border-color:rgba(148,130,220,.34)}
html[data-theme="dark"] .oferta-sem-foto{background:#2a2438;color:#c4b5fd}
html[data-theme="dark"] .oferta-resumo small{color:#a8a3c1}
html[data-theme="dark"] .oferta-erro{color:#fca5a5}
html[data-theme="dark"] .caixa-info{background:rgba(139,111,224,.16);border-color:#8b6fe0;color:#ddd2ff}
html[data-theme="dark"] .caixa-form{background:rgba(139,111,224,.12);border-color:rgba(167,139,250,.55)}
html[data-theme="dark"] #prodPreco.preco-auto{background:rgba(16,185,129,.18);border-color:#34d399;color:#d1fae5}
html[data-theme="dark"] .preco-info{background:rgba(255,255,255,.05);border-color:rgba(148,130,220,.28);color:#a8a3c1}
html[data-theme="dark"] .preco-info.preco-ok{color:#6ee7b7}
html[data-theme="dark"] .preco-info.preco-manual{color:#fcd34d}
html[data-theme="dark"] .seg{background:rgba(255,255,255,.05);border-color:rgba(148,130,220,.28)}
html[data-theme="dark"] .seg-btn{color:#a8a3c1}
html[data-theme="dark"] .seg-btn:hover{background:rgba(139,111,224,.2);color:#ddd2ff}
html[data-theme="dark"] .tipo-cx{background:rgba(139,111,224,.22);color:#ddd2ff;border-color:rgba(167,139,250,.45)}
html[data-theme="dark"] .tipo-un{background:rgba(16,185,129,.18);color:#6ee7b7;border-color:rgba(16,185,129,.4)}
html[data-theme="dark"] .cat-chip{background:rgba(139,111,224,.18);border-color:rgba(148,130,220,.4);color:#ddd2ff}
/* metas */
html[data-theme="dark"] .meta-card{background:rgba(34,29,50,.92);border-color:rgba(148,130,220,.32);box-shadow:0 4px 16px rgba(0,0,0,.35)}
html[data-theme="dark"] .meta-card.atual{background:#241d3a;border-color:#a78bfa;box-shadow:0 8px 24px rgba(139,111,224,.3)}
html[data-theme="dark"] .meta-top{border-bottom-color:rgba(148,130,220,.22)}
html[data-theme="dark"] .meta-top b{color:#f0ecff}
html[data-theme="dark"] .meta-chip{background:rgba(139,111,224,.25);color:#ddd2ff}
html[data-theme="dark"] .meta-lbl,
html[data-theme="dark"] .meta-real,
html[data-theme="dark"] .meta-foot{color:#a8a3c1}
html[data-theme="dark"] .meta-real b,
html[data-theme="dark"] .meta-foot b{color:#e9e5f7}
html[data-theme="dark"] .bar{background:rgba(255,255,255,.1)}
/* fiado */
html[data-theme="dark"] .ftab b{color:#f0ecff}
html[data-theme="dark"] .ftab small{color:#a8a3c1}
html[data-theme="dark"] .ftab em{color:#c4b5fd}
html[data-theme="dark"] .ftab-ico{background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(148,130,220,.3);color:#c4b5fd}
html[data-theme="dark"] .ftab:hover{box-shadow:0 10px 28px rgba(0,0,0,.45)}
/* calendário */
html[data-theme="dark"] .cal-mes{color:#c4b5fd}
html[data-theme="dark"] .cal-head div{background:rgba(139,111,224,.16);color:#c4b5fd}
html[data-theme="dark"] .cal-cell{background:rgba(34,29,50,.9);border-color:rgba(148,130,220,.25)}
html[data-theme="dark"] .cal-cell.out{background:rgba(255,255,255,.03);border-color:rgba(148,130,220,.12)}
html[data-theme="dark"] .cal-cell.today{background:#2b2440;border-color:#fbbf24;box-shadow:inset 0 0 0 2px rgba(251,191,36,.55)}
html[data-theme="dark"] .cal-date .n{color:#d8d3ea}
html[data-theme="dark"] .cal-date .tt{background:rgba(139,111,224,.22);color:#c4b5fd}
html[data-theme="dark"] .cal-event{background:rgba(59,130,246,.14);border-color:rgba(96,165,250,.4);color:#bfdbfe}
html[data-theme="dark"] .cal-event.vencido{background:rgba(248,113,113,.14);border-color:rgba(248,113,113,.4);color:#fecaca}
html[data-theme="dark"] .cal-event.pago{background:rgba(16,185,129,.14);border-color:rgba(16,185,129,.4);color:#a7f3d0}
html[data-theme="dark"] .cal-more{background:rgba(139,111,224,.18);color:#c4b5fd}
html[data-theme="dark"] .cal-pill{background:rgba(34,29,50,.9);border-color:rgba(148,130,220,.28);color:#a8a3c1}
html[data-theme="dark"] .cal-pill b{color:#e9e5f7}
html[data-theme="dark"] .cal-pill.pend b{color:#93c5fd}
html[data-theme="dark"] .cal-pill.venc b{color:#fca5a5}
html[data-theme="dark"] .cal-pill.pago b{color:#6ee7b7}
html[data-theme="dark"] .cal-vazio{background:rgba(255,255,255,.03);border-color:rgba(148,130,220,.25);color:#a8a3c1}
html[data-theme="dark"] .cal-legenda{color:#a8a3c1;border-top-color:rgba(148,130,220,.28)}
html[data-theme="dark"] .cal-dia-item{background:rgba(255,255,255,.04);border-color:rgba(148,130,220,.3)}
html[data-theme="dark"] .cal-dia-item small{color:#a8a3c1}
html[data-theme="dark"] .cal-dia-item.vencido{background:rgba(248,113,113,.12);border-color:rgba(248,113,113,.4)}
html[data-theme="dark"] .cal-dia-item.vencido .v{color:#fca5a5}
html[data-theme="dark"] .cal-dia-item.pago{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.4)}
html[data-theme="dark"] .cal-dia-item.pago .v{color:#6ee7b7}
html[data-theme="dark"] .cal-count{color:#ddd2ff;background:rgba(139,111,224,.2)}
/* pedido */
html[data-theme="dark"] .ped-balloon{box-shadow:0 2px 12px rgba(0,0,0,.35)}
html[data-theme="dark"] .prazo-box{background:rgba(139,111,224,.1);border-color:rgba(139,111,224,.5)}
html[data-theme="dark"] .prazo-box h4{color:#c4b5fd}
html[data-theme="dark"] .ped-sucesso{background:rgba(16,185,129,.12);border-color:rgba(16,185,129,.42);box-shadow:0 4px 18px rgba(0,0,0,.35)}
html[data-theme="dark"] .ped-sucesso-txt b{color:#6ee7b7}
html[data-theme="dark"] .ped-sucesso-txt small{color:#a7f3d0}
html[data-theme="dark"] .ped-sucesso .btn-ghost{background:rgba(255,255,255,.07);color:#d8d3ea;border-color:rgba(148,130,220,.3)}
html[data-theme="dark"] tr.row-flash{animation:rowFlashDark 2.2s ease}
@keyframes rowFlashDark{0%,100%{background:transparent}15%,65%{background:rgba(139,111,224,.28)}}
/* modais / espelho */
html[data-theme="dark"] .score-otimo{background:rgba(16,185,129,.16);color:#6ee7b7;border-color:rgba(16,185,129,.42)}
html[data-theme="dark"] .score-bom{background:rgba(59,130,246,.18);color:#93c5fd;border-color:rgba(59,130,246,.42)}
html[data-theme="dark"] .score-atencao{background:rgba(251,191,36,.16);color:#fcd34d;border-color:rgba(251,191,36,.42)}
html[data-theme="dark"] .score-risco{background:rgba(248,113,113,.16);color:#fca5a5;border-color:rgba(248,113,113,.42)}
html[data-theme="dark"] .score-novo{background:rgba(148,163,184,.16);color:#cbd5e1;border-color:rgba(148,163,184,.35)}
html[data-theme="dark"] .cli-esp-kpi,
html[data-theme="dark"] .cli-score-box{background:rgba(139,111,224,.12);border-color:rgba(139,111,224,.4)}
html[data-theme="dark"] .score-bar{background:rgba(255,255,255,.1)}
html[data-theme="dark"] .cli-esp-head{border-bottom-color:rgba(148,130,220,.35)}
html[data-theme="dark"] .cli-row:hover{background:rgba(139,111,224,.16)}
html[data-theme="dark"] .mapa-cli{background:rgba(139,111,224,.1);border-color:rgba(139,111,224,.4)}
html[data-theme="dark"] .mapa-cli-info small.ok{color:#6ee7b7}
html[data-theme="dark"] .mapa-pop-rota{color:#c4b5fd}
html[data-theme="dark"] .espelho{background:rgba(30,25,45,.97);border-color:rgba(148,130,220,.3);color:#e7e3f5}
html[data-theme="dark"] .espelho h2{color:#f0ecff}
html[data-theme="dark"] .espelho .pixbox{background:rgba(139,111,224,.12);border-color:rgba(139,111,224,.45)}
html[data-theme="dark"] .calc-venda{background:rgba(139,111,224,.10);border-color:rgba(167,139,250,.55)}
html[data-theme="dark"] .calc-venda .muted{color:#c9c4de}
html[data-theme="dark"] #calcLucroVenda.calc-pos{color:#6ee7b7}
html[data-theme="dark"] #calcLucroVenda.calc-neg{color:#fca5a5}
html[data-theme="dark"] .calc-result{background:rgba(139,111,224,.12);border-color:rgba(139,111,224,.45)}
html[data-theme="dark"] .danger-zone{border-color:rgba(248,113,113,.4)}
html[data-theme="dark"] .lightbox{background:rgba(0,0,0,.75)}
/* barra inferior do celular */
html[data-theme="dark"] #bottomNav{background:rgba(24,20,36,.95);border-top-color:rgba(148,130,220,.25);box-shadow:0 -4px 20px rgba(0,0,0,.45)}
html[data-theme="dark"] #bottomNav button{color:#a8a3c1}
html[data-theme="dark"] #bottomNav button.active,
html[data-theme="dark"] #bottomNav button.fab{color:#c4b5fd}
/* scrollbars */
html[data-theme="dark"]{scrollbar-color:rgba(139,111,224,.6) #12101c}
html[data-theme="dark"]::-webkit-scrollbar-track,
html[data-theme="dark"] ::-webkit-scrollbar-track{background:#12101c}
html[data-theme="dark"]::-webkit-scrollbar-thumb,
html[data-theme="dark"] ::-webkit-scrollbar-thumb{background:rgba(139,111,224,.55);border:2px solid transparent;border-radius:8px;background-clip:content-box}
html[data-theme="dark"]::-webkit-scrollbar-thumb:hover,
html[data-theme="dark"] ::-webkit-scrollbar-thumb:hover{background:rgba(139,111,224,.85);border:2px solid transparent;background-clip:content-box}
html[data-theme="dark"]::-webkit-scrollbar-corner,
html[data-theme="dark"] ::-webkit-scrollbar-corner{background:#12101c}
@media(max-width:768px){.btn-tema .txt-tema{display:none}}

/* documentos (espelho / nota fiscal) continuam em papel branco no modo escuro */
html[data-theme="dark"] .nf{background:#fff;color:#111}
html[data-theme="dark"] .nf th{background:#e8e8e8;color:#111;border-color:#334155}
html[data-theme="dark"] .nf td{color:#111;border-color:#999}
html[data-theme="dark"] .nf-pix{background:#f7f7f7}


/* ===== v46: servidor (login por e-mail, indicador de sincronização) ===== */
.login-card .login-carregando{display:none;margin:18px 0 6px;color:var(--mut)}
.login-card.carregando .login-form{display:none}
.login-card.carregando .login-carregando{display:block}
.login-msg{min-height:20px;margin:8px 0 0;font-size:14px;color:#dc2626;font-weight:600}
.login-card button:disabled{opacity:.6;cursor:wait}
.sync-badge{position:fixed;left:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:9999;max-width:min(92vw,420px);padding:10px 14px;border-radius:10px;font-size:13px;font-weight:600;line-height:1.35;box-shadow:0 6px 24px rgba(0,0,0,.25);color:#fff;background:#334155}
.sync-badge.hidden{display:none}
.sync-badge.sync-info{background:#334155}
.sync-badge.sync-aviso{background:#b45309}
.sync-badge.sync-erro{background:#b91c1c}
@media (max-width:768px){ .sync-badge{bottom:calc(76px + env(safe-area-inset-bottom,0px))} }
