:root{
  --bg:#f3f6fb; --panel:#ffffff; --panel2:#f8fafc; --text:#0f172a; --muted:#64748b; --line:#e2e8f0;
  --brand:#2563eb; --brand2:#7c3aed; --success:#16a34a; --warning:#f59e0b; --danger:#dc2626; --info:#0891b2;
  --shadow:0 18px 45px rgba(15,23,42,.08); --radius:22px;
}
[data-theme="dark"]{
  --bg:#0b1020; --panel:#111827; --panel2:#0f172a; --text:#e5e7eb; --muted:#9ca3af; --line:#1f2937;
  --shadow:0 18px 45px rgba(0,0,0,.28);
}
*{box-sizing:border-box} body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at top left,rgba(37,99,235,.14),transparent 30%),radial-gradient(circle at top right,rgba(124,58,237,.13),transparent 28%),var(--bg);color:var(--text)}
a{color:inherit}.app-shell{display:grid;grid-template-columns:292px 1fr;min-height:100vh}.sidebar{background:#0f172a;color:#cbd5e1;padding:24px 18px;position:sticky;top:0;height:100vh;overflow:auto;z-index:10}.brand{display:flex;align-items:center;gap:12px;margin-bottom:26px}.brand-logo{width:48px;height:48px;border-radius:17px;display:grid;place-items:center;color:#fff;font-weight:900;background:linear-gradient(135deg,var(--brand),var(--brand2));box-shadow:0 12px 28px rgba(37,99,235,.35)}.brand span{display:block;color:#94a3b8;font-size:13px;margin-top:2px}.menu-title{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.1em;margin:22px 12px 8px}.menu a{display:flex;align-items:center;gap:10px;text-decoration:none;color:#cbd5e1;padding:12px 14px;border-radius:15px;font-weight:700;margin:3px 0}.menu a.active,.menu a:hover{background:rgba(255,255,255,.1);color:white}.main{padding:22px;min-width:0}.topbar{background:rgba(255,255,255,.82);border:1px solid rgba(226,232,240,.85);backdrop-filter:blur(18px);border-radius:var(--radius);padding:17px 18px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:12px;z-index:5}[data-theme="dark"] .topbar{background:rgba(17,24,39,.86);border-color:#1f2937}.topbar h1{font-size:25px;letter-spacing:-.04em;margin:0}.topbar p{margin:4px 0 0;color:var(--muted);font-size:14px}.top-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.pill{border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:9px 13px;color:var(--muted);font-weight:800;font-size:13px;white-space:nowrap}.theme-toggle{cursor:pointer}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:18px}.grid.two{grid-template-columns:1.5fr 1fr}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px;min-width:0}.kpi{position:relative;overflow:hidden}.kpi:after{content:"";position:absolute;right:-24px;top:-24px;width:96px;height:96px;border-radius:50%;background:rgba(37,99,235,.1)}.kpi .label{color:var(--muted);font-weight:850;font-size:13px}.kpi .value{font-size:31px;font-weight:950;letter-spacing:-.05em;margin:8px 0}.kpi .hint{color:var(--muted);font-weight:650;font-size:13px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-head h2{margin:0;font-size:18px;letter-spacing:-.03em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:14px;padding:11px 15px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;font-weight:900;text-decoration:none;cursor:pointer;box-shadow:0 14px 24px rgba(37,99,235,.22);white-space:nowrap}.btn.secondary{background:#0f172a;box-shadow:none}.btn.light{background:var(--panel2);color:var(--text);border:1px solid var(--line);box-shadow:none}.btn.danger{background:var(--danger)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px}.table{width:100%;border-collapse:collapse;min-width:780px;background:var(--panel)}.table th,.table td{padding:14px 13px;border-bottom:1px solid var(--line);text-align:left;font-size:14px;white-space:nowrap}.table th{background:var(--panel2);font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.table tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:950}.badge.success{background:#dcfce7;color:#166534}.badge.warning{background:#fef3c7;color:#92400e}.badge.danger{background:#fee2e2;color:#991b1b}.badge.info{background:#e0f2fe;color:#075985}.badge.muted{background:#f1f5f9;color:#475569}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-field label{display:block;font-weight:850;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.05em;margin:0 0 6px}.input,.select,textarea{width:100%;border:1px solid var(--line);background:var(--panel2);color:var(--text);padding:12px 13px;border-radius:14px;outline:none;font-weight:650}textarea{min-height:90px;resize:vertical}.alert{margin-top:16px;border-radius:16px;padding:13px 15px;font-weight:800}.alert.success{background:#dcfce7;color:#166534}.alert.error,.alert.danger{background:#fee2e2;color:#991b1b}.alert.warning{background:#fef3c7;color:#92400e}.login-page{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:min(980px,100%);display:grid;grid-template-columns:1fr .9fr;background:var(--panel);border:1px solid var(--line);border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.login-hero{padding:42px;background:linear-gradient(135deg,#0f172a,#1e3a8a);color:#fff}.login-hero h1{font-size:40px;letter-spacing:-.06em;margin:18px 0}.login-hero p{color:#cbd5e1;line-height:1.7}.login-form{padding:42px}.login-form h2{margin:0 0 8px;font-size:26px;letter-spacing:-.04em}.muted{color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.product-card{border:1px solid var(--line);border-radius:20px;background:var(--panel);padding:14px}.product-img{height:108px;border-radius:16px;background:linear-gradient(135deg,#e0f2fe,#ede9fe);display:grid;place-items:center;font-size:32px;margin-bottom:12px}.product-card strong{display:block}.product-card span{color:var(--muted);font-size:13px}.pdv-layout{display:grid;grid-template-columns:1.35fr .85fr;gap:16px;margin-top:18px}.cart-line{display:grid;grid-template-columns:1fr 72px 92px 32px;gap:8px;align-items:center;border-bottom:1px solid var(--line);padding:10px 0}.cart-line:last-child{border-bottom:0}.total-box{background:linear-gradient(135deg,var(--brand),var(--brand2));color:white;border-radius:22px;padding:18px;margin:14px 0}.total-box small{display:block;opacity:.85}.total-box strong{font-size:34px;letter-spacing:-.05em}.chart-bars{display:grid;gap:10px}.bar{display:grid;grid-template-columns:120px 1fr 80px;gap:12px;align-items:center}.bar-track{height:12px;border-radius:99px;background:var(--panel2);overflow:hidden}.bar-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--brand),var(--brand2))}.mobile-bar{display:none;background:#0f172a;color:white;padding:13px 16px;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50}.mobile-menu-btn,.mobile-bar .theme-toggle{width:40px;height:40px;border:1px solid rgba(255,255,255,.18);background:transparent;color:#fff;border-radius:12px}.doc-type{width:44px;height:32px;border-radius:10px;display:grid;place-items:center;background:#eff6ff;color:#1d4ed8;font-weight:950;font-size:12px}.quick-actions{display:grid;gap:10px}.quick-action{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,var(--panel),var(--panel2));padding:14px}.quick-icon{width:42px;height:42px;border-radius:14px;background:#eff6ff;color:#1d4ed8;display:grid;place-items:center;font-weight:950;flex:0 0 auto}.quick-action span{display:block;color:var(--muted);font-size:13px;margin-top:2px}.actions{display:flex;gap:8px;flex-wrap:wrap}.tag{display:inline-flex;background:var(--panel2);border:1px solid var(--line);padding:5px 8px;border-radius:999px;font-size:12px;font-weight:800;color:var(--muted);margin:2px}.empty{padding:30px;text-align:center;color:var(--muted)}
@media(max-width:1180px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two,.pdv-layout{grid-template-columns:1fr}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:840px){.mobile-bar{display:flex}.app-shell{display:block}.sidebar{position:fixed;left:-310px;transition:.2s ease;top:0}.sidebar.open{left:0}.main{padding:14px}.topbar{position:static;flex-direction:column;align-items:flex-start;border-radius:20px}.top-actions{width:100%}.pill{flex:1;text-align:center}.grid,.grid.three,.form-grid,.form-grid.two{grid-template-columns:1fr}.login-card{grid-template-columns:1fr}.login-hero{padding:28px}.login-form{padding:28px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.product-grid{grid-template-columns:1fr}.section-head{flex-direction:column;align-items:flex-start}.actions,.btn{width:100%}.cart-line{grid-template-columns:1fr 62px 80px 30px}.topbar h1{font-size:22px}.bar{grid-template-columns:1fr}.login-hero h1{font-size:30px}}
/* v1.2.0 - Fotos, categorias e loja virtual */
.thumb-img,.thumb-placeholder{width:68px;height:68px;border-radius:16px;object-fit:cover;display:grid;place-items:center;border:1px solid var(--line);background:linear-gradient(135deg,#e0f2fe,#ede9fe);font-weight:950;color:#1d4ed8;font-size:12px;overflow:hidden}.thumb-img{display:block;background:var(--panel2)}.gallery-list{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.gallery-item{width:112px;border:1px solid var(--line);background:var(--panel2);border-radius:18px;padding:10px;display:grid;gap:8px;justify-items:center}.gallery-item .thumb-img,.gallery-item .thumb-placeholder{width:90px;height:90px}.store-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:stretch;margin-top:18px}.store-banner{background:linear-gradient(135deg,var(--brand),var(--brand2));color:white;border-radius:28px;padding:28px;box-shadow:var(--shadow);min-height:240px;display:flex;flex-direction:column;justify-content:center}.store-banner h2{font-size:38px;letter-spacing:-.06em;margin:0 0 10px}.store-banner p{font-size:16px;line-height:1.7;color:rgba(255,255,255,.86);max-width:680px}.store-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.store-category{border:1px solid var(--line);background:var(--panel);border-radius:22px;padding:14px;text-decoration:none;box-shadow:var(--shadow);min-width:0}.store-category .thumb-img,.store-category .thumb-placeholder{width:100%;height:118px;margin-bottom:10px}.store-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.store-product{border:1px solid var(--line);background:var(--panel);border-radius:24px;padding:14px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.store-product .thumb-img,.store-product .thumb-placeholder{width:100%;height:180px;border-radius:20px}.store-product strong{font-size:15px}.price{font-size:22px;font-weight:950;letter-spacing:-.04em}.store-tags{display:flex;gap:6px;flex-wrap:wrap}.store-tags .tag{margin:0}.api-box{background:var(--panel2);border:1px solid var(--line);border-radius:18px;padding:14px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;overflow:auto}.store-product .muted,.store-category .muted{line-height:1.4}@media(max-width:1180px){.store-products,.store-categories{grid-template-columns:repeat(2,minmax(0,1fr))}.store-hero{grid-template-columns:1fr}}@media(max-width:620px){.store-products,.store-categories{grid-template-columns:1fr}.store-banner h2{font-size:30px}.store-product .thumb-img,.store-product .thumb-placeholder{height:210px}}

/* v1.3.0 - PWA, checkout, push visual e botões coloridos */
.nav-badge{margin-left:auto;min-width:22px;height:22px;border-radius:999px;background:#ef4444;color:#fff;display:inline-grid;place-items:center;font-size:11px;font-weight:950;padding:0 7px}.notification-pill{cursor:pointer}.btn.success{background:linear-gradient(135deg,#16a34a,#22c55e)}.btn.warning{background:linear-gradient(135deg,#f59e0b,#f97316)}.btn.info{background:linear-gradient(135deg,#0891b2,#06b6d4)}.btn.purple{background:linear-gradient(135deg,#7c3aed,#a855f7)}.btn.orange{background:linear-gradient(135deg,#ea580c,#f97316)}.btn.whatsapp{background:linear-gradient(135deg,#16a34a,#15803d)}.btn.pix{background:linear-gradient(135deg,#0891b2,#14b8a6)}.btn.cardpay{background:linear-gradient(135deg,#9333ea,#2563eb)}.btn.money{background:linear-gradient(135deg,#65a30d,#16a34a)}.btn.delivery{background:linear-gradient(135deg,#f59e0b,#ef4444)}.btn.pickup{background:linear-gradient(135deg,#2563eb,#06b6d4)}.btn.cancel{background:linear-gradient(135deg,#dc2626,#991b1b)}.status-chip{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:950}.status-novo{background:#dbeafe;color:#1d4ed8}.status-confirmado{background:#dcfce7;color:#166534}.status-em_separacao{background:#ede9fe;color:#6d28d9}.status-saiu_entrega{background:#ffedd5;color:#9a3412}.status-aguardando_retirada{background:#cffafe;color:#0e7490}.status-finalizado{background:#dcfce7;color:#15803d}.status-cancelado{background:#fee2e2;color:#991b1b}.order-kanban{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.order-card{border:1px solid var(--line);background:var(--panel);border-radius:22px;padding:16px;box-shadow:var(--shadow);display:grid;gap:10px}.order-card.new{border-color:#93c5fd;box-shadow:0 18px 45px rgba(37,99,235,.14)}.order-code{font-size:18px;font-weight:950;letter-spacing:-.03em}.order-meta{display:grid;gap:5px;color:var(--muted);font-size:13px}.notification-toast{position:fixed;right:18px;bottom:18px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-left:6px solid var(--brand);border-radius:18px;padding:14px 16px;box-shadow:var(--shadow);z-index:200;max-width:360px;display:none}.notification-toast.show{display:block;animation:toastIn .25s ease}.notification-toast strong{display:block;margin-bottom:4px}.notification-toast p{margin:0;color:var(--muted);font-size:13px;line-height:1.4}@keyframes toastIn{from{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.address-box,.payment-box{border:1px solid var(--line);background:var(--panel2);border-radius:18px;padding:14px}.delivery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.colored-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.highlight-diff{background:linear-gradient(135deg,rgba(37,99,235,.09),rgba(124,58,237,.09));border:1px solid rgba(37,99,235,.18);border-radius:22px;padding:18px}.diff-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}.diff-list li{display:flex;gap:9px;align-items:flex-start;color:var(--muted);font-weight:700}.diff-list b{color:var(--text)}@media(max-width:1180px){.order-kanban{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-grid,.colored-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.order-kanban,.delivery-grid,.colored-action-grid{grid-template-columns:1fr}.notification-toast{left:12px;right:12px;bottom:12px}.notification-pill{width:100%}}


/* v1.3.1 - Orçamentos, impressão PDV 58/80/A4 e importação para venda */
.quote-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-top:18px}.quote-summary{position:sticky;top:112px}.print-actions{display:flex;gap:8px;flex-wrap:wrap}.btn.print58{background:linear-gradient(135deg,#2563eb,#06b6d4)}.btn.print80{background:linear-gradient(135deg,#7c3aed,#a855f7)}.btn.printa4{background:linear-gradient(135deg,#0f172a,#334155)}.btn.quote{background:linear-gradient(135deg,#f59e0b,#f97316)}.quote-chip{display:inline-flex;align-items:center;border-radius:999px;background:#fff7ed;color:#9a3412;padding:7px 10px;font-weight:950;font-size:12px}.quote-import-box{border:1px dashed var(--brand);background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(6,182,212,.07));padding:14px;border-radius:18px;margin-bottom:12px}.receipt-preview{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px;background:var(--panel2);border:1px solid var(--line);border-radius:18px;padding:14px;color:var(--text);white-space:pre-wrap}.operational-note{background:linear-gradient(135deg,rgba(22,163,74,.09),rgba(37,99,235,.08));border:1px solid rgba(22,163,74,.22);border-radius:18px;padding:14px;color:var(--muted);font-weight:700;line-height:1.45}@media(max-width:1100px){.quote-layout{grid-template-columns:1fr}.quote-summary{position:static}}@media print{body{background:white;color:#000}.sidebar,.topbar,.mobile-bar,.no-print,.actions,.print-actions{display:none!important}.app-shell{display:block}.main{padding:0}.card{box-shadow:none;border:0;border-radius:0}.table-wrap{border:0;overflow:visible}table{min-width:0}.print-area{display:block!important}.receipt-58{width:58mm}.receipt-80{width:80mm}.receipt-a4{width:190mm} }

/* v1.4.0 - Fiscal API interna/externa, logs e auditoria com IP */
.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.inline-actions{display:flex;gap:6px;flex-wrap:wrap}.btn.mini{padding:7px 9px;border-radius:10px;font-size:12px;box-shadow:none}.log-line{display:grid;grid-template-columns:140px 120px 1fr 150px 170px;gap:10px;align-items:start;border-bottom:1px solid var(--line);padding:11px 0}.log-line:last-child{border-bottom:0}.log-status{font-weight:950;border-radius:999px;padding:5px 8px;display:inline-flex;justify-content:center;font-size:12px}.log-status.success{background:#dcfce7;color:#166534}.log-status.warning{background:#fef3c7;color:#92400e}.log-status.error{background:#fee2e2;color:#991b1b}.log-status.info{background:#e0f2fe;color:#075985}.api-config-card{border-left:6px solid var(--brand)}.ip-chip{display:inline-flex;align-items:center;gap:6px;background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850;color:var(--muted)}@media(max-width:1180px){.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.log-line{grid-template-columns:1fr}}@media(max-width:640px){.grid.four{grid-template-columns:1fr}.inline-actions{display:grid;grid-template-columns:1fr}.btn.mini{width:100%}}

/* v1.5.0 - Backup e restauração automatizados */
.backup-panel{border-left:6px solid var(--success)}.restore-card{border-left:6px solid var(--warning)}.confirm-input{width:116px;padding:8px 9px;border-radius:10px;font-size:12px}.timeline.compact{display:grid;gap:10px}.timeline.compact .event{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start}.timeline.compact .dot{width:28px;height:28px;border-radius:999px;background:#e0f2fe;color:#075985;display:grid;place-items:center;font-weight:950}.timeline.compact p{margin:3px 0 0;color:var(--muted);font-size:13px}.btn.backup{background:linear-gradient(135deg,#16a34a,#0f766e)}.btn.restore{background:linear-gradient(135deg,#f59e0b,#dc2626)}@media(max-width:640px){.confirm-input{width:100%}.table .inline-actions form{width:100%}}


/* v1.6.0 - IA Produtos, precificação e sugestão tributária */
.ai-panel,.ai-config-card{border-left:6px solid var(--brand2)}.ai-warning-card{border-left:6px solid var(--warning)}.ai-result-card{border-left:6px solid var(--success)}.ai-product-card{display:grid;grid-template-columns:82px 1fr;gap:14px;align-items:center;border:1px solid var(--line);background:var(--panel2);border-radius:20px;padding:14px}.ai-product-card .thumb-img,.ai-product-card .thumb-placeholder{width:72px;height:72px}.ai-provider-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#ede9fe;color:#6d28d9;padding:7px 10px;font-size:12px;font-weight:950}.ai-api-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ai-api-card{background:var(--panel2);border:1px solid var(--line);border-radius:18px;padding:14px}.ai-api-card strong{display:block;margin-bottom:4px}.ai-api-card span{color:var(--muted);font-size:13px}.btn.ai{background:linear-gradient(135deg,#7c3aed,#2563eb)}@media(max-width:900px){.ai-api-grid{grid-template-columns:1fr}.ai-product-card{grid-template-columns:1fr}.ai-product-card .thumb-img,.ai-product-card .thumb-placeholder{width:100%;height:160px}}


/* v1.7.0 - Tema claro/escuro por usuário */
.theme-user-pill{border-color:rgba(37,99,235,.35);color:var(--text)}
.theme-preference-card{border-left:6px solid var(--brand2)}
.theme-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.theme-option{border:1px solid var(--line);background:var(--panel2);border-radius:22px;padding:18px;display:grid;gap:10px;cursor:pointer;transition:.2s ease}
.theme-option:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.theme-option input{width:20px;height:20px}.theme-option strong{font-size:17px}.theme-option span{color:var(--muted);font-size:13px;line-height:1.45}.theme-preview{height:120px;border-radius:18px;border:1px solid var(--line);padding:12px;display:grid;grid-template-columns:52px 1fr;gap:10px;overflow:hidden}.theme-preview.light{background:#f3f6fb;color:#0f172a}.theme-preview.dark{background:#0b1020;color:#e5e7eb;border-color:#1f2937}.theme-preview .mini-side{border-radius:12px;background:#0f172a}.theme-preview.dark .mini-side{background:#020617}.theme-preview .mini-main{display:grid;gap:8px}.theme-preview .mini-card{border-radius:12px;background:#fff}.theme-preview.dark .mini-card{background:#111827}.theme-preview .mini-line{height:10px;border-radius:999px;background:#cbd5e1}.theme-preview.dark .mini-line{background:#334155}.theme-saved-chip{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:var(--panel2);border:1px solid var(--line);padding:8px 12px;font-weight:900;color:var(--muted)}
@media(max-width:720px){.theme-options{grid-template-columns:1fr}}

/* v1.8.0 - Portal do Contador */
.accountant-panel{border-left:6px solid var(--info)}
.accountant-kpi:after{background:rgba(8,145,178,.10)}
.accountant-export-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.accountant-note{margin-top:14px;border:1px solid rgba(8,145,178,.22);background:linear-gradient(135deg,rgba(8,145,178,.08),rgba(37,99,235,.07));border-radius:18px;padding:14px;color:var(--muted);font-weight:750;line-height:1.45}
.mini-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mini-metrics>div{border:1px solid var(--line);background:var(--panel2);border-radius:18px;padding:14px}.mini-metrics strong{display:block;font-size:18px;letter-spacing:-.03em}.mini-metrics span{display:block;color:var(--muted);font-size:13px;margin-top:4px}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1180px){.accountant-export-grid,.form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.accountant-export-grid,.form-grid.four,.mini-metrics{grid-template-columns:1fr}.accountant-export-grid .btn{width:100%}}

/* v1.8.1 - PDV com cliente e endereço de entrega */
.pdv-customer-box,.delivery-sale-box{border:1px solid var(--line);background:var(--panel2);border-radius:20px;padding:14px;margin-bottom:12px}
.customer-preview{font-size:13px;line-height:1.45;margin-top:8px;border-top:1px dashed var(--line);padding-top:8px}
.btn.delivery{background:linear-gradient(135deg,#0891b2,#2563eb);box-shadow:none}
.delivery-sale-box textarea{min-height:74px}
@media(max-width:640px){.pdv-customer-box,.delivery-sale-box{padding:12px;border-radius:18px}.btn.delivery{width:100%}}

/* v1.8.2 - botão de notificações funcional */
.notification-pill[data-state="loading"]{opacity:.75;cursor:wait}
.notification-pill[data-state="enabled"]{background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;border-color:transparent}
.notification-pill[data-state="visual"]{background:linear-gradient(135deg,#0891b2,#06b6d4);color:#fff;border-color:transparent}
.notification-pill[data-state="denied"],.notification-pill[data-state="blocked"]{background:linear-gradient(135deg,#dc2626,#991b1b);color:#fff;border-color:transparent}


/* v1.8.4 - Botão Voltar Inteligente flutuante */
.floating-back-button{
  position:fixed;
  left:18px;
  bottom:18px;
  z-index:80;
  border:1px solid rgba(226,232,240,.85);
  background:linear-gradient(135deg,#0f172a,#2563eb);
  color:#fff;
  box-shadow:0 18px 42px rgba(15,23,42,.24);
  border-radius:999px;
  min-width:118px;
  height:50px;
  padding:0 16px 0 9px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  cursor:pointer;
  font-weight:950;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.floating-back-button:hover{transform:translateY(-2px);box-shadow:0 22px 50px rgba(15,23,42,.30)}
.floating-back-button:active{transform:translateY(0)}
.floating-back-icon{width:34px;height:34px;border-radius:999px;background:rgba(255,255,255,.16);display:grid;place-items:center;font-size:18px;line-height:1}
[data-theme="dark"] .floating-back-button{border-color:#1f2937;background:linear-gradient(135deg,#020617,#1d4ed8)}
@media(max-width:820px){
  .floating-back-button{left:12px;bottom:14px;min-width:52px;width:52px;padding:0;border-radius:18px}
  .floating-back-button strong{display:none}
  .floating-back-icon{background:transparent;font-size:22px}
}
@media print{.floating-back-button{display:none!important}}

/* v1.8.5 - Hotfix Relatórios Gerenciais: impressão corrigida */
.report-toolbar-card{border-left:6px solid var(--info)}
.report-print-header{display:none;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;border-bottom:2px solid #0f172a;padding-bottom:12px}
.report-print-header h2{margin:0;font-size:22px;color:#0f172a}.report-print-header p{margin:4px 0 0;color:#475569}.report-print-header span{font-size:12px;color:#475569;white-space:nowrap}.report-kpis .kpi .value{font-size:24px}.empty-state{border:1px dashed var(--line);background:var(--panel2);border-radius:16px;padding:16px;color:var(--muted);font-weight:750}.muted{color:var(--muted);margin:4px 0 0}.print-safe-bars .bar-fill{-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-table{min-width:0}.report-table td,.report-table th{white-space:normal}
@media print{
  *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  html,body{background:#fff!important;color:#000!important}
  .sidebar,.topbar,.mobile-bar,.no-print,.actions,.print-actions,.floating-back-button,.report-toolbar-card{display:none!important}
  .app-shell{display:block!important;min-height:auto!important}
  .main{padding:0!important;margin:0!important;width:100%!important}
  .report-print-area{display:block!important;width:100%!important}
  .report-print-header{display:flex!important}
  .grid,.grid.two,.grid.three,.grid.four{display:block!important;margin-top:0!important}
  .card{break-inside:avoid;page-break-inside:avoid;box-shadow:none!important;border:1px solid #cbd5e1!important;border-radius:0!important;margin:0 0 10px!important;padding:12px!important;background:#fff!important;color:#000!important}
  .kpi{display:inline-block!important;width:24%!important;vertical-align:top;min-height:90px}.kpi:after{display:none!important}.kpi .label,.kpi .hint{color:#334155!important}.kpi .value{color:#000!important;font-size:18px!important}
  .section-head{margin-bottom:8px!important}.section-head h2{font-size:15px!important;color:#000!important}.table-wrap{border:0!important;overflow:visible!important}.table{width:100%!important;min-width:0!important;background:#fff!important}.table th,.table td{border:1px solid #cbd5e1!important;color:#000!important;background:#fff!important;white-space:normal!important;font-size:11px!important;padding:6px!important}.table th{background:#e2e8f0!important}
  .chart-bars{display:block!important}.bar{break-inside:avoid;margin-bottom:7px}.bar strong,.bar span{color:#000!important}.bar-track{background:#e2e8f0!important;border:1px solid #cbd5e1}.bar-fill{background:#2563eb!important;min-height:10px!important}
  .badge{border:1px solid #94a3b8!important;background:#fff!important;color:#000!important}
  @page{size:A4;margin:12mm}
}

/* v1.8.5 - Hotfix Relatórios Gerenciais: impressão funcional */
.report-print-actions{justify-content:flex-start}.report-kpis .kpi .value{font-size:25px}.report-print-panel{border-left:6px solid var(--info)}
@media print{
  .report-print-actions,.no-print,.floating-back-button{display:none!important}
  .report-kpis{grid-template-columns:repeat(2,1fr)!important}
}


/* v1.8.6 - Relatório por formas de pagamento no PDV */
.pdv-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.btn.report-pay{background:linear-gradient(135deg,#0891b2,#16a34a);box-shadow:0 14px 24px rgba(8,145,178,.20)}
@media(max-width:820px){.pdv-head-actions{width:100%;justify-content:stretch}.pdv-head-actions .btn,.pdv-head-actions .input{width:100%;max-width:none!important}}
@media print{.btn.report-pay{display:none!important}}


/* v1.8.7 - Perfil, segmentos, unidades e balança */
.segment-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.segment-choice{display:grid;gap:6px;border:1px solid var(--line);background:linear-gradient(180deg,var(--panel),var(--panel2));border-radius:18px;padding:14px;cursor:pointer;min-height:128px}.segment-choice input{display:none}.segment-choice.active{outline:3px solid rgba(37,99,235,.25);border-color:var(--brand)}.segment-choice .seg-icon{font-size:28px}.segment-choice small{color:var(--muted);line-height:1.35}.unit-pills{display:flex;flex-wrap:wrap;gap:8px}.unit-pill{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--line);background:var(--panel2);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850;color:var(--muted)}.feature-list{display:grid;gap:12px}.feature-list>div{border:1px solid var(--line);background:var(--panel2);border-radius:16px;padding:12px}.feature-list strong{display:block}.feature-list span{display:block;color:var(--muted);font-size:13px;margin-top:4px}.scale-reader-box{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px dashed var(--brand);background:rgba(37,99,235,.06);border-radius:18px;padding:12px 14px;margin-bottom:14px}.scale-reader-box span{display:block;color:var(--muted);font-size:13px;margin-top:2px}.btn.scale{background:linear-gradient(135deg,#059669,#2563eb)}.product-dynamic-form .scale-config{display:none}@media(max-width:1180px){.segment-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scale-reader-box{align-items:stretch;flex-direction:column}}@media(max-width:760px){.segment-choice-grid{grid-template-columns:1fr}}

/* v1.8.8 - Login: visualizar/ocultar senha */
.password-input-wrap{position:relative;display:flex;align-items:center}
.password-input-wrap .password-input{padding-right:116px}
.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:12px;padding:8px 10px;display:inline-flex;align-items:center;gap:6px;font-weight:900;cursor:pointer;line-height:1;min-height:38px;box-shadow:0 8px 18px rgba(15,23,42,.06)}
.password-toggle:hover{color:var(--text);border-color:var(--brand)}
.password-toggle:focus-visible{outline:3px solid rgba(37,99,235,.22);outline-offset:2px}
.password-toggle[aria-pressed="true"]{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;border-color:transparent}
.password-eye{font-size:15px;line-height:1}.password-toggle-text{font-size:12px}
@media(max-width:480px){.password-input-wrap .password-input{padding-right:54px}.password-toggle{width:42px;height:38px;padding:0;justify-content:center}.password-toggle-text{display:none}}


/* v1.9.0 - Entrada de nota por XML */
.xml-entry-panel{border-left:6px solid var(--success)}
.xml-summary-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:10px;margin-top:12px}
.xml-summary-grid>div{border:1px solid var(--line);background:var(--panel2);border-radius:16px;padding:12px;min-width:0}
.xml-summary-grid strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:5px}
.xml-summary-grid span{display:block;font-weight:850;word-break:break-word}
.xml-items-table th,.xml-items-table td{vertical-align:top;white-space:normal}
.xml-items-table .input,.xml-items-table .select{min-width:120px}
.btn.success{background:linear-gradient(135deg,#16a34a,#059669);box-shadow:0 14px 24px rgba(22,163,74,.20)}
@media(max-width:1180px){.xml-summary-grid{grid-template-columns:1fr 1fr}.xml-items-table{min-width:1050px}}
@media(max-width:720px){.xml-summary-grid{grid-template-columns:1fr}}
@media print{.xml-entry-panel,.xml-items-table .input,.xml-items-table .select{border-color:#cbd5e1!important}}


/* v1.9.2 - Download SEFAZ / Distribuição DF-e */
.sefaz-panel{border-left:6px solid var(--info)}
.sefaz-key-box{border:1px dashed var(--brand);background:rgba(37,99,235,.07);border-radius:18px;padding:14px;margin-bottom:14px}
.sefaz-key-box strong{display:block;margin-bottom:10px}.sefaz-key-form{display:grid;grid-template-columns:1fr auto;gap:10px}.sefaz-table th,.sefaz-table td{vertical-align:top}.nf-key{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--muted);word-break:break-all}.sefaz-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.sefaz-actions form{display:inline}.btn.mini{padding:8px 10px;border-radius:10px;font-size:12px;box-shadow:none}.btn.danger{background:linear-gradient(135deg,#dc2626,#be123c);box-shadow:0 14px 24px rgba(220,38,38,.18)}.sefaz-manifest-actions{display:flex;gap:8px;flex-wrap:wrap}.sefaz-manifest-actions form{display:inline}.row-highlight{outline:3px solid rgba(37,99,235,.18);outline-offset:-3px}.feature-list.four{grid-template-columns:repeat(4,minmax(0,1fr))}.alert.info{border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;border-radius:16px;padding:12px;line-height:1.45;font-weight:750}.badge.access_key{background:#e0f2fe;color:#075985}.badge.nsu{background:#ede9fe;color:#5b21b6}.badge.resumo,.badge.pendente{background:#fef3c7;color:#92400e}.badge.xml_baixado,.badge.ciencia{background:#e0f2fe;color:#075985}.badge.enviado_entrada,.badge.confirmacao{background:#dcfce7;color:#166534}.badge.desconhecimento,.badge.nao_realizada{background:#fee2e2;color:#991b1b}.badge.ignorado{background:#e5e7eb;color:#475569}
@media(max-width:1180px){.feature-list.four{grid-template-columns:1fr 1fr}.sefaz-key-form{grid-template-columns:1fr}.sefaz-key-form .btn{width:100%}}
@media(max-width:720px){.feature-list.four{grid-template-columns:1fr}.sefaz-actions,.sefaz-manifest-actions{display:grid;grid-template-columns:1fr}.sefaz-actions .btn,.sefaz-manifest-actions .btn{width:100%}}
@media print{.sefaz-key-box,.sefaz-actions,.sefaz-manifest-actions{display:none!important}}


/* v1.9.3 - PIX Seguro e TEF no PDV */
.pix-modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.72);display:grid;place-items:center;z-index:9999;padding:18px}
.pix-modal-backdrop[hidden]{display:none!important}
.pix-modal-card{width:min(980px,96vw);max-height:94vh;overflow:auto;background:var(--card);border:1px solid var(--line);border-radius:26px;padding:20px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.pix-status-line{padding:12px 14px;border-radius:16px;font-weight:900;margin-bottom:14px;border:1px solid var(--line)}
.pix-status-line.warning{background:#fef3c7;color:#92400e}.pix-status-line.success{background:#dcfce7;color:#166534}.pix-status-line.danger{background:#fee2e2;color:#991b1b}.pix-status-line.info{background:#e0f2fe;color:#075985}
.pix-qr-layout{display:grid;grid-template-columns:340px 1fr;gap:18px;align-items:start}.pix-qr-box{display:grid;place-items:center;background:#fff;border-radius:22px;border:1px solid #e2e8f0;padding:18px;min-height:320px}.pix-qr-box svg{max-width:100%;height:auto}.pix-details-box{display:grid;gap:9px}.pix-details-box small{font-size:12px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.05em}.pix-details-box strong{font-size:34px;letter-spacing:-.04em}.pix-details-box textarea{min-height:118px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.pix-close-warning{margin-top:14px;padding:14px;border:1px solid #fbbf24;background:#fffbeb;color:#92400e;border-radius:18px}.pix-close-warning span{display:block;margin-top:4px}.btn.pix{background:linear-gradient(135deg,#0891b2,#16a34a)}.tef-status{border:1px solid var(--line);border-radius:14px;background:var(--soft);padding:12px 13px;font-weight:900;color:var(--muted)}
[data-theme="dark"] .pix-status-line.warning{background:rgba(245,158,11,.16);color:#fcd34d}[data-theme="dark"] .pix-status-line.success{background:rgba(22,163,74,.18);color:#86efac}[data-theme="dark"] .pix-status-line.danger{background:rgba(220,38,38,.18);color:#fca5a5}[data-theme="dark"] .pix-status-line.info{background:rgba(8,145,178,.18);color:#67e8f9}[data-theme="dark"] .pix-close-warning{background:rgba(245,158,11,.12);color:#fcd34d;border-color:#92400e}
@media(max-width:760px){.pix-qr-layout{grid-template-columns:1fr}.pix-qr-box{min-height:240px}.pix-details-box strong{font-size:26px}.pix-modal-card{padding:15px;border-radius:20px}}
@media print{.pix-modal-backdrop{display:none!important}}


/* v1.9.4 - Usuários e permissões por módulos */
.permission-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.permission-tab{border:1px solid var(--line);background:var(--panel2);padding:9px 12px;border-radius:999px;color:var(--muted);font-size:13px;font-weight:900;text-decoration:none}.permission-tab.active{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;border-color:transparent}.user-card-line{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,var(--panel),var(--panel2));padding:13px;margin-bottom:10px}.user-avatar{width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;display:grid;place-items:center;font-weight:950}.permission-matrix{min-width:980px}.permission-matrix th,.permission-matrix td{text-align:center}.permission-matrix th:first-child,.permission-matrix td:first-child{text-align:left;position:sticky;left:0;background:var(--panel);z-index:1}.perm-check{width:20px;height:20px;accent-color:#2563eb}.perm-state{width:26px;height:26px;border-radius:9px;display:inline-grid;place-items:center;font-size:13px;font-weight:950}.perm-state.on{background:#dcfce7;color:#166534}.perm-state.off{background:#fee2e2;color:#991b1b}.protected-user{border-left:6px solid var(--danger)}.permission-note{border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a8a;border-radius:16px;padding:13px 14px;font-weight:750;line-height:1.45}.profile-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:var(--panel2);border:1px solid var(--line);padding:6px 10px;font-size:12px;font-weight:900;color:var(--muted)}@media(max-width:840px){.user-card-line{grid-template-columns:46px 1fr}.user-card-line .actions{grid-column:1/-1}.permission-tabs{display:grid;grid-template-columns:1fr}.permission-tab{text-align:center}}


/* v1.9.5 - Cartazes, encartes e etiquetas de gôndola */
.marketing-layout{align-items:start}.marketing-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.marketing-tabs span{border:1px solid var(--line);background:var(--panel2);padding:9px 12px;border-radius:999px;font-weight:900;color:var(--muted);font-size:13px}.marketing-tabs span.active{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff;border-color:transparent}.marketing-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.poster-preview{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--panel);min-height:430px;position:relative}.poster-preview-head{background:linear-gradient(135deg,#dc2626,#f59e0b);color:#fff;text-align:center;padding:18px}.poster-preview-head strong{display:block;font-size:38px;letter-spacing:-.06em;line-height:.95}.poster-preview-body{text-align:center;padding:18px}.poster-preview-body .thumb-placeholder{width:150px;height:110px;border-radius:22px;margin:0 auto 12px;font-size:42px}.poster-preview-body del{display:block;color:var(--muted);font-weight:800;font-size:18px}.poster-preview-body strong{display:block;color:#dc2626;font-size:46px;font-weight:950;letter-spacing:-.08em}.poster-preview-foot{position:absolute;left:0;right:0;bottom:0;background:#0f172a;color:#fff;padding:12px;text-align:center;font-weight:900}.label-preview-stack{display:grid;gap:12px;align-content:start}.thermal-label-preview{border:2px dashed #94a3b8;border-radius:18px;background:#fff;color:#0f172a;padding:14px;min-height:104px;max-width:330px}.thermal-label-preview.wide{max-width:430px}.thermal-label-preview b{display:block}.thermal-label-preview span{display:block;color:#64748b;font-size:12px;margin-top:3px}.thermal-label-preview strong{display:block;font-size:30px;letter-spacing:-.06em;margin-top:5px}.thermal-label-preview i{display:block;height:28px;margin-top:6px;border-radius:4px;background:repeating-linear-gradient(90deg,#111 0 2px,#fff 2px 5px,#111 5px 6px,#fff 6px 10px)}.badge.promo{background:#fee2e2;color:#991b1b}.badge.info{background:#e0f2fe;color:#075985}.badge.ok{background:#dcfce7;color:#166534}@media(max-width:1080px){.marketing-preview-grid{grid-template-columns:1fr}}@media(max-width:640px){.marketing-tabs{display:grid;grid-template-columns:1fr 1fr}.marketing-preview-grid{grid-template-columns:1fr}.poster-preview{min-height:390px}.poster-preview-body strong{font-size:40px}.thermal-label-preview,.thermal-label-preview.wide{max-width:100%}}


/* v1.9.5.1 - Botão Sair no topo */
.top-logout-button{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  background:linear-gradient(135deg,#dc2626,#991b1b)!important;
  color:#fff!important;border-color:rgba(220,38,38,.35)!important;text-decoration:none;
  box-shadow:0 12px 24px rgba(220,38,38,.18);
}
.top-logout-button:hover{filter:brightness(1.04);transform:translateY(-1px)}
.mobile-bar-actions{display:flex;align-items:center;gap:8px}
.mobile-logout-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:5px;
  min-height:40px;padding:0 12px;border-radius:12px;
  border:1px solid rgba(255,255,255,.18);background:rgba(220,38,38,.92);
  color:#fff;text-decoration:none;font-weight:900;font-size:13px;
}
@media(max-width:840px){.top-logout-button{width:100%;flex:1 0 100%;}.mobile-bar strong{max-width:46vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media print{.top-logout-button,.mobile-logout-btn{display:none!important}}
