:root{--primary: #4f46e5;--primary-hover: #4338ca;--primary-soft: #eef2ff;--primary-glow: rgba(79, 70, 229, .35);--accent: #06b6d4;--accent-soft: #ecfeff;--bg: #f4f6fb;--bg-elevated: #ffffff;--surface: #ffffff;--surface-1: #f8fafc;--surface-2: #f1f5f9;--surface-glass: rgba(255, 255, 255, .72);--sidebar-width: 252px;--sidebar-collapsed: 72px;--sidebar-bg: #0f172a;--sidebar-bg-alt: #1e293b;--sidebar-border: rgba(255, 255, 255, .06);--sidebar-text: #94a3b8;--sidebar-text-active: #ffffff;--sidebar-active: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);--sidebar-hover: rgba(255, 255, 255, .06);--text: #0f172a;--text-secondary: #334155;--text-muted: #64748b;--text-inverse: #f8fafc;--border: #e2e8f0;--border-strong: #cbd5e1;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 4px 12px rgba(15, 23, 42, .06);--shadow-md: 0 12px 32px rgba(15, 23, 42, .08);--shadow-lg: 0 24px 48px rgba(15, 23, 42, .12);--shadow-glow: 0 8px 24px var(--primary-glow);--danger: #dc2626;--danger-soft: #fef2f2;--warning: #d97706;--warning-soft: #fffbeb;--success: #059669;--success-soft: #ecfdf5;--info: #2563eb;--info-soft: #eff6ff;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 999px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--font-sans: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--font-display: "Inter", system-ui, sans-serif;--content-max: 1440px;--header-height: 64px}html{height:100%;overflow:hidden;--mat-sys-background: light-dark(#fef8fc, #151316);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#f5eff4, #323033);--mat-sys-inverse-primary: light-dark(#d5baff, #7d00fa);--mat-sys-inverse-surface: light-dark(#323033, #e6e1e6);--mat-sys-on-background: light-dark(#1d1b1e, #e6e1e6);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #42008a);--mat-sys-on-primary-container: light-dark(#5f00c0, #ecdcff);--mat-sys-on-primary-fixed: light-dark(#270057, #270057);--mat-sys-on-primary-fixed-variant: light-dark(#5f00c0, #5f00c0);--mat-sys-on-secondary: light-dark(#ffffff, #352d40);--mat-sys-on-secondary-container: light-dark(#4b4357, #eadef7);--mat-sys-on-secondary-fixed: light-dark(#1f182a, #1f182a);--mat-sys-on-secondary-fixed-variant: light-dark(#4b4357, #4b4357);--mat-sys-on-surface: light-dark(#1d1b1e, #e6e1e6);--mat-sys-on-surface-variant: light-dark(#49454e, #e8e0eb);--mat-sys-on-tertiary: light-dark(#ffffff, #003737);--mat-sys-on-tertiary-container: light-dark(#004f4f, #00fbfb);--mat-sys-on-tertiary-fixed: light-dark(#002020, #002020);--mat-sys-on-tertiary-fixed-variant: light-dark(#004f4f, #004f4f);--mat-sys-outline: light-dark(#7b757f, #958e99);--mat-sys-outline-variant: light-dark(#cbc4cf, #49454e);--mat-sys-primary: light-dark(#7d00fa, #d5baff);--mat-sys-primary-container: light-dark(#ecdcff, #5f00c0);--mat-sys-primary-fixed: light-dark(#ecdcff, #ecdcff);--mat-sys-primary-fixed-dim: light-dark(#d5baff, #d5baff);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#645b70, #cec2db);--mat-sys-secondary-container: light-dark(#eadef7, #4b4357);--mat-sys-secondary-fixed: light-dark(#eadef7, #eadef7);--mat-sys-secondary-fixed-dim: light-dark(#cec2db, #cec2db);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#fef8fc, #151316);--mat-sys-surface-bright: light-dark(#fef8fc, #3b383c);--mat-sys-surface-container: light-dark(#f2ecf1, #211f22);--mat-sys-surface-container-high: light-dark(#ede6eb, #2b292d);--mat-sys-surface-container-highest: light-dark(#e6e1e6, #363437);--mat-sys-surface-container-low: light-dark(#f8f2f6, #1d1b1e);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0f0d11);--mat-sys-surface-dim: light-dark(#ded8dd, #151316);--mat-sys-surface-tint: light-dark(#7d00fa, #d5baff);--mat-sys-surface-variant: light-dark(#e8e0eb, #49454e);--mat-sys-tertiary: light-dark(#006a6a, #00dddd);--mat-sys-tertiary-container: light-dark(#00fbfb, #004f4f);--mat-sys-tertiary-fixed: light-dark(#00fbfb, #00fbfb);--mat-sys-tertiary-fixed-dim: light-dark(#00dddd, #00dddd);--mat-sys-neutral-variant20: #332f37;--mat-sys-neutral10: #1d1b1e;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem var(--font-sans);--mat-sys-body-large-font: var(--font-sans);--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem var(--font-sans);--mat-sys-body-medium-font: var(--font-sans);--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem var(--font-sans);--mat-sys-body-small-font: var(--font-sans);--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem var(--font-display);--mat-sys-display-large-font: var(--font-display);--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem var(--font-display);--mat-sys-display-medium-font: var(--font-display);--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem var(--font-display);--mat-sys-display-small-font: var(--font-display);--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem var(--font-display);--mat-sys-headline-large-font: var(--font-display);--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem var(--font-display);--mat-sys-headline-medium-font: var(--font-display);--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem var(--font-display);--mat-sys-headline-small-font: var(--font-display);--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem var(--font-sans);--mat-sys-label-large-font: var(--font-sans);--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem var(--font-sans);--mat-sys-label-medium-font: var(--font-sans);--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem var(--font-sans);--mat-sys-label-small-font: var(--font-sans);--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem var(--font-display);--mat-sys-title-large-font: var(--font-display);--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem var(--font-sans);--mat-sys-title-medium-font: var(--font-sans);--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem var(--font-sans);--mat-sys-title-small-font: var(--font-sans);--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12}body{color-scheme:light;background-color:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:.9375rem;line-height:1.5;-webkit-font-smoothing:antialiased;margin:0;height:100%;overflow:hidden}app-root{display:block;height:100%;min-height:100dvh}app-shell{display:block;height:100%;min-height:100dvh}.full{width:100%;display:block;margin-bottom:4px}.app-page{animation:page-in .35s ease}@keyframes page-in{0%{opacity:0}to{opacity:1}}.page-header,.page-hero{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-6);gap:var(--space-4);flex-wrap:wrap}.page-hero{padding:var(--space-6);border-radius:var(--radius-xl);background:linear-gradient(135deg,#4f46e51f,#06b6d40f),var(--surface);border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));box-shadow:var(--shadow-sm)}.page-header h1,.page-hero h1{font-size:clamp(1.35rem,2.5vw,1.75rem);font-weight:800;letter-spacing:-.03em;margin:0;color:var(--text)}.subtitle{color:var(--text-muted);font-size:.9rem;margin:.35rem 0 0;max-width:52ch}.header-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.mat-column-actions{text-align:right;width:96px}.plain-form input,.plain-form select,.plain-form textarea{padding:.625rem .75rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.875rem;font-family:inherit;background-color:#fff;caret-color:var(--text, #0f172a);color:var(--text, #0f172a);width:100%;box-sizing:border-box;height:2.625rem;min-height:2.625rem;line-height:1.35;box-shadow:none;transition:border-color .15s,box-shadow .15s,background-color .15s}.plain-form input:hover:not(:disabled):not(:focus),.plain-form select:hover:not(:disabled):not(:focus),.plain-form textarea:hover:not(:disabled):not(:focus){border-color:color-mix(in srgb,var(--primary, #4f46e5) 45%,#cbd5e1)}.plain-form input:focus,.plain-form input:focus-visible,.plain-form select:focus,.plain-form select:focus-visible,.plain-form textarea:focus,.plain-form textarea:focus-visible{outline:2px solid var(--primary, #4f46e5);outline-offset:1px;border-color:var(--primary, #4f46e5);background-color:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--primary, #4f46e5) 22%,transparent)}.plain-form select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:2.5rem;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:1rem}.plain-form textarea{height:auto;min-height:5rem;resize:vertical}.plain-form table.data-table select{width:100%;min-width:8rem;margin:0}.plain-form input[type=checkbox],.plain-form input[type=radio]{width:1rem;height:1rem;min-height:0;padding:0;box-shadow:none;flex-shrink:0;caret-color:transparent}.plain-form input[type=checkbox]:focus,.plain-form input[type=checkbox]:focus-visible,.plain-form input[type=radio]:focus,.plain-form input[type=radio]:focus-visible{outline:2px solid var(--primary, #4f46e5);outline-offset:2px;box-shadow:none}.plain-form input[readonly],.plain-form input.input-readonly{background:var(--surface-2);color:var(--text-muted);cursor:not-allowed}.plain-form .field-hint{display:block;font-size:.75rem;color:var(--text-muted);margin-top:.15rem;line-height:1.4}.plain-form .field-hint--loading{color:var(--primary, #4f46e5);font-style:italic}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem 1.25rem;border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .18s ease;font-family:inherit;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,#6366f1 100%);color:#fff;box-shadow:var(--shadow-glow)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-hover) 0%,#4f46e5 100%);transform:translateY(-1px)}.btn-secondary{background:var(--surface-2);color:var(--text-secondary);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--border)}.btn-outline{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);box-shadow:var(--shadow-xs)}.btn-outline:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 35%,var(--border));color:var(--primary);background:var(--primary-soft)}.btn-danger{background:var(--danger-soft);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 25%,transparent)}.btn-danger:hover:not(:disabled){background:var(--danger);color:#fff;border-color:var(--danger)}.btn-sm{padding:.35rem .75rem;font-size:.8rem}.alert{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.875rem}.alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.alert-info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.alert-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.alert-warn{background:var(--warning-soft, #fffbeb);color:#92400e;border:1px solid #fcd34d}.pagination-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.pagination-bar .pagination-info{font-size:.8125rem;color:var(--text-muted)}.pagination-bar .pagination-controls{display:flex;align-items:center;gap:.35rem}.pagination-bar .pagination-page{min-width:2rem;padding:.35rem .5rem;font-size:.8125rem}.loading{text-align:center;padding:2rem;color:var(--text-muted)}.filters-panel{margin-bottom:var(--space-5);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-xs)}.filters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.85rem 1rem}.filters-grid .form-group{margin-bottom:0}.filters-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--border)}.form-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-xs)}.form-card h3{margin:0 0 1rem;font-size:1rem;font-weight:700;letter-spacing:-.02em}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem;align-items:start}.form-group{display:flex;flex-direction:column;gap:.5rem;min-width:0}.form-group label{font-size:.875rem;font-weight:500}.form-group:focus-within>label{color:var(--primary, #4f46e5);font-weight:700}.form-group.checkbox-group{grid-column:1/-1}.form-group.checkbox-group .checkbox-label{display:flex;align-items:center;gap:.5rem;font-weight:400}.form-group.checkbox-group .field-hint{display:block;font-size:.75rem;color:var(--text-muted);margin-top:.35rem;line-height:1.4}.form-group.span-2{grid-column:1/-1}.form-actions-inline{grid-column:1/-1;display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.25rem}.search-bar{display:flex;gap:.75rem;margin-bottom:1.5rem}.search-bar input{flex:1;min-width:0}.table-container{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}table.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem}table.data-table th,table.data-table td{padding:.85rem 1rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}table.data-table th{position:sticky;top:0;z-index:2;background:var(--surface-1);font-weight:700;color:var(--text-muted);font-size:.6875rem;text-transform:uppercase;letter-spacing:.04em}table.data-table tbody tr{transition:background .12s ease}table.data-table tbody tr:nth-child(2n) td{background:color-mix(in srgb,var(--surface-1) 55%,transparent)}table.data-table tr:last-child td{border-bottom:none}table.data-table tbody tr:hover td{background:var(--primary-soft)}table.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}table.data-table th.sortable:hover{color:var(--primary)}.actions{display:flex;gap:.35rem}.cards-mobile{display:none}.item-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-xs)}.item-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.75rem}.item-card .card-header strong{font-size:.95rem;line-height:1.3}.item-card dl{margin:0;display:grid;gap:.5rem}.item-card dl div{display:grid;grid-template-columns:110px 1fr;gap:.5rem;font-size:.85rem}.item-card dl dt{color:var(--text-muted);font-weight:500}.item-card dl dd{margin:0;word-break:break-word}.item-card .card-actions{margin-top:1rem;display:flex;gap:.5rem}@media(max-width:960px){.form-grid{grid-template-columns:1fr}.form-actions-inline{flex-direction:column}.form-actions-inline .btn{width:100%}.search-bar{flex-direction:column}.search-bar .btn{width:100%}.cards-mobile{display:flex;flex-direction:column;gap:.75rem}.desktop-only{display:none!important}.page-header,.page-hero{flex-direction:column;align-items:stretch}.header-actions,.hero-actions,.page-hero-actions{width:100%}.header-actions .btn,.hero-actions .btn,.page-hero-actions .btn{flex:1 1 auto}.filters-grid,.filters-panel .filters-grid{grid-template-columns:1fr}.modal-overlay{padding:0;align-items:stretch}.modal-panel,.modal-panel--wide,.modal-panel-wide{max-width:100%;max-height:100dvh;min-height:100dvh;border-radius:0}.table-container:has(table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table)){overflow:visible;border:0;background:transparent;box-shadow:none}:has(>table.data-table.items-table),:has(>table.data-table.items-grid-table),:has(>table.data-table.simulacao-grid),:has(>table.data-table.mapping-table),:has(>table.data-table.preview-table),:has(>table.data-table.sheet-preview-table),:has(>table.data-table.produto-busca-table),:has(>table.data-table.precos-grid),:has(>table.data-table.import-preview-table),:has(>table.data-table.faturamento-table),:has(>table.data-table.previa-table),:has(>table.data-table.viewer-table),:has(>table.data-table.keep-table),.grid-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table){display:block!important;width:100%}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) thead,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) .mat-mdc-header-row{display:none!important}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody tr,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) .mat-mdc-row{display:block!important}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody{display:flex;flex-direction:column;gap:.75rem}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody tr{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.75rem 1rem;box-shadow:var(--shadow-xs)}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody tr.is-group-row,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody tr.md-group-row{padding:.65rem .85rem;background:var(--surface-2)}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody tr.is-group-row td,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody tr.md-group-row td{display:block;padding:0;border:0;background:transparent!important}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody tr.is-group-row td:before,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody tr.md-group-row td:before{display:none}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) .mat-mdc-cell{display:flex!important;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.4rem 0;border:0;background:transparent!important}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td:first-child:not(.col-check):not(.col-sel):not(.actions):not(.acao){font-weight:700;font-size:.95rem;padding-bottom:.55rem}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td:before{content:attr(data-label);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);flex:0 0 38%;max-width:9rem}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td.col-check,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td.col-sel{justify-content:flex-start}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td.col-check:before,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td.col-sel:before{display:none}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td.actions,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td.acao{justify-content:flex-end;flex-wrap:wrap;padding-top:.65rem;margin-top:.25rem;border-top:1px solid var(--border)}table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td.actions:before,table.data-table:not(.keep-table):not(.items-table):not(.items-grid-table):not(.simulacao-grid):not(.mapping-table):not(.preview-table):not(.sheet-preview-table):not(.produto-busca-table):not(.precos-grid):not(.import-preview-table):not(.faturamento-table):not(.previa-table):not(.viewer-table) tbody td.acao:before{display:none}.grid-scroll table.data-table,table.data-table.keep-table,table.data-table.items-table,table.data-table.items-grid-table,table.data-table.simulacao-grid,table.data-table.mapping-table,table.data-table.preview-table,table.data-table.sheet-preview-table,table.data-table.produto-busca-table,table.data-table.precos-grid,table.data-table.import-preview-table,table.data-table.faturamento-table,table.data-table.previa-table,table.data-table.viewer-table{display:table!important;width:max-content;min-width:100%}.grid-scroll table.data-table thead,table.data-table.keep-table thead,table.data-table.items-table thead,table.data-table.items-grid-table thead,table.data-table.simulacao-grid thead,table.data-table.mapping-table thead,table.data-table.preview-table thead,table.data-table.sheet-preview-table thead,table.data-table.produto-busca-table thead,table.data-table.precos-grid thead,table.data-table.import-preview-table thead,table.data-table.faturamento-table thead,table.data-table.previa-table thead,table.data-table.viewer-table thead{display:table-header-group}.grid-scroll table.data-table tbody,table.data-table.keep-table tbody,table.data-table.items-table tbody,table.data-table.items-grid-table tbody,table.data-table.simulacao-grid tbody,table.data-table.mapping-table tbody,table.data-table.preview-table tbody,table.data-table.sheet-preview-table tbody,table.data-table.produto-busca-table tbody,table.data-table.precos-grid tbody,table.data-table.import-preview-table tbody,table.data-table.faturamento-table tbody,table.data-table.previa-table tbody,table.data-table.viewer-table tbody{display:table-row-group}.grid-scroll table.data-table tbody tr,table.data-table.keep-table tbody tr,table.data-table.items-table tbody tr,table.data-table.items-grid-table tbody tr,table.data-table.simulacao-grid tbody tr,table.data-table.mapping-table tbody tr,table.data-table.preview-table tbody tr,table.data-table.sheet-preview-table tbody tr,table.data-table.produto-busca-table tbody tr,table.data-table.precos-grid tbody tr,table.data-table.import-preview-table tbody tr,table.data-table.faturamento-table tbody tr,table.data-table.previa-table tbody tr,table.data-table.viewer-table tbody tr{display:table-row!important;background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}.grid-scroll table.data-table tbody td,table.data-table.keep-table tbody td,table.data-table.items-table tbody td,table.data-table.items-grid-table tbody td,table.data-table.simulacao-grid tbody td,table.data-table.mapping-table tbody td,table.data-table.preview-table tbody td,table.data-table.sheet-preview-table tbody td,table.data-table.produto-busca-table tbody td,table.data-table.precos-grid tbody td,table.data-table.import-preview-table tbody td,table.data-table.faturamento-table tbody td,table.data-table.previa-table tbody td,table.data-table.viewer-table tbody td{display:table-cell!important;padding:.85rem 1rem}.grid-scroll table.data-table tbody td:before,table.data-table.keep-table tbody td:before,table.data-table.items-table tbody td:before,table.data-table.items-grid-table tbody td:before,table.data-table.simulacao-grid tbody td:before,table.data-table.mapping-table tbody td:before,table.data-table.preview-table tbody td:before,table.data-table.sheet-preview-table tbody td:before,table.data-table.produto-busca-table tbody td:before,table.data-table.precos-grid tbody td:before,table.data-table.import-preview-table tbody td:before,table.data-table.faturamento-table tbody td:before,table.data-table.previa-table tbody td:before,table.data-table.viewer-table tbody td:before{display:none}}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;padding:3px 10px;border-radius:var(--radius-full);font-size:.75rem;font-weight:700}.tipo-badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;background:var(--info-soft);color:var(--info)}.tipo-badge.tipo-pedido{background:var(--success-soft);color:var(--success)}.status-badge,.status-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;text-transform:capitalize;background:var(--surface-2);color:var(--text-secondary)}.status-badge:before,.status-chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7}.status-badge.status-aberto,.status-badge.status-ativo,.status-chip.status-aberto,.status-chip.status-ativo{background:var(--info-soft);color:var(--info)}.status-badge.status-rascunho,.status-chip.status-rascunho,.status-badge.status-enviado_fabrica,.status-badge.status-pendencia_total,.status-badge.status-parcial_bo,.status-chip.status-enviado_fabrica,.status-chip.status-pendencia_total,.status-chip.status-parcial_bo{background:var(--warning-soft);color:var(--warning)}.status-badge.status-faturado,.status-chip.status-faturado{background:var(--success-soft);color:var(--success)}.status-badge.status-cancelado,.status-badge.status-inativo,.status-chip.status-cancelado,.status-chip.status-inativo{background:var(--danger-soft);color:var(--danger)}.cdk-overlay-container{z-index:1200}.cdk-overlay-pane.produto-similares-overlay-pane{max-width:100vw;max-height:100vh}.modal-overlay{position:fixed;inset:0;background:#0f172a80;display:flex;align-items:flex-start;justify-content:center;padding:3vh 16px;z-index:1000;overflow-y:auto}.modal-panel{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:720px;max-height:94vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);border:1px solid var(--border)}.modal-panel--wide{max-width:960px}.checkbox-row{display:flex;align-items:flex-start;gap:.5rem;font-weight:400;cursor:pointer}.checkbox-row input[type=checkbox]{margin-top:.2rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:1.1rem;font-weight:700}.modal-close{border:none;background:transparent;font-size:1.5rem;line-height:1;color:var(--text-muted);cursor:pointer;padding:0 4px}.modal-close:hover{color:var(--text)}.modal-tabs{display:flex;gap:4px;padding:0 1.5rem;border-bottom:1px solid var(--border)}.modal-tab-panel[hidden]{display:none!important}.modal-tab{border:none;background:transparent;padding:.75rem 1rem;font-size:.875rem;font-weight:500;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:inherit}.modal-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.modal-tab:hover:not(.active){color:var(--text)}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;margin-left:.35rem;padding:0 .35rem;border-radius:999px;background:var(--primary);color:#fff;font-size:.6875rem;font-weight:700;line-height:1}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.modal-body h3{margin:0 0 1rem;font-size:.95rem;font-weight:600}.modal-footer{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.5rem;padding:1.25rem 1.5rem;border-top:1px solid var(--border)}.modal-panel-wide{max-width:1140px}.modal-body-split{display:flex;gap:1.5rem;padding:0;overflow:hidden}.modal-body-split .modal-config-column{flex:1;min-width:0;padding:1.5rem;overflow-y:auto}.modal-body-split .modal-preview-column{flex:0 0 360px;padding:1.5rem;border-left:1px solid var(--border);overflow-y:auto;background:var(--surface-2);display:flex;flex-direction:column;gap:.75rem}.modal-body-split .modal-preview-column h3{margin:0;font-size:.85rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.modal-body-split .modal-preview-box{flex:1;min-height:220px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;position:relative}@media(max-width:860px){.modal-body-split{flex-direction:column}.modal-body-split .modal-preview-column{flex:0 0 auto;border-left:none;border-top:1px solid var(--border)}.modal-body-split .modal-preview-box{min-height:180px}}.modal-footer-error{flex:1 1 100%;margin:0}.lista-preco-opcoes{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;margin-bottom:1.25rem}.lista-opcao{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;cursor:pointer}.lista-opcao input{margin:0}.readonly-value{margin:0;padding:.625rem .75rem;background:#f8fafc;border:1px solid var(--border);border-radius:8px;font-size:1rem;font-weight:600}@media(max-width:960px){.modal-panel{max-width:100%}}.badge-a{background:#d7f4e0;color:#146c2e}.badge-b{background:#fff2cc;color:#8a6100}.badge-c{background:#fde2e1;color:#a3231d}.badge-lancamento{background:#e0e7ff;color:#3730a3}.empty-state{padding:3rem 1.5rem;text-align:center;color:var(--text-muted);font-size:.9rem}.header-form,.item-form{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;margin-bottom:16px}.header-form mat-form-field,.item-form mat-form-field{min-width:220px;flex:1 1 220px}.item-form .qty{min-width:100px;flex:0 0 100px}.item-form button{margin-top:8px}.actions-bar{display:flex;gap:12px;margin-top:20px}.qty-input{width:80px;padding:4px 8px;border:1px solid var(--mat-sys-outline, #999);border-radius:6px;font:inherit}.hint{opacity:.6;font-size:13px;margin-top:12px}.import-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-xs)}.import-section h2{margin-top:0}.logo-upload-area{display:flex;flex-direction:column;gap:.75rem}.logo-preview{width:220px;min-height:80px;border:1px dashed var(--border);border-radius:8px;padding:.75rem;display:flex;align-items:center;justify-content:center;background:#fafbfc}.logo-preview img{max-width:100%;max-height:96px;object-fit:contain}.logo-placeholder{width:220px;min-height:80px;border:1px dashed var(--border);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#667085;font-size:.875rem;background:#fafbfc}.logo-actions{display:flex;gap:.5rem;flex-wrap:wrap}.logo-actions label.btn{cursor:pointer;margin:0}.upload-row{display:flex;align-items:center;gap:12px;margin:16px 0;flex-wrap:wrap}.report-summary{display:flex;gap:20px;font-weight:600;margin:12px 0}.report-summary .ok{color:#146c2e}.report-summary .err{color:#a3231d}.error-list{max-height:200px;overflow-y:auto;font-size:13px;color:#a3231d}.preview-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:12px}.preview-table th,.preview-table td{border-bottom:1px solid var(--mat-sys-outline-variant, #ddd);padding:6px 10px;text-align:left}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:var(--space-6)}.chart-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm);transition:box-shadow .2s ease}.chart-card:hover{box-shadow:var(--shadow-md)}.chart-card h2{margin:0 0 var(--space-4);font-size:1rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.import-page .mapping-legend{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;margin-bottom:.85rem;font-size:.8125rem;font-weight:500}.import-page .mapping-legend .legend-ok{color:#047857}.import-page .mapping-legend .legend-pending{color:#b91c1c}.import-page .mapping-legend .legend-item{display:inline-flex;align-items:center;gap:.45rem}.import-page .mapping-legend .mapping-dot{width:.65rem;height:.65rem;border-radius:50%}.import-page .mapping-legend .legend-ok .mapping-dot{background:#10b981}.import-page .mapping-legend .legend-pending .mapping-dot{background:#ef4444}.import-page .mapping-table th.col-status,.import-page .mapping-table td.col-status{width:6.5rem;white-space:nowrap}.import-page .mapping-table td.campo-label{width:28%}.import-page .mapping-table tr.mapping-ok{background:#f0fdf4}.import-page .mapping-table tr.mapping-pending{background:#fef2f2}.import-page .mapping-table tr.mapping-optional{background:#f8fafc}.import-page .mapping-table .mapping-status{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:700;text-transform:uppercase}.import-page .mapping-table .mapping-status.ok{color:#047857;background:#d1fae5}.import-page .mapping-table .mapping-status.pending{color:#b91c1c;background:#fee2e2}.import-page .mapping-table .mapping-status.optional{color:#64748b;background:#e2e8f0}.import-page .mapping-table tr.mapping-ok td select{border-color:#6ee7b7}.import-page .mapping-table tr.mapping-pending td select{border-color:#fca5a5}@media(max-width:900px){.dashboard-grid{grid-template-columns:1fr}}.widget-skeleton{width:100%;height:100%;min-height:4rem;background:linear-gradient(90deg,var(--surface-2) 0%,color-mix(in srgb,var(--border) 40%,var(--surface-2)) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:widget-shimmer 1.2s ease-in-out infinite;border-radius:var(--radius-sm)}.widget-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;height:100%;min-height:4rem;padding:1rem;color:var(--text-muted);font-size:.875rem;text-align:center}.widget-empty-state mat-icon{font-size:2rem;width:2rem;height:2rem;opacity:.45}.widget-empty-state.error{color:var(--danger)}@keyframes widget-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}body.playground-fullscreen .sidebar,body.playground-fullscreen .sidebar-backdrop,body.playground-fullscreen .topbar{display:none!important}body.playground-fullscreen .main-area{margin-left:0!important}body.playground-fullscreen .content{padding:.5rem!important;overflow:hidden!important}body.playground-fullscreen app-playground{max-width:none!important}
