
:root{
  --fm-primary:#075d68;--fm-primary-hover:#064750;--fm-primary-soft:#e8f1f1;--fm-primary-ring:rgba(7,93,104,.22);
  --fm-success:#17804b;--fm-success-strong:#12663c;--fm-success-soft:#eaf8f0;
  --fm-warning:#b76805;--fm-warning-strong:#8e4e05;--fm-warning-soft:#fff5df;
  --fm-danger:#c13737;--fm-danger-strong:#9f2929;--fm-danger-soft:#fff0f0;
  --fm-info:#176da8;--fm-info-strong:#125884;--fm-info-soft:#eaf5fc;
  --fm-purple:#7050b8;--fm-purple-soft:#f3effc;--fm-neutral:#667085;--fm-neutral-soft:#f2f4f7;
  --fm-bg:#edf0ef;--fm-surface:#fff;--fm-surface-alt:#f4f6f5;--fm-border:#cdd5d4;--fm-border-strong:#a9b8b6;
  --fm-text:#1b2b2d;--fm-text-muted:#526466;--fm-shadow-sm:none;
  --fm-shadow-md:0 2px 6px rgba(16,36,38,.08);--fm-radius-sm:4px;--fm-radius:5px;--fm-radius-lg:6px;
  --fm-space-1:4px;--fm-space-2:8px;--fm-space-3:12px;--fm-space-4:16px;--fm-space-6:24px;--fm-space-8:32px;
}
body{background:linear-gradient(180deg,#f7f9fd 0,#f2f5fa 220px);color:var(--fm-text)}
#app header{height:74px;border-bottom-color:var(--fm-border);box-shadow:0 1px 0 rgba(16,24,40,.025);background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}
.desktop-operation{display:flex;align-items:center;gap:7px;text-transform:uppercase;letter-spacing:.035em;font-size:10px}.desktop-operation strong,.operation-header-button{padding:6px 9px;border-radius:8px;background:var(--fm-primary-soft);color:var(--fm-primary)!important;font-size:13px;text-transform:none;letter-spacing:0}.desktop-top-actions{padding-left:16px;border-left:1px solid var(--fm-border)}
.desktop-icon,.icon-button{border-color:var(--fm-border);background:#fff;transition:color .16s ease,border-color .16s ease,background .16s ease,transform .16s ease}.desktop-icon:hover,.icon-button:hover{border-color:#b9c7e8;background:var(--fm-primary-soft);color:var(--fm-primary);transform:translateY(-1px)}
#app>nav{background:#fbfcfe;border-right-color:var(--fm-border);padding:18px 12px!important}#app>nav::before{color:var(--fm-text-muted);border-bottom:1px solid #edf0f5;margin:0 6px 13px;padding:7px 8px 20px}
#app>nav .menu{margin:1px 0}#app>nav .menu>button,#app>nav>.menu>button{position:relative;transition:background .16s ease,color .16s ease,transform .16s ease}#app>nav .menu>button:hover{background:var(--fm-primary-soft)!important;transform:translateX(2px)}
#app>nav .menu>button.active-nav,#app>nav .menu-items button.active-nav,#app>nav .fm-stock-children button.active-stock-child{background:var(--fm-primary-soft)!important;color:var(--fm-primary)!important;font-weight:760;box-shadow:inset 3px 0 0 var(--fm-primary)}
#app.sidebar-collapsed>nav .menu>button.active-nav{box-shadow:inset 3px 0 0 var(--fm-primary),0 0 0 1px rgba(49,87,213,.08)}
.wrap{padding-top:108px;background:transparent}.toolbar{align-items:flex-start;margin-bottom:20px}.toolbar>div:first-child{min-width:0}.toolbar h2,#content>h2,.fm-detail-top h2{color:#15213b;font-size:25px;line-height:1.2;letter-spacing:-.55px}.fm-page-subtitle{margin:6px 0 0;color:var(--fm-text-muted);font-size:13px;font-weight:450}.toolbar .muted{display:inline-block;margin-top:6px}
.card,section,.fm-panel,.fm-kpi,.fm-detail-section{border-color:var(--fm-border);box-shadow:var(--fm-shadow-sm)}section{padding:20px}.fm-panel,.fm-kpi{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.fm-kpi:hover{transform:translateY(-2px);box-shadow:var(--fm-shadow-md);border-color:#cfdaec}.fm-kpi-icon{background:var(--fm-primary-soft);color:var(--fm-primary)}
button{min-height:38px;border:1px solid transparent;border-radius:var(--fm-radius-sm);background:var(--fm-primary);padding:9px 14px;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}button:hover:not(:disabled){background:var(--fm-primary-hover);box-shadow:0 5px 12px rgba(49,87,213,.16);transform:translateY(-1px)}button:focus-visible{outline:3px solid var(--fm-primary-ring);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.52;box-shadow:none;transform:none}
button.secondary,.fm-button-secondary{background:#f3f5f9;color:#344054;border-color:#e4e8ef}button.secondary:hover:not(:disabled){background:#e9edf4;color:#1d2939;border-color:#d6dde8;box-shadow:none}.fm-button-success{background:var(--fm-success)!important;color:#fff!important}.fm-button-success:hover{background:var(--fm-success-strong)!important}.fm-button-danger,.fm-critical-action,.fm-detail-action-danger{background:var(--fm-danger)!important;color:#fff!important;border-color:var(--fm-danger)!important}.fm-button-danger:hover,.fm-critical-action:hover,.fm-detail-action-danger:hover{background:var(--fm-danger-strong)!important}.fm-button-warning{background:var(--fm-warning)!important;color:#fff!important}.fm-button-ghost{background:transparent!important;color:var(--fm-primary)!important;border-color:transparent!important;box-shadow:none!important}
button[data-busy="1"]{position:relative;color:transparent!important;pointer-events:none}button[data-busy="1"]::after{content:"";position:absolute;inset:0;margin:auto;width:15px;height:15px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:fm-spin .7s linear infinite}@keyframes fm-spin{to{transform:rotate(360deg)}}
input,select,textarea{border:1px solid var(--fm-border-strong);border-radius:var(--fm-radius-sm);background:#fff;transition:border-color .15s ease,box-shadow .15s ease}input:hover,select:hover,textarea:hover{border-color:#abb8cc}input:focus,select:focus,textarea:focus{border-color:var(--fm-primary);outline:0;box-shadow:0 0 0 3px var(--fm-primary-ring)}input:invalid:not(:placeholder-shown){border-color:var(--fm-danger)}.filter{gap:6px;color:#475467;font-size:11px;letter-spacing:.02em;text-transform:uppercase}.filter input,.filter select{text-transform:none;letter-spacing:0}.error{border-left:3px solid var(--fm-danger);border-radius:7px;background:var(--fm-danger-soft);color:var(--fm-danger-strong);padding:9px 11px}.error:empty{display:none}
.entry-query-bar,.stock-query-filters,.fm-map-toolbar,.fm-map-filter-panel{border-color:var(--fm-border)!important;background:var(--fm-surface-alt)!important;border-radius:12px!important}.entry-query-bar{padding:14px!important}.entry-query-search-wrap{background:#fff;border-radius:10px}.filter-toggle.active,.shipping-query-filter.fm-filter-active{background:var(--fm-primary-soft)!important;color:var(--fm-primary)!important;border-color:#cbd6f5!important}
.table-wrap{border-color:var(--fm-border);border-radius:12px;background:#fff;overflow:auto}table{font-variant-numeric:tabular-nums}thead{position:relative}th{background:#f5f7fb;color:#475467;font-size:11px;font-weight:750;letter-spacing:.025em;text-transform:uppercase;border-bottom:1px solid var(--fm-border-strong)}td,th{padding:13px 14px;border-bottom-color:#e8ecf2}tbody tr:nth-child(even){background:#fbfcfe}tbody tr{transition:background .13s ease}tbody tr:hover{background:#f2f6ff}.code{color:#283b66;font-weight:650}.product-sort-heading.active{background:var(--fm-primary-soft)}.product-sort-heading.active button{color:var(--fm-primary)}
.fm-status-badge,.fm-data-badge,.fm-badge,.stock-type,.fm-map-status,.fm-detail-status{display:inline-flex!important;align-items:center;gap:6px;width:max-content;max-width:100%;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:780;line-height:1.1;letter-spacing:.015em;white-space:nowrap}.fm-status-badge::before,.fm-data-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:0 0 6px}
.fm-tone-success,.fm-badge.green{background:var(--fm-success-soft)!important;color:var(--fm-success-strong)!important}.fm-tone-warning,.fm-badge.orange{background:var(--fm-warning-soft)!important;color:var(--fm-warning-strong)!important}.fm-tone-danger,.fm-badge.red{background:var(--fm-danger-soft)!important;color:var(--fm-danger-strong)!important}.fm-tone-info,.fm-badge.blue{background:var(--fm-info-soft)!important;color:var(--fm-info-strong)!important}.fm-tone-purple{background:var(--fm-purple-soft)!important;color:#5d3fa2!important}.fm-tone-neutral{background:var(--fm-neutral-soft)!important;color:#475467!important}
.fm-dashboard .fm-panel{min-width:0;overflow:hidden}.fm-recent{min-width:0!important;width:100%;table-layout:auto}.fm-recent td{vertical-align:middle}.fm-recent tbody tr{transition:background .14s ease}.fm-recent tbody tr:hover{background:#f7f9fd}.fm-recent .fm-badge{min-width:0;width:max-content;padding:4px 8px;font-size:11px;font-weight:700;line-height:1.15}.fm-recent-shipments th:last-child,.fm-recent-shipments td:last-child{text-align:center;white-space:nowrap;width:1%}.fm-recent-activities td:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}.fm-panel-head a{align-self:center}
.receiving-cards,.shipping-cards{gap:14px}.receiving-card{position:relative;overflow:hidden;border:1px solid var(--fm-border)!important;border-left:0!important;border-radius:14px!important;background:#fff;box-shadow:var(--fm-shadow-sm)!important;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.receiving-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--fm-info)}.receiving-card.fm-card-success::before{background:var(--fm-success)}.receiving-card.fm-card-warning::before{background:var(--fm-warning)}.receiving-card.fm-card-danger::before{background:var(--fm-danger)}.receiving-card.fm-card-purple::before{background:var(--fm-purple)}.receiving-card.fm-card-neutral::before{background:#98a2b3}.receiving-card:hover{transform:translateY(-2px);box-shadow:var(--fm-shadow-md)!important;border-color:#ccd6e5!important}
.receiving-card h3{font-size:17px!important;color:#17233d;letter-spacing:-.2px}.receiving-card-grid{grid-template-columns:minmax(255px,1fr) minmax(390px,1.55fr) minmax(160px,.52fr)!important}.receiving-central{border-left-color:#e5e9f0!important}.shipping-cards .receiving-central{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px!important}.shipping-cards .receiving-central>span{display:block;padding:7px 9px;border-radius:8px;background:#f8fafc;color:#475467}.shipping-cards .receiving-central>span b{color:#344054}.shipping-cards .receiving-central>span:last-child{background:var(--fm-primary-soft);color:#273f90}.receiving-card-actions button{width:100%}.receiving-card-metrics{border-top-color:#e6eaf0!important}.receiving-card-metrics>div{padding:3px 7px}.receiving-card-metrics b{color:#475467}.receiving-card-metrics strong{color:#172033}
.fm-detail-nav{position:sticky;top:84px;z-index:8;box-shadow:var(--fm-shadow-sm)}.fm-detail-nav a{transition:background .15s ease,color .15s ease}.fm-detail-nav a:hover{background:var(--fm-primary-soft);color:var(--fm-primary)}.fm-detail-field{background:#f8fafc;border-color:#e1e6ee}.fm-detail-field b{color:#667085}.fm-detail-section h3{font-size:16px;color:#1d2939}.fm-map-summary span{background:#f1f4f9;border:1px solid #e4e8ef}.fm-map-row{border-color:var(--fm-border);box-shadow:0 1px 2px rgba(16,24,40,.025)}.fm-map-row:hover{border-color:#cbd6e8}.fm-map-quantities span{background:#f4f7fb}.stock-value-blocked{color:var(--fm-danger-strong)}.stock-value-available{color:var(--fm-success-strong)}.stock-empty-location{border-left-color:#98a2b3}
.modal{background:rgba(17,24,39,.5)}.modal section{border-radius:var(--fm-radius-lg);box-shadow:0 24px 70px rgba(15,23,42,.22);padding:22px}.modal-head{align-items:flex-start;padding-bottom:13px;border-bottom:1px solid var(--fm-border)}.modal-head h2{font-size:20px;color:#172033}.detail .field,.field{background:#f8fafc;border:1px solid #e5e9f0}.field b{color:#667085;letter-spacing:.02em}
.pager{color:var(--fm-text-muted)}.empty,.fm-empty,.fm-detail-empty{color:var(--fm-text-muted)}
@media(max-width:1180px){.receiving-card-grid{grid-template-columns:minmax(230px,1fr) minmax(300px,1.2fr) minmax(145px,.55fr)!important}.shipping-cards .receiving-central{grid-template-columns:1fr}.stock-query-filters{grid-template-columns:repeat(2,minmax(145px,1fr))}}
@media(max-width:900px){.wrap{padding-top:94px}.desktop-top-actions{border-left:0;padding-left:0}.receiving-card-grid{grid-template-columns:1fr!important}.shipping-cards .receiving-central{grid-template-columns:repeat(2,minmax(0,1fr))}.fm-detail-nav{top:76px}}
@media(max-width:620px){.shipping-cards .receiving-central{grid-template-columns:1fr}.fm-kpis{grid-template-columns:1fr}.toolbar{gap:12px}.toolbar>div:last-child{display:flex;flex-wrap:wrap}.modal{padding:10px}.modal section{padding:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
.fm-audit-search{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:10px;margin-bottom:14px}.fm-audit-filters{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;align-items:end}.fm-audit-quick{display:flex;gap:8px;margin:12px 0}.fm-audit-quick button{min-height:32px;padding:6px 11px}.fm-audit-sort{min-height:0;padding:0;border:0;background:transparent!important;color:inherit;font:inherit;text-transform:inherit;box-shadow:none!important;transform:none!important}.fm-audit-table tbody tr{cursor:pointer}.fm-audit-table td{vertical-align:top}.fm-audit-detail{display:block;max-width:430px;white-space:normal;line-height:1.45}.fm-audit-technical{margin-top:18px;border:1px solid var(--fm-border);border-radius:10px;padding:12px}.fm-audit-technical summary{cursor:pointer;font-weight:700}.fm-audit-technical pre{max-height:330px;overflow:auto;white-space:pre-wrap;word-break:break-word;background:#111827;color:#e5e7eb;padding:14px;border-radius:8px}.fm-audit-table .fm-status-badge{white-space:nowrap}@media(max-width:1100px){.fm-audit-filters{grid-template-columns:repeat(2,minmax(150px,1fr))}}@media(max-width:700px){.fm-audit-search{grid-template-columns:1fr}.fm-audit-filters{grid-template-columns:1fr}}
/* Identidade operacional administrativa. Apenas apresentação; impressão usa documentos próprios. */
@media screen{
body{background:var(--fm-bg)}
#app header{background:#fff;backdrop-filter:none;box-shadow:none;border-bottom:2px solid #cdd5d4}
#app>nav{background:#183236;border-right:1px solid #10282c}
#app>nav::before,#app.sidebar-collapsed>nav::before{color:#fff;border-bottom-color:#355055;letter-spacing:.06em}
#app>nav .menu>button,#app>nav>.menu>button,#app>nav .menu-items button{color:#d9e5e4!important;border-radius:3px}
#app>nav .menu>button:hover,#app>nav .menu-items button:hover,#app>nav .menu>button:focus{background:#28474c!important;color:#fff!important;transform:none}
#app>nav .menu>button.active-nav,#app>nav .menu-items button.active-nav,#app>nav .fm-stock-children button.active-stock-child{background:#304f53!important;color:#fff!important;box-shadow:inset 3px 0 #b5ce5d}
#app>nav .menu-items{border-left:1px solid #426065!important;margin-left:18px!important}
#app>nav .desktop-collapse,#app>nav .desktop-config,#app>nav .fm-sidebar-icon{color:#bacdcd}
.desktop-operation strong,.operation-header-button{background:transparent;border-radius:3px;color:#075d68!important}
.desktop-avatar{border-radius:4px;background:#e8f1f1;color:#075d68}.desktop-icon,.icon-button{border-radius:4px}
.toolbar{margin-bottom:16px}.toolbar h2,#content>h2,.fm-detail-top h2,.fm-dashboard-head h2{font-size:23px;color:#183236;letter-spacing:-.35px}
.fm-page-subtitle{font-size:12px}.card,section,.fm-panel,.fm-kpi,.fm-detail-section{box-shadow:none;border-radius:5px}
button:hover:not(:disabled),.desktop-icon:hover,.icon-button:hover,.fm-kpi:hover,.receiving-card:hover{transform:none;box-shadow:none!important}
button.secondary{background:#fff;border-color:#bbc9c8;color:#26474c}button.secondary:hover:not(:disabled){background:#e8efee;border-color:#829d9c;color:#183236}
.entry-query-bar,.stock-query-filters,.fm-map-toolbar,.fm-map-filter-panel{border-radius:4px!important;background:#f4f6f5!important}.entry-query-bar{padding:10px!important}.entry-query-search-wrap{border-radius:4px}
.table-wrap{border-radius:4px}td,th{padding:10px 12px;border-bottom-color:#dde4e2}th{background:#e7eeec;color:#30494b;border-bottom:2px solid #b5c5c2;font-size:11px}tbody tr:nth-child(even){background:#f5f7f6}tbody tr:hover{background:#eaf2f0}.code{color:#20464c;font-variant-numeric:tabular-nums}
.fm-status-badge,.fm-data-badge,.fm-badge,.stock-type,.fm-map-status,.fm-detail-status{border-radius:3px;padding:4px 7px;border:1px solid currentColor;letter-spacing:0}.fm-status-badge::before,.fm-data-badge::before{display:none}
.fm-dashboard{gap:16px}.fm-dashboard-head{padding-bottom:14px;border-bottom:2px solid #183236}.fm-date-display{border-radius:3px;background:transparent}.fm-kpis{gap:0;border:1px solid var(--fm-border);border-top:3px solid #075d68;background:#fff}.fm-kpi{border:0;border-right:1px solid var(--fm-border);border-radius:0;min-height:108px;padding:14px 18px}.fm-kpi:last-child{border-right:0}.fm-kpi strong{font-size:30px;font-variant-numeric:tabular-nums;letter-spacing:-.6px;margin-top:10px}.fm-kpi-icon{background:transparent;border-radius:0}.fm-dashboard-grid{gap:16px;grid-template-columns:minmax(260px,.8fr) minmax(0,1.6fr)}.fm-panel{padding:16px}.fm-panel-head{padding-bottom:10px;border-bottom:2px solid #d5dfdc;margin-bottom:12px}.fm-panel h3{font-size:14px;letter-spacing:.01em}.fm-stock-dot{border-radius:1px;width:7px;height:18px}.fm-stock-dot.exp{background:#075d68}
.receiving-cards,.shipping-cards{gap:10px}.receiving-card{border-radius:4px!important;box-shadow:none!important}.receiving-card:hover{border-color:#9aafad!important}.receiving-card h3{color:#183236!important;font-variant-numeric:tabular-nums}.receiving-card-metrics{background:#f5f7f6}.shipping-cards .receiving-central>span{border-radius:2px;background:transparent;padding:5px 7px}.shipping-cards .receiving-central>span:last-child{background:#e8f1f1;color:#183236}
.fm-detail-nav{border-radius:4px;box-shadow:none}.fm-detail-field,.field,.detail .field{border-radius:3px;background:#f4f6f5}.fm-map-summary span,.fm-map-quantities span,.fm-map-row{border-radius:3px}.modal{backdrop-filter:none}.modal section{border:1px solid #a9b8b6;border-radius:6px;box-shadow:0 12px 35px #10282c33}.modal-head{border-bottom:2px solid #a9b8b6}.settings-popover,.context-menu{border-radius:4px}
@media(max-width:1100px){.fm-dashboard-grid{grid-template-columns:1fr}}
@media(max-width:620px){.fm-kpis{grid-template-columns:1fr 1fr}.fm-kpi{border-bottom:1px solid var(--fm-border);padding:12px}.fm-kpi strong{font-size:25px}}
}
