:root{--bg: #f4f6f8;--surface: #ffffff;--surface-strong: #eef3f8;--border: #dbe3ec;--text: #182230;--muted: #657386;--primary: #123f6d;--primary-light: #e7f0fa;--success: #16794c;--success-light: #e7f6ef;--danger: #b93815;--danger-light: #fff0e8;--warning: #c27703;--warning-light: #fff6db;--shadow: 0 18px 55px rgba(20, 34, 52, .09)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{align-items:center;background:var(--primary);border:0;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-weight:700;gap:8px;justify-content:center;min-height:40px;padding:0 14px}button:hover{filter:brightness(.96)}button:disabled{cursor:not-allowed;opacity:.65}button.secondary{background:var(--surface-strong);color:var(--text)}button.success{background:var(--success)}button.danger{background:var(--danger)}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:#0f253b;color:#fff;display:flex;flex-direction:column;padding:24px 18px}.brand{align-items:center;display:flex;margin-bottom:34px}.brand img{border-radius:8px;display:block;height:auto;max-width:154px;width:100%}.sidebar-nav{display:grid;gap:8px}.logout-button{background:#ffffff14;color:#c8d6e4;justify-content:flex-start;margin-top:auto;width:100%}.logout-button:hover{background:#ffffff21;color:#fff}.sidebar-user{background:#ffffff14;border:1px solid rgba(255,255,255,.08);border-radius:8px;display:grid;gap:4px;margin-bottom:22px;padding:12px}.sidebar-user span{color:#9eb2c5;font-size:13px;text-transform:none}.sidebar-user strong{color:#fff;font-size:15px}.sidebar-nav button{background:transparent;color:#c8d6e4;justify-content:flex-start;width:100%}.sidebar-nav button.active,.sidebar-nav button:hover{background:#ffffff1a;color:#fff}.main-area{min-width:0;padding:28px}.topbar{align-items:center;display:flex;gap:20px;justify-content:space-between;margin-bottom:24px}.eyebrow{color:var(--muted);display:block;font-size:13px;font-weight:700;margin-bottom:4px;text-transform:uppercase}.topbar h1,.panel h2,.modal h2{margin:0}.topbar h1{font-size:30px}.topbar-actions{align-items:center;display:flex;gap:12px}.global-search{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--muted);display:flex;gap:10px;min-height:42px;padding:0 14px}.icon-button{background:var(--surface);border:1px solid var(--border);color:var(--text);height:40px;min-height:40px;padding:0;width:40px}.page-content{display:grid;gap:22px}.stats-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stock-situation-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-card,.panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.stat-card{align-items:center;display:flex;justify-content:space-between;min-height:118px;padding:22px}.stat-card span{color:var(--muted);display:block;font-size:14px;font-weight:700}.stat-card strong{display:block;font-size:32px;margin-top:8px}.stat-icon{align-items:center;background:var(--primary-light);border-radius:8px;color:var(--primary);display:flex;height:48px;justify-content:center;width:48px}.stat-card.success .stat-icon{background:var(--success-light);color:var(--success)}.stat-card.danger .stat-icon{background:var(--danger-light);color:var(--danger)}.stat-card.warning .stat-icon{background:var(--warning-light);color:var(--warning)}.stat-card.normal .stat-icon{background:var(--success-light);color:var(--success)}.stat-card.reorder .stat-icon{background:var(--warning-light);color:var(--warning)}.stat-card.critical .stat-icon{background:var(--danger-light);color:var(--danger)}.stat-card.empty .stat-icon{background:#f1f5f9;color:#58677a}.stat-card.excess .stat-icon{background:#f2eaff;color:#6f35b8}.dashboard-grid{display:grid;gap:18px;grid-template-columns:minmax(0,1.4fr) minmax(280px,.8fr)}.panel{padding:22px}.panel-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.panel-header p{color:var(--muted);margin:6px 0 0}.unframed-header{margin-bottom:0}.button-row,.row-actions{display:flex;gap:10px}.filters{display:grid;gap:12px;grid-template-columns:minmax(240px,1fr);margin-bottom:18px}.replenishment-summary{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.replenishment-toolbar{align-items:center;display:grid;gap:12px;grid-template-columns:minmax(260px,1fr) auto;margin-bottom:18px}.segmented-control{align-items:center;background:#f7f9fb;border:1px solid var(--border);border-radius:8px;display:flex;gap:4px;padding:4px}.segmented-control button{background:transparent;color:var(--muted);min-height:34px;padding:0 12px;white-space:nowrap}.segmented-control button.active,.segmented-control button:hover{background:#fff;color:var(--primary);filter:none}.search-field{align-items:center;background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--muted);display:flex;gap:10px;min-height:42px;padding:0 12px}.search-field input,input,select,textarea{background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--text);font-weight:500;outline:none;width:100%}.search-field input{border:0;min-height:38px;padding:0}input,select{min-height:42px;padding:0 12px}.input-with-action{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 42px}.input-action-button{background:var(--surface-strong);color:var(--text);min-height:42px;padding:0;width:42px}.dimension-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr)) 60px}.value-unit-grid{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) 60px}.conversion-factor-grid{grid-template-columns:minmax(0,1fr) 150px}.dimension-grid select,.value-unit-grid select{padding:0 8px}.product-image-field{display:grid;gap:10px}.product-image-field img,.product-image-detail img,.product-image-unavailable{aspect-ratio:16 / 9;background:var(--surface-strong);border:1px solid var(--border);border-radius:8px;max-width:260px;object-fit:cover;width:100%}.product-image-field input[type=file]{padding:9px 12px}.product-image-field span{color:var(--muted);font-size:13px}.product-image-field strong{color:var(--danger);font-size:13px}textarea{min-height:92px;padding:12px;resize:vertical}.table-wrap{overflow-x:auto}table{border-collapse:collapse;min-width:820px;width:100%}th{background:#f7f9fb;color:var(--muted);font-size:13px;text-align:left;text-transform:uppercase}th,td{border-bottom:1px solid var(--border);padding:15px 12px;vertical-align:middle}.item-name{display:grid;gap:4px}.item-name span{color:var(--muted);font-size:13px}.clickable-row{cursor:pointer}.clickable-row:hover{background:#f8fafc}.clickable-row.inactive-row{opacity:.48}.clickable-row.inactive-row:hover{opacity:.65}.link-button{background:transparent;color:var(--text);font-weight:800;justify-content:flex-start;min-height:auto;padding:0;text-align:left}.link-button:hover{color:var(--primary);filter:none}.low-stock,.movement-type,.status{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;gap:4px;justify-content:center;padding:5px 9px;text-transform:capitalize;width:fit-content}.low-stock{background:var(--warning-light);color:var(--warning)}.status.ativo{background:var(--success-light);color:var(--success)}.status.inativo,.movement-type.saida{background:var(--danger-light);color:var(--danger)}.movement-type.entrada{background:var(--success-light);color:var(--success)}.replenishment-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;justify-content:center;min-height:28px;padding:0 10px;white-space:nowrap}.replenishment-badge.urgent{background:var(--danger-light);color:var(--danger)}.replenishment-badge.upTo7{background:var(--warning-light);color:var(--warning)}.replenishment-badge.upTo30{background:var(--primary-light);color:var(--primary)}.replenishment-badge.noConsumption{background:#f1f5f9;color:#58677a}.replenishment-empty{display:grid;gap:6px}.replenishment-empty strong{color:var(--text);font-size:18px}.replenishment-empty span{color:var(--muted)}.replenishment-note{margin-top:14px}.replenishment-list{display:grid;gap:10px}.replenishment-list-header,.replenishment-card{display:grid;grid-template-columns:minmax(260px,2fr) minmax(110px,.8fr) minmax(150px,1fr) minmax(180px,1.2fr) minmax(110px,.8fr) 40px}.replenishment-list-header{align-items:center;color:var(--muted);font-size:11px;font-weight:800;gap:16px;letter-spacing:0;padding:0 22px;text-transform:uppercase}.replenishment-card{align-items:center;background:#fff;border:1px solid var(--border);border-radius:12px;color:var(--text);gap:16px;justify-content:initial;min-height:96px;padding:16px 22px;text-align:left;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.replenishment-card:hover{background:#fbfdff;border-color:#9bb9d5;box-shadow:0 4px 12px #14325014;filter:none}.replenishment-card:focus-visible{outline:3px solid rgba(35,120,190,.35);outline-offset:2px}.replenishment-item-cell,.replenishment-value-cell{display:grid;gap:4px;min-width:0}.replenishment-item-cell strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.replenishment-item-cell strong,.replenishment-value-cell strong{font-size:16px}.replenishment-item-cell span,.replenishment-value-cell span{color:var(--muted);font-size:13px;font-weight:700}.replenishment-value-cell .is-critical{color:var(--danger)}.replenishment-status-cell{min-width:0}.replenishment-action-cell{align-items:center;color:var(--muted);display:flex;justify-content:flex-end}.replenishment-card:hover .replenishment-action-cell{color:var(--primary)}.stock-situation{align-items:center;border:1px solid var(--border);border-radius:8px;color:var(--text);display:inline-flex;font-size:13px;font-weight:800;gap:8px;min-height:34px;padding:0 10px}.stock-situation.normal{background:var(--success-light);border-color:#bfe8d3;color:var(--success)}.stock-situation.reorder{background:var(--warning-light);border-color:#f3d28b;color:var(--warning)}.stock-situation.critical{background:var(--danger-light);border-color:#ffd1c1;color:var(--danger)}.stock-situation.empty{background:#f1f5f9;border-color:#d6dee8;color:#58677a}.stock-situation.excess{background:#f2eaff;border-color:#d9c4ff;color:#6f35b8}.row-actions button{background:var(--surface-strong);color:var(--text);height:34px;min-height:34px;padding:0;width:34px}.actions-menu{position:relative;width:fit-content}.row-menu-button{background:var(--surface-strong);color:var(--text);height:34px;min-height:34px;padding:0;width:34px}.actions-dropdown{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;min-width:140px;padding:6px;position:absolute;right:0;top:40px;z-index:4}.floating-actions-dropdown{position:fixed;right:auto;z-index:50}.actions-dropdown button{background:transparent;color:var(--text);justify-content:flex-start;min-height:34px;padding:0 10px}.actions-dropdown button:hover{background:#f7f9fb;filter:none}.actions-dropdown .danger-text{color:var(--danger)}.movement-list,.low-list{display:grid;gap:10px}.movement-row,.low-list div{align-items:center;border:1px solid var(--border);border-radius:8px;display:grid;gap:12px;padding:12px}.movement-row{grid-template-columns:90px 1fr auto}.movement-row span,.low-list span{color:var(--muted);display:block;font-size:13px}.low-list div{grid-template-columns:1fr auto}.empty-state,.alert{border-radius:8px;padding:16px}.empty-state{background:#f8fafc;color:var(--muted);text-align:center}.alert.error{background:var(--danger-light);color:var(--danger);font-weight:700;margin-bottom:14px}.modal-backdrop{align-items:center;background:#0c17237a;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:20px;position:fixed;z-index:10}.modal{background:#fff;border-radius:8px;max-height:calc(100vh - 40px);max-width:760px;overflow-y:auto;padding:22px;width:100%}.modal.compact{max-width:560px}.modal.config-modal{max-width:820px}.modal.details-modal{max-width:920px}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:18px}.modal-header p{color:var(--muted);margin:6px 0 0}.form-toolbar{display:flex;justify-content:flex-end}.form-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label{color:var(--muted);display:grid;font-size:13px;font-weight:800;gap:7px}.form-grid label>span{align-items:center;display:flex;gap:8px}.form-grid label small,.field-toggle small{background:var(--primary-light);border-radius:999px;color:var(--primary);font-size:11px;font-weight:800;padding:3px 8px}.field-help{display:inline-flex;position:relative}.field-help button{align-items:center;background:#eef3f8;border:1px solid #c8d6e4;border-radius:999px;color:var(--muted);display:inline-flex;height:20px;justify-content:center;min-height:20px;padding:0;width:20px}.field-help button:hover,.field-help button:focus-visible{background:var(--primary-light);border-color:#8db9e3;color:var(--primary);filter:none}.field-help [role=tooltip]{background:#172437;border-radius:8px;bottom:calc(100% + 8px);box-shadow:var(--shadow);color:#fff;font-size:12px;font-weight:700;left:50%;line-height:1.35;max-width:min(280px,76vw);opacity:0;padding:9px 10px;pointer-events:none;position:absolute;transform:translate(-50%) translateY(4px);transition:opacity .16s ease,transform .16s ease;visibility:hidden;width:max-content;z-index:30}.field-help [role=tooltip]:after{border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #172437;content:"";left:50%;position:absolute;top:100%;transform:translate(-50%)}.field-help:hover [role=tooltip],.field-help:focus-within [role=tooltip]{opacity:1;transform:translate(-50%) translateY(0);visibility:visible}.full{grid-column:1 / -1}.form-actions{display:flex;gap:10px;justify-content:flex-end}.delete-warning{background:var(--danger-light);border:1px solid #ffd1c1;border-radius:8px;color:var(--danger);display:grid;gap:10px;margin-bottom:18px;padding:16px}.delete-warning p{margin:0}.details-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.detail-section{border:1px solid var(--border);border-radius:8px;display:grid;gap:10px;padding:16px}.detail-section h3{font-size:16px;margin:0 0 4px}.detail-row{border-top:1px solid #eef3f8;display:grid;gap:4px;padding-top:10px}.detail-row:first-of-type{border-top:0;padding-top:0}.detail-row span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.detail-row strong{font-size:14px;overflow-wrap:anywhere}.product-image-detail{display:grid;gap:8px}.product-image-unavailable{align-items:center;color:var(--muted);display:flex;font-size:13px;font-weight:800;gap:8px;justify-content:center;padding:16px;text-align:center}.product-image-detail a{color:var(--primary);font-size:13px;font-weight:800;text-decoration:none}.field-config-section{border-top:1px solid var(--border);display:grid;gap:12px;padding:18px 0}.field-config-section h3{font-size:16px;margin:0}.hint{color:var(--muted);font-size:14px;margin:0}.optional-field-grid{display:grid;gap:10px}.field-mode-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.field-mode-card{align-items:flex-start;background:#fff;border:1px solid var(--border);color:var(--text);display:grid;gap:8px;justify-content:initial;min-height:138px;padding:16px;position:relative;text-align:left}.field-mode-card:hover{border-color:#9bb9d5;filter:none}.field-mode-card.selected{background:var(--primary-light);border-color:#8db9e3;box-shadow:0 0 0 3px #123f6d14}.field-mode-card strong{font-size:16px}.field-mode-card small{color:var(--muted);font-size:13px;font-weight:700;line-height:1.35}.mode-check{align-items:center;background:#fff;border:1px solid var(--border);border-radius:999px;color:var(--primary);display:flex;height:24px;justify-content:center;position:absolute;right:12px;top:12px;width:24px}.field-group-list{display:grid;gap:14px}.field-config-group{border:1px solid var(--border);border-radius:8px;display:grid;gap:12px;padding:14px}.field-config-group-header{display:grid;gap:4px}.field-config-group-header h4,.item-form-section-header h3{font-size:15px;margin:0}.field-config-group-header p,.item-form-section-header p{color:var(--muted);font-size:13px;margin:0}.field-toggle,.field-order-row{align-items:center;border:1px solid var(--border);border-radius:8px;display:flex;gap:10px;min-height:42px;padding:10px 12px}.optional-field-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.field-toggle{cursor:pointer;font-weight:700;justify-content:flex-start}.field-toggle.locked{background:#eef3f8;border-color:#c8d6e4;color:var(--text);cursor:not-allowed;font-weight:800}.field-toggle input{height:16px;min-height:16px;width:16px}.field-toggle input:disabled{cursor:not-allowed}.field-order-list{display:grid;gap:8px}.field-order-row{cursor:grab;display:grid;grid-template-columns:auto 1fr auto;justify-content:initial;position:relative}.field-order-row>span{font-weight:700}.field-order-row:active{cursor:grabbing}.field-order-row.last-moved{background:var(--primary-light);border-color:#8db9e3;box-shadow:0 0 0 3px #123f6d14}.field-order-row.drop-target:before{background:var(--primary);border-radius:999px;content:"";height:4px;left:10px;position:absolute;right:10px;top:-8px}.field-order-row small{align-items:center;background:#f7f9fb;border-radius:999px;color:var(--muted);display:inline-flex;font-size:12px;font-weight:800;height:24px;justify-content:center;width:24px}.drag-handle{color:var(--muted)}.switch-toggle input,.inline-switch input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#c8d6e4;border:0;border-radius:999px;cursor:pointer;height:22px;min-height:22px;padding:0;position:relative;transition:background .18s ease;width:40px}.switch-toggle input:after,.inline-switch input:after{background:#fff;border-radius:999px;content:"";height:18px;left:2px;position:absolute;top:2px;transition:transform .18s ease;width:18px}.switch-toggle input:checked,.inline-switch input:checked{background:var(--primary)}.switch-toggle input:checked:after,.inline-switch input:checked:after{transform:translate(18px)}.item-form-grid{gap:18px}.item-form-section{border:1px solid var(--border);border-radius:8px;display:grid;gap:14px;padding:16px}.item-form-section:first-of-type{background:#fbfcfe}.item-form-section-header{display:grid;gap:4px}.inline-switch{align-items:center;display:flex;min-height:42px}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{align-items:center;gap:18px;flex-direction:row;overflow-x:auto;padding:14px}.brand{margin:0}.sidebar-nav{display:flex;min-width:max-content}.logout-button{margin-top:0;min-width:92px;width:auto}.sidebar-user{margin-bottom:0;min-width:220px}.sidebar-nav button{width:auto}.main-area{padding:18px}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stock-situation-cards{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.replenishment-list-header,.replenishment-card{gap:12px;grid-template-columns:minmax(180px,1.6fr) minmax(78px,.6fr) minmax(112px,.85fr) minmax(138px,1fr) minmax(82px,.65fr) 28px}.replenishment-card,.replenishment-list-header{padding-left:18px;padding-right:18px}}@media(max-width:680px){.topbar,.panel-header{align-items:stretch;flex-direction:column}.topbar-actions,.button-row{width:100%}.global-search,.button-row button{flex:1}.replenishment-toolbar{grid-template-columns:1fr}.replenishment-list-header{display:none}.replenishment-list{gap:10px}.replenishment-card{align-items:start;gap:14px 12px;grid-template-columns:repeat(2,minmax(0,1fr));min-height:0;padding:16px;position:relative}.replenishment-item-cell{grid-column:1 / -1;padding-right:32px}.replenishment-item-cell strong{font-size:15px}.replenishment-status-cell{grid-column:1 / -1;grid-row:2}.replenishment-action-cell{height:20px;position:absolute;right:16px;top:18px}.replenishment-value-cell{gap:3px}.replenishment-value-cell:nth-of-type(2),.replenishment-value-cell:nth-of-type(3),.replenishment-value-cell:nth-of-type(4){grid-column:auto}.replenishment-card>.replenishment-value-cell:nth-of-type(2){grid-column:1;grid-row:3}.replenishment-card>.replenishment-value-cell:nth-of-type(3){grid-column:2;grid-row:3}.replenishment-card>.replenishment-value-cell:nth-of-type(4){grid-column:1 / -1;grid-row:4}.replenishment-value-cell:before{color:var(--muted);content:attr(data-label);font-size:11px;font-weight:800;text-transform:uppercase}.segmented-control{align-items:stretch;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid,.dashboard-grid,.filters,.form-grid,.details-grid,.dimension-grid,.value-unit-grid,.field-mode-grid,.movement-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}}
