.situacao-group{align-items:center;gap:4px;display:inline-flex}.situacao-btn{border:1px solid var(--line,#d8dfd9);width:30px;height:30px;color:var(--muted,#56635d);font:inherit;cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:.95rem;font-weight:800;line-height:1;display:inline-flex}.situacao-btn:hover{border-color:#17211d59}.situacao-btn.situacao-perdido.is-active{color:#c60000;background:#c6000014;border-color:#c6000073}.situacao-btn.situacao-analise.is-active{color:#b8860b;background:#ffc10729;border-color:#b8860b73}.situacao-btn.situacao-ganho.is-active{color:#2f6b4f;background:#2f6b4f1a;border-color:#2f6b4f73}.sort-header{color:inherit;font:inherit;text-transform:uppercase;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:800;display:inline-flex}.sort-header .sort-marker{opacity:.45;font-size:.75rem}.sort-header.is-active .sort-marker,.sort-header:hover .sort-marker{opacity:1}.report-bar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin:0 0 14px;display:flex}.report-fields{flex-wrap:wrap;gap:10px;display:flex}.report-fields label{color:var(--muted,#56635d);text-transform:uppercase;letter-spacing:.03em;gap:4px;font-size:.78rem;font-weight:700;display:grid}.report-fields select{border:1px solid var(--line,#d8dfd9);min-width:140px;font:inherit;color:var(--ink,#17211d);background:#fff;border-radius:8px;padding:8px 10px}.pager{color:var(--muted,#56635d);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;font-size:.88rem;display:flex}.pager button:disabled{opacity:.5;cursor:not-allowed}.saved-budgets-scroll{margin-top:4px}.saved-budgets-table{border-collapse:collapse;background:#fff;width:100%}.saved-budgets-table th,.saved-budgets-table td{border-bottom:1px solid var(--line,#d8dfd9);text-align:left;vertical-align:middle;white-space:nowrap;padding:10px 12px}.saved-budgets-table td{color:var(--ink,#17211d);font-size:.9rem}.brand-row{align-items:center;gap:12px;margin-bottom:10px;display:flex}.brand-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-left:auto;display:flex}.brand-actions .session-chip{margin-left:0}.brand-mark,.brand-logo{object-fit:contain;background:#fff;border-radius:8px;flex:none;width:42px;height:42px;display:block}.brand-row h1,.brand-title{letter-spacing:-.02em;color:var(--ink,#17211d);margin:0;font-size:clamp(1.55rem,4vw,2.15rem);font-weight:800;line-height:1.1}.session-chip{text-align:right;justify-items:end;gap:2px;margin-left:auto;display:grid}.session-chip strong{font-size:.9rem}.session-chip span{color:var(--muted,#56635d);font-size:.78rem}.session-chip-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:6px;display:flex}.session-chip-actions a,.session-chip-actions button{box-sizing:border-box;text-align:center;border:1px solid var(--line,#d8dfd9);color:var(--ink,#17211d);font:inherit;cursor:pointer;background:#fff;border-radius:8px;padding:6px 10px;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-block}.session-chip-actions a:hover,.session-chip-actions button:hover{border-color:#c6000059}.btn{font:inherit;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:.35rem;padding:10px 14px;font-weight:700;text-decoration:none;display:inline-flex}.btn-primary,.btn.primary{background:var(--accent,var(--brand,#c60000));color:#fff;border:0}.btn-secondary,.btn.ghost{border:1px solid var(--line,#d8dfd9);color:var(--ink,#17211d);background:#fff}.btn-danger,.btn.danger,button.danger{color:var(--danger,#c60000);background:#fff1f0;border:0}.btn-compact{padding:6px 10px;font-size:.82rem}.btn:disabled,button:disabled{opacity:.55;cursor:not-allowed}.btn-secondary:hover,.btn.ghost:hover{border-color:#c6000059}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f2f2f2;--bg-accent:#ebebeb;--paper:#fff;--panel-warm:#f7f7f7;--ink:#17211d;--muted:#5c5c5c;--line:#e0e0e0;--brand:#c60000;--brand-2:#c60000;--accent:#c60000;--accent-light:#fce8e8;--accent-dark:#c60000;--good:#2d6a4f;--good-bg:#ebebeb;--warn:#4f3b00;--warn-bg:#fff8db;--danger:#b42318;--shadow:0 16px 40px #14251f1c;--radius:8px;color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.4}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:linear-gradient(180deg, #c6000014, transparent 260px), var(--bg);min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}.app{width:min(1480px,100%);max-width:none;margin:0 auto;padding:22px 16px 48px}.hero{margin-bottom:18px}.brand-logo{object-fit:contain;background:#fff;border-radius:8px;flex:none;width:42px;height:42px;display:block}.eyebrow{color:var(--accent-dark);text-transform:uppercase;letter-spacing:0;margin:0;font-size:.76rem;font-weight:800}h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.55rem,4vw,2.15rem);line-height:1.1}.lede{color:var(--muted);max-width:62ch;margin:10px 0 18px}.model-picker{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:4px;display:flex}.model-picker-label{letter-spacing:0;text-transform:uppercase;color:var(--muted);font-size:.76rem;font-weight:800}.calculator-model{display:contents}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.grid{grid-template-columns:1.05fr .95fr;gap:20px;display:grid}.card{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #e0e0e0e6;margin-bottom:14px;padding:18px}.card h2{letter-spacing:-.01em;margin:0 0 14px;font-size:1.05rem;font-weight:800}.coil-card .coil-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.input-readonly{cursor:default;background:var(--bg-accent)!important;color:var(--muted)!important}.pricing-results{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pricing-result{background:var(--bg-accent);border-radius:8px;padding:14px}.pricing-result span{color:var(--muted);margin-bottom:4px;font-size:.75rem;font-weight:700;display:block}.pricing-result b{letter-spacing:-.02em;font-size:1.1rem}.pricing-result.highlight{background:var(--good-bg)}.pricing-result.highlight b{color:var(--ink)}.field.span-all{flex-direction:column;grid-column:1/-1;gap:6px;margin-top:12px;display:flex}.results-grid{grid-template-columns:1fr}.span-all{grid-column:1/-1}.items-panel h2{margin-bottom:4px;font-size:1.05rem;font-weight:800}.items-panel-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.items-panel-head .note{max-width:52ch;color:var(--muted);margin-top:4px}.table-scroll{border:1px solid var(--line);background:#fff;border-radius:8px;margin-top:12px;overflow-x:auto}.items-table{border-collapse:collapse;table-layout:auto;background:#fff;width:max-content;min-width:100%;font-size:.88rem}.items-table th,.items-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;white-space:nowrap;width:auto;padding:8px 10px;overflow:visible}.items-table th{background:var(--accent-light);color:#24312c;text-transform:uppercase;text-align:center;z-index:1;letter-spacing:0;white-space:pre-line;font-size:.72rem;font-weight:800;line-height:1.25;position:sticky;top:0}.items-table .delete-column,.items-table .item-number-column{white-space:nowrap;text-align:center;width:1%}.item-number-cell,.item-index{color:var(--muted);text-align:center;font-weight:800}.items-table td.formula-cell{background:var(--accent-light)}.items-table th.boolean-column,.items-table td.boolean-column{text-align:center;width:1%}.cell-check{width:18px;height:18px;accent-color:var(--accent)}.cell-control-stack{gap:6px;display:grid}.cell-control{border:1px solid var(--line);width:auto;min-width:4.5ch;max-width:none;min-height:34px;color:var(--ink);field-sizing:content;background:#fff;border-radius:8px;padding:6px 8px;font-size:.86rem}.cell-control:disabled{color:#66726d;opacity:1;cursor:not-allowed;background:#f2f2f2}.cell-control.linked-active{border-color:var(--accent);background:#fff;box-shadow:inset 0 0 0 1px #c6000029}.calculated-cell{color:var(--accent-dark);white-space:nowrap;font-size:.86rem;font-weight:800;display:inline-block}select.cell-control.item-kind-select{font-size:.78rem;font-weight:700}.trash-button{color:#b42318;cursor:pointer;background:#fff1f0;border:0;border-radius:8px;place-items:center;width:32px;height:32px;font-size:1.1rem;font-weight:700;line-height:1;display:grid}.trash-button:disabled{opacity:.35;cursor:not-allowed}.general-factor-field{max-width:280px;margin:12px 0 0}.itens-shared{gap:10px;margin-top:12px}.itens-shared>span{color:var(--ink);font-size:1.05rem;font-weight:700;line-height:1.3}.itens-shared .chips{gap:10px}.itens-shared .chip{min-height:42px;padding:10px 18px;font-size:1rem;font-weight:700}.unit-cell{white-space:nowrap;color:var(--muted);font-size:.78rem}.unit-cell strong{color:var(--ink);font-size:.85rem;display:block}.unit-cell .muted,.muted{color:var(--muted)}.items-footnote{margin-top:12px;margin-bottom:0}.btn-icon:disabled{opacity:.35;cursor:not-allowed}.btn-pdf{padding:12px 18px;font-size:.95rem;box-shadow:0 10px 22px #c45c2647}.pdf-bar{background:var(--accent-light);border:1px solid #f2c2c2;border-radius:8px;flex-wrap:wrap;align-items:center;gap:14px;margin:12px 0 16px;padding:12px 14px;display:flex}.pdf-dock{z-index:30;pointer-events:none;justify-content:flex-end;margin-top:8px;display:flex;position:sticky;bottom:16px}.pdf-dock .btn{pointer-events:auto}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.section-head h2{margin-bottom:0}.btn:disabled{opacity:.4;cursor:not-allowed}.fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field.span-2{grid-column:span 2}.field span{color:var(--muted);font-size:.8rem;font-weight:650}input,select{border:1px solid var(--line);background:var(--panel-warm);width:100%;color:var(--ink);border-radius:8px;padding:10px 12px}input:focus,select:focus{border-color:var(--accent);background:#fff;outline:3px solid #c6000029}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);background:var(--panel-warm);color:var(--muted);cursor:pointer;border-radius:8px;padding:5px 10px;font-size:.78rem}.chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.blank-head,.blank-row{display:none}.swatch{border-radius:8px;width:12px;height:12px}.row-actions{justify-content:space-between;gap:10px;margin-top:14px;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:8px;padding:10px 14px;font-weight:700;transition:background-color .15s,border-color .15s,filter .15s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){filter:brightness(.9)}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover:not(:disabled){filter:brightness(1.15)}.btn-secondary{border:1px solid var(--line);color:var(--ink);background:#fff}.btn-secondary:hover:not(:disabled){background:#f7f8f7;border-color:#17211d66}.btn-danger{color:var(--danger,#c60000);background:#fff1f0;border:1px solid #0000}.btn-danger:hover:not(:disabled){background:#ffe4e1;border-color:#c6000073}.actions{flex-wrap:wrap;gap:8px;display:flex}.editing-banner{background:var(--accent-light);color:var(--ink);border-radius:8px;margin:0 0 12px;padding:10px 12px;font-size:.9rem}.editing-banner strong{color:inherit;font-weight:800}.saved-budgets-table tr.is-editing td{background:#c600000a}.saved-budgets{margin-top:4px}.saved-budgets-table{border-collapse:collapse;table-layout:auto;background:#fff;width:max-content;min-width:100%}.saved-budgets-table th,.saved-budgets-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;white-space:nowrap;width:auto;padding:10px 12px;overflow:visible}.saved-budgets-table th{background:var(--accent-light);color:#24312c;text-transform:uppercase;font-size:.72rem;font-weight:800}.saved-budgets-table td{color:var(--ink);font-size:.9rem;line-height:1.25}.saved-budget-actions{flex-wrap:nowrap;align-items:center;gap:6px;width:max-content;display:flex}.saved-budget-actions .btn{flex:none}.btn-compact{white-space:nowrap;padding:6px 10px;font-size:.8rem;line-height:1.2}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.summary-item{background:#f2f2f2;border-radius:8px;padding:12px}.summary-item span{color:var(--muted);font-size:.8rem;font-weight:700;display:block}.summary-item strong{font-size:1.05rem}.client-fields-card{margin-bottom:14px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;display:grid}.client-fields-card .grid-2{margin:0}label.field{color:var(--muted);gap:6px;font-size:.84rem;font-weight:700;display:grid}label.field span{white-space:pre-line}label.field input,label.field select{border:1px solid var(--line);background:var(--panel-warm);width:100%;color:var(--ink);border-radius:8px;padding:10px 12px}.status{min-height:1.3em;color:var(--muted);margin:8px 2px 0;font-size:.92rem}.status.error{color:var(--danger)}.status.ok{color:var(--good)}.btn-ghost{color:var(--muted);background:0 0}.btn-icon{background:var(--bg-accent);width:36px;height:36px;color:var(--muted);cursor:pointer;border:0;border-radius:8px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.kpi{background:var(--bg-accent);border-radius:8px;padding:12px}.kpi b{letter-spacing:-.03em;font-size:1.15rem;display:block}.kpi span{color:var(--muted);font-size:.75rem}.kpi.good{background:var(--good-bg)}.kpi.good b{color:var(--good)}.error{color:#8a2b2b;background:#fdeeee;border-radius:8px;padding:12px 14px}.pattern-bar{border:1px solid var(--line);background:repeating-linear-gradient(45deg,#eceff2,#eceff2 8px,#e4e8ec 8px 16px);border-radius:8px;width:100%;height:54px;display:flex;overflow:hidden}.pattern-seg{color:#fff;text-align:center;justify-content:center;align-items:center;min-width:0;padding:0 6px;font-size:.75rem;font-weight:700;display:flex}.pattern-seg.waste{color:var(--muted);font-weight:650}.pattern-seg.refile{color:#5b6773;background:repeating-linear-gradient(45deg,#c8d0d8,#c8d0d8 4px,#b8c2cc 4px 8px);flex-shrink:0;font-size:.65rem;font-weight:700}.lane-refile{background:repeating-linear-gradient(45deg,#c8d0d8,#c8d0d8 4px,#b8c2cc 4px 8px);flex-shrink:0}.program{border:1px solid var(--line);border-radius:8px;margin-top:12px;padding:14px}.program-loss{color:var(--muted);margin:10px 0 0;font-size:.86rem}.program-loss strong{color:var(--ink)}.program .cut-preview{margin-bottom:10px}.program .cut-preview .pattern-bar{border-radius:8px;margin-bottom:0}.cut-preview-gap{height:12px}.program .cut-preview .lanes{border:1px solid var(--line);background:var(--bg-accent);border-radius:8px;align-items:flex-start;min-height:0;overflow:hidden}.program .cut-preview .lane .blank-rect{border-radius:0}.lanes{align-items:flex-start;gap:0;margin-top:0;display:flex}.lane{flex-direction:column;gap:0;min-width:0;display:flex}.lane-waste{background:repeating-linear-gradient(45deg,#eceff2,#eceff2 8px,#e4e8ec 8px 16px)}.lane-spacer{background:0 0;flex-shrink:0}.blank-rect{color:#fff;text-align:center;box-sizing:border-box;border-radius:0;place-items:center;height:64px;padding:6px;font-size:.8rem;font-weight:700;display:grid}.table-wrap{margin-top:14px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:8px 6px}th{color:var(--muted);font-size:.75rem}.alt{text-align:left;border:1px solid var(--line);background:var(--panel-warm);cursor:pointer;border-radius:8px;width:100%;margin-top:8px;padding:10px 12px}.alt.active{border-color:var(--brand-2);background:#f7f7f7}.note{color:var(--muted);margin-top:12px;font-size:.82rem}.loss-info-note{background:color-mix(in srgb, var(--surface,#fff) 88%, #1f6f8b 12%);border-left:3px solid #1f6f8b;margin-top:0;margin-bottom:12px;padding:10px 12px}.loss-info-note strong:first-child{color:#16384a;display:inline}.empty{color:var(--muted)}@media (width<=900px){.summary-grid,.grid-2{grid-template-columns:1fr}.client-fields-card .grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.hero,.grid,.fields,.coil-fields,.kpis,.items-panel-head{grid-template-columns:1fr;display:grid}.hero{align-items:start}.items-panel-head{flex-direction:column;display:flex}}@media print{body{background:#fff}.hero-actions,.btn,.btn-icon,.chips,.pdf-dock,.pdf-bar{display:none!important}.card{box-shadow:none}}
