:root{--ink:#17251f;--muted:#6b756f;--paper:#f4f4ef;--card:#fff;--green:#174f3b;--lime:#cddc39;--line:#dde2dd;--danger:#ad343e}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper)}button,input,select{font:inherit}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top right,#2b7258,#143c30 46%,#10241d)}.login-card{width:min(420px,100%);background:#fff;padding:34px;border-radius:24px;box-shadow:0 24px 60px #07150f66}.brand-mark{width:44px;height:44px;border-radius:13px;background:var(--lime);color:#1d2a18;display:grid;place-items:center;font-weight:900}.login-card h1{margin:20px 0 4px}.login-card p{color:var(--muted);margin:0 0 24px}.login-card label,#fields label{display:grid;gap:7px;margin:14px 0;font-weight:650;font-size:14px}.login-card input,#fields input,#fields select{border:1px solid var(--line);border-radius:10px;padding:12px;background:white}.login-card button,.actions button,.primary{border:0;border-radius:10px;background:var(--green);color:white;padding:12px 18px;font-weight:700;cursor:pointer}.login-card>button{width:100%;margin-top:10px}.login-card small{display:block;color:var(--muted);margin-top:16px;line-height:1.45}.error{color:var(--danger);margin-top:10px;font-size:14px}.app{min-height:100vh;display:grid;grid-template-columns:260px 1fr}aside{background:#102d24;color:#fff;padding:24px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 22px}.brand span{display:grid}.brand small{color:#9eb7ae;margin-top:2px}nav{display:grid;gap:3px;overflow:auto}.nav-item{border:0;background:transparent;color:#cbd9d4;text-align:left;padding:11px 12px;border-radius:9px;cursor:pointer}.nav-item:hover,.nav-item.active{background:#24513f;color:white}.logout{margin-top:auto;border:1px solid #41695b;background:transparent;color:white;padding:10px;border-radius:9px}main{min-width:0}header{height:88px;display:flex;align-items:center;padding:0 32px;background:#ffffffcc;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:4;backdrop-filter:blur(12px)}header h1{font-size:24px;margin:0}header p{margin:3px 0 0;color:var(--muted);font-size:14px}.user{margin-left:auto;text-align:right;display:grid}.user small{color:var(--muted)}#menu{display:none}.content-pad,#content{padding:28px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:16px}.kpi,.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px}.kpi small{color:var(--muted)}.kpi strong{display:block;font-size:27px;margin-top:10px}.kpi.alert strong{color:var(--danger)}.grid-2{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-top:18px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.panel h2{font-size:17px;margin:0}.primary{padding:9px 13px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:11px;border-bottom:1px solid var(--line)}td{padding:13px 11px;border-bottom:1px solid #edf0ed}.badge{padding:5px 8px;border-radius:99px;background:#edf5ef;font-size:12px;white-space:nowrap}.badge.bad{background:#fdebec;color:#9d202c}.empty{text-align:center;padding:42px 20px;color:var(--muted)}.notice{background:#fff9db;border:1px solid #f0df8d;border-radius:12px;padding:13px;margin-bottom:18px}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.module-card{background:white;border:1px solid var(--line);padding:18px;border-radius:14px}.module-card small{color:var(--muted)}dialog{border:0;border-radius:18px;padding:0;width:min(560px,calc(100% - 32px));box-shadow:0 30px 90px #0005}dialog::backdrop{background:#0a1712aa}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-head h2{margin:0}.modal-head button{border:0;background:transparent;font-size:28px}#modal-form{padding:24px}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.actions .secondary{background:#e9ece9;color:var(--ink)}.recipe-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px}.audit{display:grid;gap:10px}.audit div{border-left:3px solid var(--lime);padding-left:12px}.audit small{color:var(--muted)}
.table-action{border:1px solid var(--line);background:#fff;color:var(--green);border-radius:8px;padding:7px 10px;font-weight:700;white-space:nowrap;cursor:pointer}.recipe-modal{width:min(980px,calc(100% - 32px))}.recipe-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}.recipe-section-head{display:flex;align-items:center;justify-content:space-between;margin:20px 0 8px}.recipe-section-head h3{margin:0}.recipe-section-head .secondary{border:1px solid var(--green);background:white;color:var(--green);padding:9px 12px;border-radius:9px;font-weight:700;cursor:pointer}.recipe-item{display:grid;grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) 90px minmax(140px,1fr) 38px;gap:10px;align-items:end;padding:10px 0;border-bottom:1px solid var(--line)}.recipe-item label{margin:0!important}.ingredient-cost{display:grid;gap:8px;padding-bottom:11px}.ingredient-cost small{color:var(--muted)}.ingredient-cost strong{white-space:nowrap}.invalid-unit .ingredient-cost strong{color:var(--danger)}.remove-ingredient{margin-bottom:8px;border:0;border-radius:8px;background:#fdebec;color:var(--danger);height:38px;font-size:22px;cursor:pointer}.recipe-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.recipe-summary>div{background:#f4f7f4;border:1px solid var(--line);border-radius:11px;padding:12px}.recipe-summary small{display:block;color:var(--muted);margin-bottom:7px}.recipe-summary strong{font-size:17px}
.production-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:0 12px}.production-main label:nth-child(4),.production-main label:nth-child(5){grid-column:span 2}.production-preview{margin-top:18px}.production-preview h3{font-size:16px;margin:0 0 10px}.production-totals{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px}.production-totals>div,.production-detail>div{background:#f4f7f4;border:1px solid var(--line);border-radius:11px;padding:12px}.production-totals small,.production-detail small{display:block;color:var(--muted);margin-bottom:6px}.production-totals strong{font-size:18px}.production-warning{margin-top:12px;padding:12px;background:#fdebec;border:1px solid #efc7ca;border-radius:10px;color:var(--danger);font-weight:650}.shortage-row{background:#fff5f5}.production-detail{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.production-detail strong{display:block}.reverse-production{margin-top:18px;border:1px solid var(--danger);background:#fff;color:var(--danger);border-radius:9px;padding:10px 14px;font-weight:700;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}
.loss-kpis{margin-bottom:18px}.top-loss-items{font-size:15px!important;line-height:1.35}.losses-history{margin-top:0}.loss-main{display:grid;grid-template-columns:repeat(3,1fr);gap:0 12px}.loss-main>#loss-item-fields{display:contents}.loss-main>label:last-of-type{grid-column:span 2}.loss-preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.loss-preview-grid>div{background:#f4f7f4;border:1px solid var(--line);border-radius:11px;padding:12px}.loss-preview-grid small{display:block;color:var(--muted);margin-bottom:6px}.loss-preview-grid strong{font-size:17px}
.inventory-modal{width:min(1200px,calc(100% - 24px))}.inventory-table input,.inventory-table select{min-width:90px;border:1px solid var(--line);border-radius:8px;padding:9px;background:white}.inventory-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:16px}.inventory-summary>div{background:#f4f7f4;border:1px solid var(--line);border-radius:11px;padding:12px}.inventory-summary small{display:block;color:var(--muted);margin-bottom:6px}.inventory-summary strong{font-size:18px}.explicit-confirm{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;gap:10px!important;padding:14px;margin-top:16px!important;background:#fff9db;border:1px solid #f0df8d;border-radius:10px}.explicit-confirm input{margin-top:2px;width:18px;height:18px}
.product-filters{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:10px;margin-bottom:16px}.product-filters label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.product-filters input,.product-filters select{border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff;color:var(--ink)}.product-main{display:grid;grid-template-columns:repeat(3,1fr);gap:0 12px}.product-main label:last-child{grid-column:span 2}.product-days{margin:14px 0}.product-days>strong{display:block;margin-bottom:8px}.product-days>div{display:flex;flex-wrap:wrap;gap:8px}.product-days label{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;padding:8px 10px;margin:0!important;background:#f4f7f4;border:1px solid var(--line);border-radius:8px}.product-days input{width:16px;height:16px}.row-actions{display:flex;gap:6px}
@media(max-width:900px){.app{grid-template-columns:1fr}aside{position:fixed;z-index:10;width:260px;transform:translateX(-100%);transition:.2s}aside.open{transform:none}#menu{display:block;border:0;background:transparent;font-size:24px;margin-right:14px}.kpis{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}.module-grid{grid-template-columns:repeat(2,1fr)}.recipe-item{grid-template-columns:2fr 1fr 90px}.ingredient-cost{grid-column:1/3}.remove-ingredient{grid-column:3}.recipe-summary{grid-template-columns:repeat(2,1fr)}.production-main,.loss-main,.product-main{grid-template-columns:1fr 1fr}.production-main label,.loss-main>label,.product-main label{grid-column:auto!important}.production-detail,.loss-preview-grid{grid-template-columns:repeat(2,1fr)}.inventory-summary{grid-template-columns:repeat(3,1fr)}.product-filters{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){header{padding:0 16px}.user{display:none}#content{padding:16px}.kpis,.module-grid{grid-template-columns:1fr}.kpi{padding:16px}.recipe-row,.recipe-main,.recipe-item,.recipe-summary,.production-main,.production-totals,.production-detail,.loss-main,.loss-preview-grid,.inventory-summary,.product-main,.product-filters{grid-template-columns:1fr}.ingredient-cost,.remove-ingredient{grid-column:auto}.remove-ingredient{width:38px}}

/* Identidade oficial MR Cut Gastrobarber */
:root{--ink:#171717;--muted:#686868;--paper:#f4f3ef;--card:#fff;--green:#b88616;--lime:#d4a12c;--gold:#d4a12c;--orange:#f97316;--line:#dedbd2;--danger:#a52727;--success:#17643a;--sidebar:#111}
body{background:linear-gradient(135deg,#f7f6f2 0%,#efede7 100%);color:var(--ink)}
.login-shell{background:radial-gradient(circle at 75% 20%,#4b3711 0,#1b1b1b 32%,#050505 78%)}
.login-card{border:1px solid #d4a12c66;box-shadow:0 28px 80px #0009;padding-top:22px}
.brand-logo{display:block;object-fit:contain;background:#050505;border-radius:12px}
.brand-logo-login{width:min(280px,85%);height:150px;margin:12px auto 18px}
.brand-logo-sidebar{width:78px;height:56px;flex:0 0 78px;border:1px solid #d4a12c55}
aside{background:linear-gradient(180deg,var(--sidebar),#080808);border-right:1px solid #d4a12c55}
.brand{border-bottom:1px solid #d4a12c44;margin-bottom:12px;padding-bottom:18px}.brand small{color:#c8c2b4}.brand strong{color:#fff}
.nav-item{color:#ddd8cc;border-left:3px solid transparent}.nav-item:hover,.nav-item.active{background:#d4a12c1f;color:#fff;border-left-color:var(--gold)}
.logout{border-color:#d4a12c88;color:#fff}.logout:hover{background:#d4a12c22}
header{background:#fffffff2;border-bottom-color:#d9d4c8;box-shadow:0 3px 16px #0000000a}
.kpi,.panel,.module-card{box-shadow:0 8px 28px #17120a0d;border-color:#ddd8cd}.kpi{border-top:3px solid var(--gold)}
.primary,.login-card button:not(.secondary),.actions button:not(.secondary){background:linear-gradient(135deg,#a6750c,#d4a12c);color:#fff;text-shadow:0 1px 1px #0005}.primary:hover,.login-card button:not(.secondary):hover{filter:brightness(.92)}
.secondary,.table-action{border:1px solid #b58a2c!important;background:#fff!important;color:#6e4c05!important}.table-action:hover{background:#fff8e6!important}
input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #f59e0b66;outline-offset:2px;border-color:#b88616!important}
th{color:#5f5747;background:#faf8f2}tbody tr:hover{background:#fffaf0}.badge{background:#f2ead3;color:#5f4309;border:1px solid #ddc27a}.badge:before{content:'●';font-size:8px;margin-right:5px}.badge.bad:before,.error:before,.production-warning:before{content:'⚠';font-size:12px;margin-right:5px}
.notice{background:#fff8df;border-color:#e4c975;color:#4d3a11}.error{color:var(--danger);font-weight:650}.backup-ok,.status-approved{color:var(--success);font-weight:700}.backup-ok:before,.status-approved:before{content:'✓ ';}.backup-alert,.status-rejected{color:var(--danger);font-weight:700}.backup-alert:before,.status-rejected:before{content:'⚠ ';}
dialog{border:1px solid #d4a12c88}dialog::backdrop{background:#050505cc}
#ai-messages{display:grid;gap:10px;max-height:48vh;overflow:auto;padding-right:4px}#ai-messages .notice{border-left:4px solid var(--gold)}
.branding-preview{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:16px;margin:14px 0}.branding-preview figure{margin:0;padding:14px;background:#111;border-radius:14px;color:#fff}.branding-preview img{width:100%;height:150px;object-fit:contain}.branding-preview figcaption{margin-top:8px;font-size:12px;color:#d7cfbd}.branding-upload{display:grid;grid-template-columns:1fr 1fr;gap:14px}.branding-upload label{display:grid;gap:7px;font-weight:700}.branding-upload input[type=file]{padding:12px;border:1px dashed #b58a2c;border-radius:10px;background:#fff}
@media(max-width:560px){.brand-logo-sidebar{width:68px;height:50px}.branding-preview,.branding-upload{grid-template-columns:1fr}.login-card{padding:22px}.brand-logo-login{height:120px}}

/* Prévia operacional do Assistente IA */
.ai-preview-card{display:grid;gap:16px;overflow:hidden}.ai-preview-card header{display:flex;flex-direction:column;gap:4px;padding-bottom:12px;border-bottom:1px solid #ddc27a}.ai-preview-card header strong{font-size:17px}.ai-preview-card header span{color:#6b6253}.ai-preview-section{background:#fff;border:1px solid #eadcb8;border-radius:12px;padding:14px}.ai-preview-section h4{margin:0 0 12px;color:#3c2b08}.ai-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-preview-field{display:grid;gap:6px;min-width:0}.ai-preview-field>span{font-size:12px;font-weight:750;color:#5f5747}.ai-preview-field input,.ai-preview-field textarea{width:100%;min-width:0}.ai-preview-field.uncertain{background:#fff4d6;border:2px solid #c8922e;border-radius:10px;padding:9px}.ai-preview-field.uncertain strong{color:#7c4a03;font-size:11px}.ai-warning{padding:12px;border:1px solid #c8922e;border-left:5px solid #c8922e;border-radius:10px;background:#fff4d6;color:#4d3300}.ai-warning ul{margin:8px 0 0;padding-left:20px}.ai-preview-actions{display:flex;flex-wrap:wrap;gap:10px;padding-top:4px}.ai-summary-list{display:grid;gap:8px}.ai-summary-list>div{display:grid;grid-template-columns:minmax(140px,.4fr) 1fr;gap:10px;border-bottom:1px solid #eadfca;padding:7px 0}.ai-summary-list dt{font-weight:750}.ai-summary-list dd{margin:0;min-width:0;overflow-wrap:anywhere}.ai-result{overflow-wrap:anywhere}.muted{color:#776f62;font-style:italic}
@media(max-width:700px){.ai-preview-grid{grid-template-columns:1fr}.ai-summary-list>div{grid-template-columns:1fr}.ai-preview-actions{display:grid}.ai-preview-actions button{width:100%}}

/* Sistema visual contemporâneo — ERP MR Cut */
:root{--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--shadow-sm:0 2px 10px rgba(22,18,10,.055);--shadow-md:0 12px 34px rgba(22,18,10,.09);--shadow-lg:0 28px 70px rgba(0,0,0,.18)}
html{scroll-behavior:smooth}body{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}button:active:not(:disabled){transform:translateY(1px)}
.app{grid-template-columns:288px minmax(0,1fr);transition:grid-template-columns .22s ease}.app main{background:linear-gradient(145deg,#f8f7f3 0%,#f1efe9 58%,#f8f7f3 100%);min-height:100vh}aside{width:288px;padding:18px 14px 16px;transition:width .22s ease,transform .22s ease;box-shadow:8px 0 30px rgba(0,0,0,.12);z-index:20}.brand{position:relative;min-height:72px;margin:0 2px 12px;padding:4px 38px 16px 4px}.brand-logo-sidebar{width:72px;height:52px}.brand span strong{font-size:16px;letter-spacing:.01em}.brand span small{font-size:11px;text-transform:uppercase;letter-spacing:.1em}.sidebar-toggle{position:absolute;right:0;top:14px;width:30px;height:30px;display:grid;place-items:center;border:1px solid #d4a12c55;border-radius:9px;background:#ffffff0a;color:#e8ca79;font-size:22px;cursor:pointer}.sidebar-toggle:hover{background:#d4a12c25;border-color:#d4a12c}.nav-scrim{display:none}
#nav{display:block;overflow-y:auto;overflow-x:hidden;padding:2px 2px 14px;scrollbar-width:thin;scrollbar-color:#6f561e transparent}.nav-group{margin:4px 0}.nav-group-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;color:#a9a292;padding:9px 10px 7px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.085em;cursor:pointer}.nav-group-toggle:hover,.nav-group.active>.nav-group-toggle{color:#e6c66f}.nav-chevron{font-size:16px;transition:transform .18s ease}.nav-group.open .nav-chevron{transform:rotate(180deg)}.nav-group-items{display:none;gap:3px}.nav-group.open .nav-group-items{display:grid}.nav-item{width:100%;display:flex;align-items:center;gap:11px;min-height:42px;padding:9px 11px;border-left:0;border-radius:11px;font-size:13px;font-weight:620}.nav-item:hover{background:#ffffff0d;transform:translateX(2px)}.nav-item.active{background:linear-gradient(90deg,#d4a12c32,#d4a12c10);box-shadow:inset 3px 0 #d4a12c;color:#fff}.nav-icon{width:24px;height:24px;flex:0 0 24px;display:grid;place-items:center;border-radius:7px;background:#ffffff0b;color:#d8b85e;font-size:15px}.nav-item.active .nav-icon{background:#d4a12c;color:#181306}.logout{display:flex;align-items:center;justify-content:center;gap:9px;min-height:42px;border-radius:11px;cursor:pointer}
.sidebar-collapsed .app{grid-template-columns:86px minmax(0,1fr)}.sidebar-collapsed aside{width:86px}.sidebar-collapsed .brand{padding-right:0;justify-content:center}.sidebar-collapsed .brand-logo-sidebar{width:54px;height:46px}.sidebar-collapsed .brand span,.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-group-toggle{display:none}.sidebar-collapsed .sidebar-toggle{right:-2px;top:52px}.sidebar-collapsed .nav-group-items{display:grid}.sidebar-collapsed .nav-item{justify-content:center;padding:9px}.sidebar-collapsed .nav-icon{width:30px;height:30px;flex-basis:30px}.sidebar-collapsed .logout{padding:8px}
main>.environment-banner{position:sticky;top:0;z-index:11;padding:5px 12px;font-size:10px}main>header{top:25px;height:78px;padding:0 clamp(18px,3vw,40px);background:rgba(255,255,255,.88);box-shadow:0 8px 28px rgba(24,20,12,.055)}header h1{font-size:clamp(21px,2vw,27px);font-weight:780;letter-spacing:-.025em}header p{font-size:13px}.user{padding:8px 12px;border:1px solid #e5e0d5;border-radius:12px;background:#fff;box-shadow:var(--shadow-sm)}.user span{font-weight:720}.user small{font-size:11px}
#content{width:min(100%,1660px);margin:0 auto;padding:clamp(18px,2.5vw,36px)}.kpis{gap:18px}.kpi,.panel,.module-card{border:1px solid rgba(190,179,151,.42);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:rgba(255,255,255,.96)}.panel{padding:clamp(17px,2vw,24px)}.panel:hover,.module-card:hover{box-shadow:var(--shadow-md)}.kpi{position:relative;overflow:hidden;padding:21px;border-top:0}.kpi:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(#e2bd56,#a6750c)}.kpi small{font-weight:650;letter-spacing:.01em}.kpi strong{font-size:clamp(23px,2vw,30px);letter-spacing:-.035em}.panel-head{gap:14px}.panel h2{font-size:18px;font-weight:760;letter-spacing:-.015em}.grid-2{gap:20px}.module-card{transition:transform .18s ease,box-shadow .18s ease}.module-card:hover{transform:translateY(-2px)}
input,select,textarea,#fields input,#fields select,.product-filters input,.product-filters select,.inventory-table input,.inventory-table select{width:100%;min-height:44px;border:1px solid #d8d3c8;border-radius:11px;padding:10px 12px;background:#fff;color:#191919;box-shadow:inset 0 1px 2px rgba(0,0,0,.025);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}textarea{resize:vertical}input:hover,select:hover,textarea:hover{border-color:#b9aa86}input:focus,select:focus,textarea:focus{outline:none!important;border-color:#b88616!important;box-shadow:0 0 0 4px rgba(212,161,44,.16)}label{color:#39352d}.login-card label,#fields label{font-size:13px}.primary,.login-card button,.actions button,.secondary,.table-action{min-height:40px;border-radius:11px;padding:9px 15px;font-weight:730;box-shadow:0 2px 6px rgba(35,25,5,.08)}.primary:hover,.actions button:hover{box-shadow:0 7px 18px rgba(166,117,12,.22);transform:translateY(-1px)}
.table-wrap{border:1px solid #e2ddd1;border-radius:14px;background:#fff;overflow:auto;box-shadow:inset 0 1px rgba(255,255,255,.8)}table{border-collapse:separate;border-spacing:0}th{position:sticky;top:0;z-index:1;padding:12px 13px;background:#f8f6f0;border-bottom:1px solid #ded7c8;font-size:11px;letter-spacing:.065em}td{padding:14px 13px;border-bottom:1px solid #eeeae1;vertical-align:middle}tbody tr{transition:background .15s ease}tbody tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;min-height:27px;padding:4px 9px;font-weight:700}.empty{background:linear-gradient(145deg,#fbfaf7,#f5f2ea);border:1px dashed #d4c7a8;border-radius:14px}
.notice{border-radius:14px;padding:14px 16px}.error{padding:0 2px}.actions{position:sticky;bottom:0;padding-top:16px;background:linear-gradient(transparent,#fff 28%)}dialog{border-radius:22px;box-shadow:var(--shadow-lg);max-height:min(90vh,940px);overflow:auto}.modal-head{position:sticky;top:-24px;z-index:2;margin:-24px -24px 16px;padding:18px 24px;background:rgba(255,255,255,.94);border-bottom:1px solid #e8e2d7;backdrop-filter:blur(14px)}.modal-head button{width:38px;height:38px;display:grid;place-items:center;border-radius:10px}.modal-head button:hover{background:#f2eee5}
#ai-command{min-height:126px;padding:16px 18px;border-radius:16px;font-size:16px;line-height:1.55;background:#fff;box-shadow:inset 0 1px 3px rgba(0,0,0,.035)}#ai-document{padding:12px;border:1px dashed #b99948;background:#fffaf0}.row-actions{align-items:center;gap:10px}.row-actions #ai-send{min-width:128px}.row-actions #ai-voice{min-width:180px}#ai-messages{max-height:56vh;gap:14px;padding:4px 4px 12px}#ai-messages>.notice{border-left:0;border:1px solid #e3d4ad;box-shadow:var(--shadow-sm);background:#fff}.ai-result{border-left:4px solid var(--gold)!important}.ai-preview-card{padding:20px}.ai-preview-section{border-radius:15px;background:#fdfcf9}.ai-preview-actions{position:sticky;bottom:-14px;z-index:2;margin:4px -4px -4px;padding:14px 4px 4px;background:linear-gradient(transparent,#fff 30%)}
@media(max-width:1100px){.app{grid-template-columns:250px minmax(0,1fr)}aside{width:250px}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.app,.sidebar-collapsed .app{grid-template-columns:1fr}aside,.sidebar-collapsed aside{position:fixed;width:min(86vw,320px);padding:18px 14px;transform:translateX(-105%);box-shadow:18px 0 60px rgba(0,0,0,.35)}aside.open{transform:translateX(0)}.sidebar-collapsed .brand{padding:4px 38px 16px 4px;justify-content:flex-start}.sidebar-collapsed .brand-logo-sidebar{width:72px;height:52px}.sidebar-collapsed .brand span,.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-group-toggle{display:flex}.sidebar-collapsed .brand span{display:grid}.sidebar-collapsed .nav-group-toggle{display:flex}.sidebar-collapsed .nav-group-items{display:none}.sidebar-collapsed .nav-group.open .nav-group-items{display:grid}.sidebar-collapsed .nav-item{justify-content:flex-start;padding:9px 11px}.sidebar-collapsed .nav-icon{width:24px;height:24px;flex-basis:24px}.sidebar-toggle{display:none}.nav-scrim{position:fixed;inset:0;z-index:19;border:0;background:rgba(0,0,0,.52);backdrop-filter:blur(2px)}.nav-scrim.open{display:block}#menu{width:42px;height:42px;display:grid;place-items:center;border:1px solid #ded7c8;border-radius:11px;background:#fff;color:#2b261b}.product-filters{gap:12px}}
@media(max-width:640px){main>.environment-banner{position:relative}main>header{top:0;height:70px;padding:0 14px}header h1{font-size:19px}header p{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#content{padding:14px}.kpis,.module-grid,.grid-2{grid-template-columns:1fr;gap:12px}.panel,.kpi{border-radius:15px;padding:15px}.panel-head{align-items:flex-start;flex-direction:column}.panel-head .primary{width:100%}.table-wrap{border:0;background:transparent;overflow:visible;box-shadow:none}table,tbody,tr,td{display:block;width:100%}thead{display:none}tbody{display:grid;gap:12px}tbody tr{display:grid;padding:8px 13px;background:#fff;border:1px solid #e2ddd1;border-radius:14px;box-shadow:var(--shadow-sm)}td{display:grid;grid-template-columns:minmax(105px,38%) minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid #eee9de;text-align:right;overflow-wrap:anywhere}td:before{content:attr(data-label);text-align:left;color:#746c5c;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.045em}td:last-child{border-bottom:0}.product-filters{grid-template-columns:1fr}.row-actions{display:grid}.row-actions button{width:100%}.ai-preview-card{padding:14px}.actions{display:grid}.actions button{width:100%}.login-shell{padding:12px}.login-card{border-radius:18px}.user{display:none}}
.permission-modal{width:min(1040px,calc(100% - 28px));max-height:92vh}.permission-modal #modal-form{max-height:92vh;overflow:auto}.permission-toolbar{position:sticky;top:-24px;z-index:3;margin:0 -4px 14px;padding:12px 14px;border:1px solid var(--gold-line);border-radius:12px;background:var(--card);box-shadow:var(--shadow-sm);color:var(--gold-dark)}.permission-categories{display:grid;gap:12px}.permission-category{border:1px solid var(--line);border-radius:14px;background:var(--card);overflow:hidden}.permission-category>summary{display:flex;justify-content:space-between;gap:14px;align-items:center;min-height:52px;padding:14px 16px;cursor:pointer;font-weight:800;list-style:none}.permission-category>summary::-webkit-details-marker{display:none}.permission-category>summary:after{content:'⌄';font-size:18px;color:var(--gold-dark);transition:transform .2s}.permission-category[open]>summary:after{transform:rotate(180deg)}.permission-category>summary small{margin-left:auto;color:var(--muted);font-weight:650}.permission-category-actions{display:flex;gap:8px;padding:0 16px 12px;border-bottom:1px solid var(--line)}.permission-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}.permission-module{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.permission-module h4{margin:0 0 10px;font-size:14px}.permission-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.permission-option{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px!important;min-height:46px;margin:0!important;padding:9px 10px;border:1px solid transparent;border-radius:10px;background:var(--card);cursor:pointer;font-weight:650!important}.permission-option:hover{border-color:var(--gold)}.permission-option input{width:20px;height:20px;margin:0;accent-color:var(--gold-dark);flex:0 0 auto}.permission-option span{display:grid;gap:2px}.permission-option small{font-size:11px;color:var(--danger)}.permission-option.sensitive{border-color:#e9c9c9;background:#fff8f7}.permission-reason{margin-top:16px!important}.permission-review{margin-top:16px;padding:16px;border:1px solid var(--gold);border-radius:14px;background:var(--gold-soft)}.permission-review h3{margin-top:0}.permission-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.permission-review-grid>div{padding:12px;border-radius:10px;background:var(--card)}.permission-review-grid ul{max-height:180px;overflow:auto;padding-left:20px}.permission-review-grid li{margin:6px 0}.permission-review-grid .sensitive strong,.permission-review-grid .sensitive li{color:var(--danger)}
@media(max-width:760px){.permission-modal{width:calc(100% - 12px);max-height:96vh}.permission-modal #modal-form{padding:16px;max-height:96vh}.permission-toolbar{top:-16px}.permission-category>summary{align-items:flex-start;flex-wrap:wrap}.permission-category>summary small{order:3;width:100%;margin-left:0}.permission-category-actions{display:grid;grid-template-columns:1fr 1fr}.permission-category-actions button{min-height:44px}.permission-modules,.permission-options,.permission-review-grid{grid-template-columns:1fr}.permission-option{min-height:52px}.permission-modal .actions{position:sticky;bottom:-16px;z-index:4;margin:18px -16px -16px;padding:12px 16px;background:var(--card);border-top:1px solid var(--line)}.permission-modal .actions button{flex:1;min-height:48px}}
.permission-modal{width:min(1240px,calc(100% - 28px))}.permission-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px}.permission-toolbar span{font-size:13px;color:var(--muted)}.permission-matrix{padding:0 14px 14px;overflow-x:auto}.permission-grid-header,.permission-feature-row{display:grid;grid-template-columns:minmax(190px,1.8fr) repeat(7,minmax(76px,1fr));align-items:stretch;min-width:890px}.permission-grid-header{position:sticky;top:0;z-index:2;border:1px solid var(--line);border-radius:10px 10px 0 0;background:#f6f3eb;color:var(--muted)}.permission-grid-header>span{display:grid;place-items:center;min-height:58px;padding:7px 5px;border-left:1px solid var(--line);text-align:center;font-size:10px;font-weight:800;line-height:1.2;text-transform:uppercase;letter-spacing:.025em}.permission-grid-header>span:first-child{place-items:center start;padding-left:14px;border-left:0}.permission-grid-header>span.sensitive{background:#fff8f7;color:#7e3838}.permission-grid-header small{display:block;margin-top:3px;color:var(--danger);font-size:8px;line-height:1.1;text-transform:none;letter-spacing:0}.permission-feature-row{border:1px solid var(--line);border-top:0;background:var(--card)}.permission-feature-row:last-child{border-radius:0 0 10px 10px}.permission-feature-row h4{display:flex;align-items:center;margin:0;padding:11px 14px;font-size:12px;line-height:1.25}.permission-cell{display:flex!important;flex-direction:column;justify-content:center;align-items:center;gap:3px!important;min-height:50px;margin:0!important;padding:6px 4px;border-left:1px solid var(--line);background:transparent;cursor:pointer}.permission-cell:hover{background:var(--gold-soft)}.permission-cell input{width:16px!important;height:16px!important;min-height:0!important;margin:0;accent-color:var(--gold-dark);box-shadow:none!important}.permission-cell.sensitive{background:#fffaf9}.permission-cell.sensitive:hover{background:#fff1ee}.permission-cell small{font-size:8px;line-height:1.05;text-align:center;color:var(--danger)}.permission-cell.unavailable{color:#bbb;cursor:default}.mobile-action-label{display:none}.permission-category-actions{justify-content:flex-end;padding-top:10px}.permission-category>summary{background:#fcfbf8}.permission-category[open]>summary{border-bottom:1px solid var(--line)}
@media(max-width:760px){.permission-toolbar{align-items:flex-start;flex-direction:column;gap:3px}.permission-matrix{padding:12px;overflow:visible}.permission-grid-header{display:none}.permission-feature-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:0;margin-bottom:10px;padding:12px;border:1px solid var(--line)!important;border-radius:12px!important;background:var(--paper)}.permission-feature-row h4{grid-column:1/-1;padding:0 0 8px;border-bottom:1px solid var(--line);font-size:14px}.permission-cell{display:grid!important;grid-template-columns:20px minmax(0,1fr);grid-template-rows:auto auto;justify-content:start;align-items:center;min-height:48px;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--card);text-align:left}.permission-cell input{grid-row:1/3}.permission-cell .mobile-action-label{display:block;font-size:11px;font-weight:750;line-height:1.15}.permission-cell small{grid-column:2;text-align:left;font-size:8px}.permission-cell.unavailable{display:none!important}.permission-category-actions{padding:10px 12px}.permission-category>summary{padding:13px}.permission-category>summary small{font-size:11px}}
@media(max-width:420px){.permission-feature-row{grid-template-columns:1fr}.permission-feature-row h4{grid-column:1}.permission-category-actions{grid-template-columns:1fr}.permission-modal .actions{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.barcode-entry,.pdv-scanner,.barcode-operational-lookup{margin-bottom:18px;padding:16px;border:1px solid var(--gold-line);border-radius:14px;background:var(--gold-soft)}.barcode-entry>div:first-child{display:grid;gap:3px;margin-bottom:10px}.barcode-entry small,.pdv-scanner small{color:var(--muted)}.barcode-entry-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.barcode-entry-row input,#pdv-barcode{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:17px;letter-spacing:.04em}.barcode-result{margin-top:10px;padding:11px 13px;border:1px solid #d8c488;border-radius:10px;background:#fff}.barcode-result.warning{border-color:#dc9d9d;background:#fff8f7;color:#7f2727}.pdv-scanner{border-width:2px}.pdv-scanner label{display:grid;gap:8px!important;margin:0!important}.pdv-scanner #pdv-barcode-status{margin-top:8px;font-size:13px;color:var(--muted)}
@media(max-width:560px){.barcode-entry-row{grid-template-columns:1fr}.barcode-entry-row button{width:100%}.pdv-scanner{padding:13px}}
.product-type-choice,.product-form-section{margin:14px 0;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.product-type-choice{display:grid;grid-template-columns:minmax(220px,360px) 1fr;gap:16px;align-items:center;border-color:var(--gold-line);background:var(--gold-soft)}.product-type-choice label{margin:0!important}.product-type-choice p{margin:0;color:var(--muted)}.product-form-section h3{margin:0 0 8px;font-size:15px;color:var(--gold-dark)}.product-form-section[hidden]{display:none!important}
@media(max-width:640px){.product-type-choice{grid-template-columns:1fr;gap:6px}.product-form-section{padding:13px}}
.app-toast{position:fixed;right:22px;bottom:22px;z-index:1000;max-width:min(420px,calc(100vw - 28px));padding:14px 18px;border:1px solid #8dbb91;border-radius:12px;background:#f4fff5;color:#174d20;box-shadow:var(--shadow-lg);font-weight:750}.app-toast.error{border-color:#dc9d9d;background:#fff8f7;color:#7f2727}[aria-invalid="true"]{border-color:var(--danger)!important;box-shadow:0 0 0 4px rgba(174,48,48,.13)!important}
@media(max-width:640px){.app-toast{right:14px;bottom:14px;left:14px;max-width:none}}
.checkout-summary{display:grid;gap:5px;margin-bottom:16px;padding:18px;border:1px solid var(--gold-line);border-radius:15px;background:var(--gold-soft)}.checkout-summary span{font-size:clamp(28px,5vw,38px);font-weight:850;color:var(--gold-dark)}.checkout-summary small{color:var(--muted)}.checkout-section{display:grid;gap:12px;margin-top:14px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.checkout-section[hidden]{display:none}.customer-debts{margin-bottom:20px}.customer-debts .panel-head>div{display:grid;gap:3px}.customer-debts .panel-head input{max-width:340px}
@media(max-width:640px){.checkout-section{padding:13px}.customer-debts .panel-head input{max-width:none;width:100%}}

/* Dashboard Executivo — apresentação moderna, sem alterar fontes ou cálculos. */
.executive-dashboard{display:grid;gap:20px}.executive-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:24px 26px;border:1px solid rgba(190,179,151,.42);border-radius:22px;background:linear-gradient(135deg,#fff 0%,#fbf8ef 100%);box-shadow:var(--shadow-sm)}.executive-toolbar h2{margin:4px 0;font-size:clamp(23px,2.5vw,34px);letter-spacing:-.04em}.executive-toolbar p{margin:0;color:var(--muted)}.executive-eyebrow{color:var(--gold-dark);font-size:10px;font-weight:850;letter-spacing:.14em}.dashboard-presets{display:flex;flex-wrap:wrap;gap:8px}.dashboard-presets button{min-height:40px;padding:8px 14px;border:1px solid var(--gold-line);border-radius:99px;background:#fff;color:var(--ink);font-weight:720;cursor:pointer}.dashboard-presets button:hover{border-color:var(--gold);background:var(--gold-soft)}.executive-filters{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.88)}.executive-filters label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:750}.executive-filters input,.executive-filters select{min-height:42px;padding:8px 11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}.executive-filters .primary{min-height:42px}.executive-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.executive-kpi-primary{grid-template-columns:repeat(4,minmax(0,1fr))}.executive-stat{position:relative;min-width:0;padding:18px;border:1px solid rgba(190,179,151,.46);border-radius:17px;background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}.executive-stat:after{content:"";position:absolute;right:-32px;bottom:-48px;width:90px;height:90px;border-radius:50%;background:rgba(199,151,34,.07)}.executive-stat.featured{color:#fff;border-color:#1a1916;background:linear-gradient(145deg,#282722,#11110f)}.executive-stat.success{border-color:#bdd9c7;background:linear-gradient(145deg,#fff,#eff8f2)}.executive-stat.danger{border-color:#e9c0c3;background:#fff7f7}.executive-stat.cash{border-color:var(--gold-line);background:linear-gradient(145deg,#fff,#fbf5df)}.executive-stat-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.executive-stat-head small{color:var(--muted);font-weight:750}.executive-stat.featured .executive-stat-head small{color:#d7cfbc}.executive-stat-head>span{color:var(--gold);font-size:15px}.executive-stat-value{position:relative;z-index:1;display:block;width:100%;margin:12px 0 11px;padding:0;border:0;background:transparent;color:inherit;text-align:left;font-size:clamp(21px,2vw,29px);font-weight:850;letter-spacing:-.04em;cursor:pointer}.executive-comparison{display:block;min-height:15px;color:var(--muted);font-size:10px;font-weight:700}.executive-comparison.positive{color:#267548}.executive-comparison.negative{color:#ad343e}.executive-stat.featured .executive-comparison{color:#cfc6af}.executive-chart-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.85fr);gap:18px}.executive-chart-grid.equal{grid-template-columns:repeat(2,minmax(0,1fr))}.executive-chart-panel{min-height:300px}.executive-chart-panel .panel-head>strong{font-size:20px}.executive-bar-chart{display:flex;align-items:end;gap:clamp(5px,1vw,13px);height:210px;padding:22px 4px 0;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent 51px,rgba(130,120,96,.10) 52px)}.executive-bar-chart.compact{height:210px}.executive-bar-item{display:flex;flex:1;flex-direction:column;justify-content:flex-end;align-items:center;min-width:8px;height:100%;gap:8px}.executive-bar-item span{width:min(30px,74%);min-height:5px;border-radius:7px 7px 2px 2px;background:linear-gradient(to top,#9a6b06,#dfbc56);box-shadow:0 4px 12px rgba(166,117,12,.18)}.executive-bar-item.sales-count span{background:linear-gradient(to top,#2d5545,#4e8a70)}.executive-bar-item small{min-height:13px;color:var(--muted);font-size:9px;white-space:nowrap}.executive-horizontal-chart{display:grid;gap:23px;padding:18px 0}.executive-horizontal-row>div:first-child{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.executive-horizontal-row span{color:var(--muted);font-size:13px}.executive-horizontal-track{height:12px;border-radius:99px;background:#eeece5;overflow:hidden}.executive-horizontal-track span{display:block;height:100%;border-radius:inherit}.executive-horizontal-track .revenue{background:#c59a2d}.executive-horizontal-track .expense{background:#bd685f}.executive-horizontal-track .result{background:#3e8064}.executive-ranking{display:grid}.executive-ranking-row{display:grid;grid-template-columns:28px minmax(100px,1.3fr) minmax(70px,1fr) auto;align-items:center;gap:10px;padding:11px 0;border:0;border-bottom:1px solid #eeeae0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.executive-ranking-row:last-child{border-bottom:0}.executive-rank{display:grid;width:25px;height:25px;place-items:center;border-radius:8px;background:var(--gold-soft);color:var(--gold-dark);font-size:11px;font-weight:850}.executive-ranking-name{font-weight:720;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.executive-ranking-bar{height:7px;border-radius:99px;background:#eeeae0;overflow:hidden}.executive-ranking-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#b17d10,#dfbd5a)}.executive-ranking-row>strong{font-size:13px}.executive-ranking-row>small{display:none}.executive-finance-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.executive-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.executive-method{display:flex;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.executive-method span{color:var(--muted);font-size:12px}.executive-alerts{display:grid;gap:9px}.executive-alert{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;width:100%;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);text-align:left;cursor:pointer}.executive-alert>span{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#f2eee2;color:var(--gold-dark);font-weight:850}.executive-alert.high{border-color:#ecc8c8;background:#fff9f9}.executive-alert.high>span{background:#f9dddd;color:#9d202c}.executive-alert div{display:grid;gap:2px}.executive-alert small{color:var(--muted)}.executive-alert b{font-size:20px}.executive-empty{display:grid;min-height:190px;place-items:center;align-content:center;gap:7px;color:var(--muted);text-align:center}.executive-empty>span{font-size:29px;color:#c7b57f}.executive-empty small{max-width:330px}.executive-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.executive-summary-grid>div{display:grid;gap:7px;padding:14px;border-radius:12px;background:var(--paper)}.executive-summary-grid small{color:var(--muted)}.executive-summary-grid strong{font-size:16px}.executive-footnote{margin:0;color:var(--muted);font-size:11px;text-align:center}
@media(max-width:1200px){.executive-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.executive-kpi-primary{grid-template-columns:repeat(2,minmax(0,1fr))}.executive-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.executive-toolbar{align-items:flex-start;flex-direction:column}.executive-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.executive-chart-grid,.executive-chart-grid.equal{grid-template-columns:1fr}.executive-chart-panel{min-height:270px}.executive-bar-chart{height:185px}.executive-methods{grid-template-columns:1fr}}
@media(max-width:560px){.executive-dashboard{gap:14px}.executive-toolbar{padding:18px}.dashboard-presets{display:grid;grid-template-columns:1fr 1fr;width:100%}.dashboard-presets button{width:100%}.executive-filters,.executive-kpi-grid,.executive-kpi-primary,.executive-finance-strip,.executive-summary-grid{grid-template-columns:1fr}.executive-filters .primary{width:100%}.executive-stat{padding:16px}.executive-chart-panel{min-height:250px}.executive-bar-chart{height:170px;gap:4px;overflow:hidden}.executive-bar-item small{display:none}.executive-ranking-row{grid-template-columns:28px minmax(0,1fr) auto}.executive-ranking-bar{display:none}.executive-ranking-row>small{display:block;grid-column:2/4;color:var(--muted)}.executive-summary-grid>div{display:flex;align-items:center;justify-content:space-between}.executive-method{padding:12px}}

/* Innova Food — linguagem visual tecnológica inspirada na Innova VN AI. */
:root{--ink:#eaf7f7;--muted:#8ca8ad;--paper:#071216;--card:#0d1d22;--green:#11c5b0;--lime:#26e6ca;--gold:#26d9c3;--gold-dark:#36d7ef;--gold-soft:rgba(23,198,187,.10);--gold-line:rgba(41,214,203,.28);--orange:#36d7ef;--line:rgba(134,185,190,.17);--danger:#ff6f83;--success:#36d69b;--sidebar:#061015;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--shadow-sm:0 8px 28px rgba(0,0,0,.18);--shadow-md:0 18px 48px rgba(0,0,0,.28);--shadow-lg:0 32px 90px rgba(0,0,0,.48)}
body{color:var(--ink);background:#061015}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 82% 5%,rgba(19,174,190,.13),transparent 28%),radial-gradient(circle at 38% 100%,rgba(23,183,141,.08),transparent 32%),linear-gradient(145deg,#071216,#08171c 55%,#061115)}
.app main{background:radial-gradient(circle at 88% 0,rgba(27,183,195,.10),transparent 27%),linear-gradient(145deg,#071216,#0a171b 56%,#061115)}
aside{background:linear-gradient(180deg,#061116 0%,#071a20 48%,#061015 100%);border-right:1px solid rgba(61,213,218,.16);box-shadow:12px 0 42px rgba(0,0,0,.32)}.brand{border-bottom-color:rgba(47,216,203,.18)}.brand span strong{background:linear-gradient(90deg,#fff,#83edf0);-webkit-background-clip:text;background-clip:text;color:transparent}.brand span small{color:#7ea0a7}.brand-logo-sidebar{border-color:rgba(43,218,204,.3);box-shadow:0 0 28px rgba(18,196,183,.11)}.sidebar-toggle{border-color:rgba(49,215,207,.26);background:rgba(21,185,179,.06);color:#72e8e6}.sidebar-toggle:hover{border-color:#35d9d1;background:rgba(37,204,192,.14)}.nav-group-toggle{color:#68898f}.nav-group-toggle:hover,.nav-group.active>.nav-group-toggle{color:#73e4e1}.nav-item{color:#a6bdc1}.nav-item:hover{background:rgba(67,215,214,.07)}.nav-item.active{border-left-color:#36e0cd;background:linear-gradient(90deg,rgba(26,217,197,.18),rgba(28,153,191,.05));box-shadow:inset 3px 0 #38dece,0 0 26px rgba(30,211,194,.05)}.nav-icon{background:rgba(88,198,204,.07);color:#72dfe0}.nav-item.active .nav-icon{background:linear-gradient(135deg,#18c4ad,#2fbedb);color:#031518;box-shadow:0 5px 16px rgba(31,206,195,.25)}.logout{border-color:rgba(81,197,201,.22);color:#b8d1d4}.logout:hover{background:rgba(29,206,192,.10)}
main>.environment-banner{border-bottom:1px solid rgba(51,215,207,.18);background:#0b262b!important;color:#8ceae6!important}main>header{background:rgba(8,22,27,.82);border-bottom-color:rgba(120,190,195,.13);box-shadow:0 10px 34px rgba(0,0,0,.18);backdrop-filter:blur(18px)}header h1{color:#f3ffff}header p,.user small{color:var(--muted)}.user{border-color:rgba(103,189,194,.16);background:rgba(15,35,40,.82);box-shadow:inset 0 1px rgba(255,255,255,.025),var(--shadow-sm)}
.kpi,.panel,.module-card,.executive-toolbar,.executive-filters,.executive-stat{border-color:rgba(111,184,190,.15);background:linear-gradient(145deg,rgba(15,34,40,.96),rgba(10,27,32,.96));box-shadow:inset 0 1px rgba(255,255,255,.025),var(--shadow-sm)}.panel:hover,.module-card:hover{border-color:rgba(53,213,207,.24);box-shadow:inset 0 1px rgba(255,255,255,.035),var(--shadow-md)}.module-card:hover{transform:translateY(-2px)}.kpi:before{background:linear-gradient(#31daca,#2aa8d3)}.kpi small,.module-card small,.production-detail small,.recipe-summary small,.loss-preview-grid small,.inventory-summary small{color:var(--muted)}
.primary,.login-card button:not(.secondary),.actions button:not(.secondary){border:1px solid rgba(83,239,224,.24);background:linear-gradient(135deg,#13b99f,#179fbd);color:#031519;text-shadow:none;box-shadow:0 8px 24px rgba(17,188,174,.18)}.primary:hover,.login-card button:not(.secondary):hover,.actions button:not(.secondary):hover{filter:brightness(1.09);box-shadow:0 11px 28px rgba(26,207,193,.27)}.secondary,.table-action{border-color:rgba(70,205,205,.26)!important;background:rgba(19,56,62,.46)!important;color:#8de9e6!important;box-shadow:none}.secondary:hover,.table-action:hover{border-color:rgba(74,229,220,.48)!important;background:rgba(28,91,94,.48)!important;color:#d5ffff!important}.table-action.kpi-link{border:0!important;background:transparent!important;color:inherit!important;padding:0!important}
input,select,textarea,#fields input,#fields select,.product-filters input,.product-filters select,.inventory-table input,.inventory-table select,.executive-filters input,.executive-filters select{border-color:rgba(115,180,186,.20);background:#0a1a1f;color:#e8f8f8;box-shadow:inset 0 1px 3px rgba(0,0,0,.25)}input:hover,select:hover,textarea:hover{border-color:rgba(64,214,208,.38)}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid rgba(45,220,211,.42);outline-offset:2px;border-color:#2ed8ce!important;box-shadow:0 0 0 4px rgba(25,202,193,.11)}input::placeholder,textarea::placeholder{color:#5e7b81}option{background:#0d2025;color:#eaf7f7}label{color:#b9cfd2}
.table-wrap{border-color:rgba(115,180,186,.16);background:rgba(10,27,32,.86);box-shadow:inset 0 1px rgba(255,255,255,.025)}th{color:#7fa5aa;background:#0c2025;border-bottom-color:rgba(109,186,192,.17)}td{border-bottom-color:rgba(101,169,176,.11)}tbody tr:hover{background:rgba(34,186,183,.055)}.badge{border-color:rgba(56,216,193,.25);background:rgba(40,201,173,.11);color:#73e1c4}.badge.bad{border-color:rgba(255,111,131,.28);background:rgba(255,111,131,.10);color:#ff9cac}.notice{border-color:rgba(51,207,201,.23);background:rgba(20,110,114,.13);color:#b8dfe1}.empty,.executive-empty{border-color:rgba(91,173,179,.2);background:linear-gradient(145deg,rgba(14,32,37,.75),rgba(9,24,29,.75));color:var(--muted)}
dialog{border-color:rgba(65,215,208,.25);background:#0b1b20;color:var(--ink);box-shadow:0 35px 100px rgba(0,0,0,.64)}dialog::backdrop{background:rgba(1,8,11,.82);backdrop-filter:blur(5px)}.modal-head{border-bottom-color:rgba(109,187,192,.14);background:rgba(11,27,32,.93)}.modal-head button{color:#9fc0c4}.actions{background:linear-gradient(transparent,#0b1b20 30%)}.actions .secondary{color:#8de9e6}
.recipe-summary>div,.production-totals>div,.production-detail>div,.loss-preview-grid>div,.inventory-summary>div,.product-days label,.checkout-section,.product-form-section,.permission-module,.permission-feature-row{border-color:rgba(101,176,183,.15);background:rgba(8,25,30,.72)}.product-type-choice,.barcode-entry,.pdv-scanner,.barcode-operational-lookup,.checkout-summary{border-color:rgba(48,215,205,.25);background:rgba(23,174,166,.075)}.checkout-summary span,.product-form-section h3{color:#63e3dd}.barcode-result{border-color:rgba(56,215,207,.23);background:#0d2227}.production-warning,.barcode-result.warning{border-color:rgba(255,111,131,.30);background:rgba(255,111,131,.09);color:#ff9aaa}
.login-shell{background:radial-gradient(circle at 78% 14%,rgba(20,193,203,.24),transparent 27%),radial-gradient(circle at 20% 85%,rgba(17,185,139,.17),transparent 30%),linear-gradient(145deg,#031013,#071c22 56%,#020b0e)}.login-card{border-color:rgba(61,222,213,.27);background:linear-gradient(145deg,rgba(12,31,37,.97),rgba(6,20,25,.98));box-shadow:0 32px 100px rgba(0,0,0,.62),0 0 80px rgba(24,191,188,.08)}.login-card h1{background:linear-gradient(90deg,#fff,#73e8e4);-webkit-background-clip:text;background-clip:text;color:transparent}.login-card p,.login-card small{color:#86a9ae}.login-card input{border-color:rgba(99,182,189,.24);background:#08191e;color:#efffff}.brand-logo-login{border:1px solid rgba(54,211,204,.20);box-shadow:0 0 38px rgba(28,198,193,.10)}
#ai-command{border-color:rgba(65,213,207,.22);background:#081a1f;color:#edffff;box-shadow:inset 0 1px 4px rgba(0,0,0,.34)}#ai-document{border-color:rgba(57,218,209,.36);background:rgba(12,49,54,.55)}#ai-messages>.notice{border-color:rgba(55,198,197,.23);background:rgba(12,38,43,.86)}.ai-result{border-left-color:#2ddacc!important}.ai-preview-section,.ai-preview-card{border-color:rgba(96,181,188,.16);background:#0b1e23}.ai-preview-card header{border-bottom-color:rgba(60,211,204,.22)}.ai-preview-card header span,.muted{color:var(--muted)}.ai-preview-field>span{color:#9db9bd}.ai-preview-field.uncertain,.ai-warning{border-color:#e4ad45;background:rgba(215,153,40,.10);color:#f4d697}.ai-preview-actions{background:linear-gradient(transparent,#0b1e23 30%)}
.config-tabs{border-bottom-color:rgba(95,180,187,.15)}.config-tabs button{color:#829da2}.config-tabs button.active{color:#71e8e1;border-color:#39d9cf}.branding-preview figure{border:1px solid rgba(48,215,205,.17);background:#061217}.branding-upload input[type=file]{border-color:rgba(54,211,204,.32);background:#081a1f}.audit div{border-left-color:#2fd7ca}
.permission-toolbar,.permission-category,.permission-module,.permission-review,.permission-review-grid>div{border-color:rgba(99,181,188,.16);background:#0b1d22}.permission-category>summary,.permission-category[open]>summary,.permission-grid-header{border-color:rgba(91,176,182,.16);background:#0c2025}.permission-feature-row{border-color:rgba(91,176,182,.14);background:#0a1b20}.permission-cell{border-color:rgba(91,176,182,.13);background:rgba(9,28,33,.72)}.permission-cell:hover{background:rgba(30,185,181,.09)}.permission-option{background:#0b2025}.permission-option.sensitive,.permission-cell.sensitive{border-color:rgba(255,111,131,.20);background:rgba(255,111,131,.055)}.permission-modal .actions{background:#0b1b20;border-top-color:rgba(98,180,187,.16)}
.executive-toolbar{background:radial-gradient(circle at 90% 0,rgba(42,202,207,.14),transparent 36%),linear-gradient(145deg,rgba(14,36,42,.98),rgba(8,25,30,.98))}.executive-eyebrow{color:#54ddd8}.dashboard-presets button{border-color:rgba(62,208,205,.24);background:rgba(16,45,51,.7);color:#a5dddd}.dashboard-presets button:hover{border-color:#3bd9d2;background:rgba(27,121,123,.22)}.executive-stat.featured{border-color:rgba(56,225,216,.31);background:radial-gradient(circle at 92% 0,rgba(50,205,220,.22),transparent 42%),linear-gradient(145deg,#102f37,#091d23)}.executive-stat.success{border-color:rgba(54,214,155,.22);background:linear-gradient(145deg,rgba(16,48,43,.96),rgba(9,29,31,.96))}.executive-stat.danger{border-color:rgba(255,111,131,.25);background:linear-gradient(145deg,rgba(63,27,35,.80),rgba(26,22,28,.96))}.executive-stat.cash{border-color:rgba(61,220,210,.23);background:linear-gradient(145deg,rgba(13,48,52,.96),rgba(8,28,33,.96))}.executive-stat:after{background:rgba(38,213,205,.065)}.executive-stat-head>span,.executive-empty>span{color:#4ddfd8}.executive-comparison.positive{color:#4fe2aa}.executive-comparison.negative{color:#ff8e9e}.executive-bar-chart{border-bottom-color:rgba(104,183,189,.17);background:repeating-linear-gradient(to top,transparent 0,transparent 51px,rgba(106,180,187,.08) 52px)}.executive-bar-item span{background:linear-gradient(to top,#147e91,#39ddcf);box-shadow:0 6px 18px rgba(37,207,202,.20)}.executive-bar-item.sales-count span{background:linear-gradient(to top,#137d69,#39dba6)}.executive-horizontal-track,.executive-ranking-bar{background:rgba(124,177,181,.11)}.executive-horizontal-track .revenue{background:linear-gradient(90deg,#168ba2,#39d9d0)}.executive-horizontal-track .expense{background:linear-gradient(90deg,#a54e67,#ff788c)}.executive-horizontal-track .result{background:linear-gradient(90deg,#16856d,#41dca5)}.executive-ranking-row{border-bottom-color:rgba(110,178,184,.12);color:var(--ink)}.executive-rank{background:rgba(37,211,199,.12);color:#6ce4df}.executive-ranking-bar i{background:linear-gradient(90deg,#168da4,#39d9cf)}.executive-method,.executive-summary-grid>div{border-color:rgba(102,178,184,.14);background:rgba(7,24,29,.68)}.executive-alert{border-color:rgba(103,181,187,.16);background:#0b2025;color:var(--ink)}.executive-alert>span{background:rgba(41,202,194,.11);color:#66ddd8}.executive-alert.high{border-color:rgba(255,111,131,.24);background:rgba(255,111,131,.06)}.executive-alert.high>span{background:rgba(255,111,131,.13);color:#ff91a1}
.app-toast{border-color:rgba(58,218,162,.35);background:#0d2c26;color:#72e7b8}.app-toast.error{border-color:rgba(255,111,131,.34);background:#331c24;color:#ff9aaa}
@media(max-width:900px){aside,.sidebar-collapsed aside{box-shadow:22px 0 70px rgba(0,0,0,.62)}#menu{border-color:rgba(70,201,202,.22);background:#0c2025;color:#8de8e4}.nav-scrim{background:rgba(1,8,11,.72)}}
@media(max-width:640px){.table-wrap{background:transparent}tbody tr{border-color:rgba(99,179,186,.15);background:#0b1e23}td{border-bottom-color:rgba(97,173,180,.12)}td:before{color:#6f979c}.panel,.kpi{background:linear-gradient(145deg,rgba(14,33,39,.98),rgba(9,25,30,.98))}.permission-feature-row{background:#091b20}.permission-cell{background:#0c2227}}

/* Lapidação analítica do Dashboard: marinho predominante, cor apenas como sinal. */
body:before{background:radial-gradient(circle at 84% 2%,rgba(25,125,190,.12),transparent 26%),radial-gradient(circle at 24% 100%,rgba(19,127,135,.06),transparent 30%),linear-gradient(145deg,#040b14,#07111c 56%,#040a12)}.app main{background:radial-gradient(circle at 88% 0,rgba(23,114,177,.08),transparent 26%),linear-gradient(145deg,#050d17,#08131d 56%,#050c14)}.kpi,.panel,.module-card,.executive-toolbar,.executive-filters,.executive-stat{background:linear-gradient(145deg,rgba(11,23,35,.98),rgba(7,17,28,.98));border-color:rgba(101,154,184,.15)}main>header{background:rgba(6,15,25,.86)}
.executive-hero-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.72fr) minmax(230px,.58fr);gap:18px}.executive-area-panel{min-width:0}.executive-visual-panel{min-width:0;min-height:300px}.executive-area-chart{display:grid;gap:5px;min-height:222px}.executive-area-chart svg{display:block;width:100%;height:205px;overflow:visible}.executive-area-chart .chart-grid-lines line{stroke:rgba(131,171,199,.12);stroke-width:1}.executive-area-chart circle{fill:#071827;stroke:#43ded3;stroke-width:3;filter:drop-shadow(0 0 5px rgba(55,215,211,.36))}.executive-chart-axis{display:flex;justify-content:space-between;color:#668496;font-size:10px;text-transform:uppercase}.executive-donut-layout{display:grid;place-items:center;gap:20px}.executive-donut,.executive-gauge{position:relative;display:grid;width:158px;aspect-ratio:1;place-items:center;border-radius:50%;box-shadow:0 0 36px rgba(38,161,194,.10)}.executive-donut:after,.executive-gauge:after{content:"";position:absolute;inset:22px;border:1px solid rgba(115,174,203,.13);border-radius:50%;background:#08131f;box-shadow:inset 0 8px 22px rgba(0,0,0,.32)}.executive-donut>div,.executive-gauge>div{position:relative;z-index:1;display:grid;gap:2px;text-align:center}.executive-donut strong,.executive-gauge strong{font-size:18px;letter-spacing:-.03em}.executive-donut small,.executive-gauge small{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.07em}.executive-gauge{margin:18px auto;background:conic-gradient(#38d7d0 0 var(--gauge),rgba(109,160,188,.12) var(--gauge) 360deg)}.executive-methods{display:grid;grid-template-columns:1fr;width:100%;gap:7px}.executive-method{display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;border:0;background:transparent}.executive-method i{width:8px;height:8px;border-radius:50%}.executive-method span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.executive-method strong{font-size:11px}.executive-method small{grid-column:2/4;color:#62808e;font-size:9px}.executive-gauge-caption{display:grid;gap:5px;text-align:center}.executive-gauge-caption span,.executive-gauge-caption small{color:var(--muted);font-size:10px}.executive-gauge-caption strong{font-size:19px}.executive-alert-panel{min-height:0}.executive-alert-panel .executive-empty{min-height:170px}.executive-chart-grid.equal{align-items:stretch}.executive-chart-grid.equal>.panel{height:100%}
@media(max-width:1250px){.executive-hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(240px,.75fr)}.executive-hero-grid>.executive-visual-panel:last-child{grid-column:1/-1;min-height:230px}.executive-hero-grid>.executive-visual-panel:last-child .executive-gauge{width:130px;margin:4px auto}.executive-hero-grid>.executive-visual-panel:last-child{display:grid;grid-template-columns:1fr 150px 1fr;align-items:center}.executive-hero-grid>.executive-visual-panel:last-child .panel-head{margin:0}.executive-gauge-caption{text-align:left}}
@media(max-width:820px){.executive-hero-grid{grid-template-columns:1fr}.executive-hero-grid>.executive-visual-panel:last-child{grid-column:auto;display:block;min-height:270px}.executive-hero-grid>.executive-visual-panel:last-child .executive-gauge{width:150px;margin:18px auto}.executive-gauge-caption{text-align:center}.executive-area-chart{min-height:205px}.executive-area-chart svg{height:188px}}
@media(max-width:560px){.executive-hero-grid{gap:12px}.executive-area-chart{min-height:180px}.executive-area-chart svg{height:165px}.executive-donut,.executive-gauge{width:142px}.executive-visual-panel{min-height:250px}}
.barcode-camera-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;padding:16px;background:rgba(0,0,0,.94);place-items:center}.barcode-camera-dialog[open]{display:grid}.barcode-camera-dialog::backdrop{background:rgba(0,0,0,.94)}.barcode-camera-dialog>div{width:min(520px,100%);display:grid;gap:14px;padding:18px;border:1px solid var(--gold);border-radius:18px;background:#111;color:#fff;text-align:center}.barcode-camera-dialog video{width:100%;max-height:62vh;border-radius:12px;background:#000;object-fit:cover}.barcode-camera-dialog button{min-height:48px}.inventory-mobile-scan{position:sticky;top:0;z-index:2}
