:root{font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;line-height:1.4;font-weight:400;color:#1f2a37;background-color:#f4f6f9;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:inherit}.app{min-height:100vh;background:#f4f6f9;color:#1f2a37}.topbar{background:#0b5f8f;color:#fff;box-shadow:0 2px 8px #00000014}.topbar-content{display:flex;align-items:center;gap:16px;padding:14px 24px;max-width:1200px;margin:0 auto}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-logo{display:block;height:40px;width:auto;object-fit:contain}.search{display:flex;align-items:center;background:#fff;border-radius:6px;overflow:hidden;min-width:220px}.search input{border:none;padding:8px 10px;outline:none;width:180px;font-size:14px}.icon-button{border:none;background:transparent;color:inherit;padding:8px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.icon-button svg{width:18px;height:18px}.topbar-select{border-radius:6px;border:none;padding:8px 10px;font-size:14px}.topbar-actions{margin-left:auto;display:flex;gap:6px}.dashboard{max-width:980px;margin:24px auto 60px;padding:0 24px;display:flex;flex-direction:column;gap:20px}.panel{background:#fff;border-radius:8px;padding:18px 20px;box-shadow:0 1px 4px #00000014}.panel h2{margin:0 0 14px;font-size:16px;color:#2c3e50}.panel-items{display:flex;flex-wrap:wrap;gap:20px}.panel-item{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:#2c3e50;font-size:13px;width:88px;background:transparent;border:none;cursor:pointer}.panel-icon{width:54px;height:54px;border-radius:10px;background:#e6f0f7;color:#0b5f8f;display:flex;align-items:center;justify-content:center}.panel-icon svg{flex-shrink:0}.panel-item:hover .panel-icon{background:#d4e6f4}.users-page,.locations-page{background:#f5f7fa}.locations-container{max-width:1100px;margin:32px auto 80px;padding:0 24px}.locations-header h1{margin:0;font-size:22px;color:#1f2a37}.locations-title-link{color:inherit;text-decoration:none}.locations-title-link:hover{text-decoration:underline;text-underline-offset:3px}.locations-divider{color:#94a3b8;font-weight:400}.locations-search{display:flex;align-items:center;gap:12px;background:#eef2f5;border-radius:8px;padding:12px 14px;margin:16px 0 18px}.locations-search label{font-size:13px;color:#2c3e50;font-weight:600}.locations-search-input{flex:1;min-width:200px;border:1px solid #d6dee6;border-radius:6px;padding:8px 10px;font-size:13px;background:#fff}.locations-search-button{background:#fff;border:1px solid #d6dee6;border-radius:6px;height:36px;width:36px;color:#0b5f8f}.locations-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0f172a14;overflow:hidden}.locations-table{width:100%;border-collapse:collapse;font-size:13px}.locations-table thead{background:#f0f4f8}.locations-table th,.locations-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e5e7eb}.locations-table th{font-weight:600;color:#1f2a37;white-space:nowrap}.locations-table tbody tr:nth-child(2n){background:#fafbfc}.locations-actions{display:flex;justify-content:center}.locations-empty{text-align:center;color:#5f6b7a;font-size:13px}.users-container{max-width:1200px;margin:32px auto 80px;padding:0 24px}.users-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.users-header h1{margin:0;font-size:22px;color:#1f2a37}.users-create-link{border:none;background:transparent;color:inherit;font:inherit;padding:0;cursor:pointer}.users-create-link:hover{text-decoration:underline;text-underline-offset:3px}.users-subtitle{display:inline-block;margin-top:4px;color:#5f6b7a;font-size:13px}.primary-button{border:none;border-radius:6px;padding:10px 16px;background:#0b5f8f;color:#fff;font-weight:600;cursor:pointer}.primary-button:hover{background:#0a557f}.users-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0f172a14;overflow:hidden}.users-modal-content{max-width:720px;padding:24px 28px 28px}.users-modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.users-modal-header h2{margin:0;font-size:16px;font-weight:600;color:#1f2a37}.users-modal-close{border:none;background:transparent;color:#1f2a37;font-size:16px;font-weight:600;cursor:pointer;padding:4px 8px;line-height:1;border-radius:6px}.users-modal-close:hover{background:#eef2f5}.users-modal-form{display:grid;grid-template-columns:repeat(2,minmax(200px,1fr));gap:16px;align-items:end}.users-modal-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#2c3e50}.users-modal-left{grid-column:1 / 2}.users-modal-actions{display:flex;align-items:center;gap:12px}.users-table{width:100%;border-collapse:collapse;font-size:13px}.users-table thead{background:#f0f4f8}.users-table th,.users-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e5e7eb}.users-table th{font-weight:600;color:#1f2a37;white-space:nowrap}.users-table tbody tr:nth-child(2n){background:#fafbfc}.status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-weight:600;font-size:12px}.status-active{background:#e7f6ee;color:#1b7d3c}.status-inactive{background:#fdecea;color:#b42318}.family-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-weight:600;font-size:.8rem}.family-pvc{background:#e0f0ff;color:#0b5f8f}.family-aluminio{background:#f0eaff;color:#6b3fa0}.family-unidade{background:#fff4e0;color:#8a6100}.alert-warning{background:#fff8e1;border:1px solid #ffe082;color:#8a6d00;padding:10px 16px;border-radius:6px;font-size:.9rem;margin-bottom:12px}.edit-button{color:#0b5f8f}.edit-button:hover{background:#0b5f8f1a;border-radius:6px}@media(max-width:900px){.topbar-content{flex-wrap:wrap}.topbar-actions{margin-left:0}.search input{width:140px}}.products-page{background:#f5f7fa}.products-container{max-width:1200px;margin:32px auto 80px;padding:0 24px}.products-header h1{margin:0;font-size:22px;color:#1f2a37}.products-subtitle{display:inline-block;margin-top:4px;color:#5f6b7a;font-size:13px}.products-filters{display:grid;grid-template-columns:minmax(200px,1.6fr) repeat(3,minmax(160px,1fr)) auto;gap:16px;align-items:end;background:#eef2f5;border-radius:8px;padding:14px 16px;margin:20px 0}.products-filter-group{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#2c3e50}.products-filter-input,.products-filter-select{border:1px solid #d6dee6;border-radius:6px;padding:8px 10px;font-size:13px;background:#fff}.products-search-button{background:#fff;border:1px solid #d6dee6;border-radius:6px;height:36px;width:36px;color:#0b5f8f}.products-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0f172a14;overflow:hidden}.products-table{width:100%;border-collapse:collapse;font-size:13px}.products-table thead{background:#f0f4f8}.products-table th,.products-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e5e7eb;vertical-align:top}.products-table th{font-weight:600;color:#1f2a37;white-space:nowrap}.products-table tbody tr:nth-child(2n){background:#fafbfc}.products-link-button{border:none;background:transparent;color:#0b5f8f;font-weight:600;cursor:pointer;padding:0}.products-actions{white-space:nowrap}.products-actions .icon-button+.icon-button{margin-left:6px}.modal-overlay{position:fixed;inset:0;background:#0f172a80;display:flex;align-items:flex-start;justify-content:center;padding:48px 24px;z-index:1000;overflow-y:auto}.modal-content{width:100%;max-width:900px;background:#fff;border-radius:12px;box-shadow:0 12px 30px #0f172a33;padding:24px;display:flex;flex-direction:column;gap:18px}.modal-large{max-width:980px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.modal-header h2{margin:0;font-size:20px;color:#1f2a37}.modal-subtitle{margin:6px 0 0;color:#5f6b7a;font-size:13px}.modal-form{display:grid;grid-template-columns:repeat(2,minmax(200px,1fr));gap:16px;align-items:end}.modal-form-group{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#2c3e50}.modal-form-group-full{grid-column:1 / -1}.modal-input,.modal-select{border:1px solid #d6dee6;border-radius:6px;padding:8px 10px;font-size:13px;background:#fff}.modal-select:disabled{background:#f4f7fa;color:#5c6b7a;cursor:not-allowed}.cor-aluminio-combobox{position:relative;z-index:5;width:100%}.cor-aluminio-combobox .modal-input{width:100%;box-sizing:border-box;padding-right:32px}.cor-aluminio-combobox-input.is-filled{font-weight:600;color:#0b5f8f}.cor-aluminio-combobox-arrow{position:absolute;top:1px;right:1px;bottom:1px;width:32px;border:0;border-radius:0 6px 6px 0;background:transparent;color:#5c6b7a;cursor:pointer;display:flex;align-items:center;justify-content:center}.cor-aluminio-combobox-arrow:before{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg)}.cor-aluminio-combobox-arrow:disabled{cursor:not-allowed;color:#9aa6b2}.cor-aluminio-combobox-list{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;margin:0;padding:4px;list-style:none;max-height:220px;overflow-y:auto;background:#fff;border:1px solid #d6dee6;border-radius:6px;box-shadow:0 8px 20px #0f172a1f}.cor-aluminio-combobox-option{display:block;width:100%;text-align:left;border:0;background:transparent;padding:8px 10px;border-radius:4px;font-size:13px;color:#1f2a37;cursor:pointer}.cor-aluminio-combobox-option[data-active=true]{background:#e8f3fb}.cor-aluminio-combobox-option.is-selected{background:#0b5f8f;color:#fff;font-weight:600}.cor-aluminio-combobox-empty{padding:8px 10px;color:#5f6b7a;font-size:13px}.modal-search{display:flex;align-items:center;gap:8px}.modal-search-button{background:#fff;border:1px solid #d6dee6;border-radius:6px;height:36px;width:36px;color:#0b5f8f}.modal-checkbox{flex-direction:row;align-items:center;gap:8px}.modal-table{background:#f8fafc;border-radius:10px;padding:8px}.modal-table .products-table{background:#fff;border-radius:8px;overflow:hidden}.modal-footer{font-size:13px;color:#5f6b7a;display:flex;justify-content:flex-start}.calculate-form{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;padding:16px 0}.calculate-results{display:flex;flex-direction:column;gap:16px;padding:16px 0}.calculate-summary{display:flex;flex-direction:column;gap:4px;font-size:14px}.calculate-category{display:flex;flex-direction:column;gap:8px}.calculate-category h4{font-size:14px;font-weight:600;color:#1e293b;margin:0}.products-create-form{grid-template-columns:repeat(4,minmax(140px,1fr))}.products-create-error{grid-column:1 / -1;margin:0;color:#b42318;font-size:13px}.products-create-actions{grid-column:1 / -1;display:flex;justify-content:flex-start}@media(max-width:1000px){.products-filters{grid-template-columns:1fr 1fr}}@media(max-width:720px){.products-filters{grid-template-columns:1fr}}@media(max-width:900px){.modal-header{flex-direction:column;align-items:flex-start}.modal-form,.users-modal-form{grid-template-columns:1fr}}.supplies-page{background:#f5f7fa}.supplies-container{max-width:1200px;margin:32px auto 80px;padding:0 24px}.supplies-header h1{margin:0;font-size:22px;color:#1f2a37}.supplies-subtitle{display:inline-block;margin-top:4px;color:#5f6b7a;font-size:13px}.supplies-filters{display:grid;grid-template-columns:minmax(160px,1fr) minmax(220px,1.6fr) repeat(3,minmax(160px,1fr)) auto;gap:16px;align-items:end;background:#eef2f5;border-radius:8px;padding:14px 16px;margin:20px 0}.supplies-filter-group{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#2c3e50}.supplies-filter-input,.supplies-filter-select{border:1px solid #d6dee6;border-radius:6px;padding:8px 10px;font-size:13px;background:#fff}.supplies-search-button{background:#fff;border:1px solid #d6dee6;border-radius:6px;height:36px;width:36px;color:#0b5f8f}.supplies-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0f172a14;overflow:hidden}.supplies-table{width:100%;border-collapse:collapse;font-size:13px}.supplies-table thead{background:#f0f4f8}.supplies-table th,.supplies-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e5e7eb;vertical-align:top}.supplies-table th{font-weight:600;color:#1f2a37;white-space:nowrap}.supplies-table tbody tr:nth-child(2n){background:#fafbfc}.supplies-description{min-width:240px}.supplies-actions{display:flex;gap:6px;align-items:center}@media(max-width:1100px){.supplies-filters{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media(max-width:720px){.supplies-filters{grid-template-columns:1fr}}.glass-page{background:#f5f7fa}.glass-container{max-width:1200px;margin:32px auto 80px;padding:0 24px}.glass-header h1{margin:0;font-size:22px;color:#1f2a37}.glass-subtitle{display:inline-block;margin-top:4px;color:#5f6b7a;font-size:13px}.glass-filters{display:flex;align-items:center;gap:16px;background:#eef2f5;border-radius:8px;padding:14px 16px;margin:20px 0 10px}.glass-search-label{font-size:13px;color:#2c3e50;font-weight:600}.glass-filter-input,.glass-filter-select{border:1px solid #d6dee6;border-radius:6px;padding:8px 10px;font-size:13px;background:#fff}.glass-filter-input{flex:1;min-width:220px}.glass-filter-select{min-width:140px}.glass-search-button{background:#fff;border:1px solid #d6dee6;border-radius:6px;height:36px;width:36px;color:#0b5f8f}.glass-summary{display:flex;justify-content:flex-end;font-size:13px;color:#5f6b7a;margin-bottom:12px}.glass-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0f172a14;overflow:hidden}.glass-table{width:100%;border-collapse:collapse;font-size:13px}.glass-table thead{background:#f0f4f8}.glass-table th,.glass-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e5e7eb;vertical-align:top}.glass-table th{font-weight:600;color:#1f2a37;white-space:nowrap}.glass-table tbody tr:nth-child(2n){background:#fafbfc}.glass-actions{display:flex;justify-content:center}@media(max-width:900px){.glass-filters{flex-wrap:wrap;justify-content:flex-start}.glass-summary{justify-content:flex-start}}.budgets-page{background:#f5f7fa}.budgets-container{max-width:1200px;margin:32px auto 80px;padding:0 24px}.budgets-header h1{margin:0;font-size:22px;color:#1f2a37}.budgets-subtitle{display:inline-block;margin-top:4px;color:#5f6b7a;font-size:13px}.budgets-filters{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(220px,1.6fr) repeat(2,minmax(160px,1fr)) repeat(2,minmax(140px,1fr)) auto;gap:16px;align-items:end;background:#eef2f5;border-radius:8px;padding:14px 16px;margin:20px 0}.budgets-filter-group{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#2c3e50}.budgets-filter-input,.budgets-filter-select{border:1px solid #d6dee6;border-radius:6px;padding:8px 10px;font-size:13px;background:#fff}.budgets-search-button{background:#fff;border:1px solid #d6dee6;border-radius:6px;height:36px;width:36px;color:#0b5f8f}.budgets-pagination{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0 10px;font-size:13px}.budgets-pagination-info{color:#334155;flex:1;min-width:160px}.budgets-pagination-button{padding:8px 16px;border-radius:6px;border:1px solid #d6dee6;background:#fff;color:#0b5f8f;font-size:13px;cursor:pointer}.budgets-pagination-button:hover:not(:disabled){border-color:#0b5f8f;background:#f0f9ff}.budgets-pagination-button:disabled{opacity:.45;cursor:not-allowed}.budgets-pagination-controls{display:flex;align-items:center;gap:6px}.budgets-pagination-page{color:#334155;font-size:13px;white-space:nowrap;padding:0 4px}.budgets-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0f172a14;overflow:hidden}.budgets-table{width:100%;border-collapse:collapse;font-size:13px}.budgets-table thead{background:#f0f4f8}.budgets-table th,.budgets-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e5e7eb;vertical-align:top}.budgets-table th{font-weight:600;color:#1f2a37;white-space:nowrap}.budgets-table tbody tr:nth-child(2n){background:#fafbfc}.budgets-obra{display:flex;flex-direction:column;gap:4px}.budgets-row,.budgets-row-clickable{cursor:pointer}.budgets-row:hover,.budgets-row-clickable:hover{background:#eef5fb}.budgets-row:focus-visible{outline:2px solid #0b5f8f;outline-offset:-2px}.budgets-link{color:#0b5f8f;text-decoration:underline;font-weight:600}.budgets-obra-line{color:#2c3e50}.budgets-status{color:#1f2a37;font-weight:600}@media(max-width:1100px){.budgets-filters{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media(max-width:720px){.budgets-filters{grid-template-columns:1fr}}.budget-detail-page{background:#f5f7fa}.budget-detail-container{max-width:1200px;margin:32px auto 80px;padding:0 24px;display:flex;flex-direction:column;gap:20px}.budget-detail-card--loading{position:relative;min-height:180px}.budget-detail-loading{display:flex;align-items:center;gap:12px;padding:10px 12px;margin-bottom:4px;border-radius:8px;background:#e8f3fa;color:#0b5f8f;font-size:14px;font-weight:600}.budget-detail-loading p{margin:0}.budget-detail-loading-spinner{width:18px;height:18px;border:2px solid #b7d7ea;border-top-color:#0b5f8f;border-radius:50%;animation:budget-detail-spin .8s linear infinite;flex-shrink:0}@keyframes budget-detail-spin{to{transform:rotate(360deg)}}.budget-detail-error{color:#c81e1e;margin:0 0 8px}.budget-detail-header{display:flex;flex-direction:column;gap:10px}.budget-detail-header h1{margin:0;font-size:22px;color:#1f2a37}.budget-detail-card{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0f172a14;padding:18px 20px;display:flex;flex-direction:column;gap:16px}.budget-detail-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;font-size:13px;color:#2c3e50}.budget-info-column p{margin:4px 0}.budget-detail-actions{display:flex;flex-wrap:wrap;gap:8px}.chip-button{border:1px solid #0b5f8f;background:#0b5f8f;color:#fff;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer}.chip-button:hover{background:#0a557f;border-color:#0a557f}.chip-danger{background:#c81e1e;border-color:#c81e1e}.chip-danger:hover{background:#aa1a1a;border-color:#aa1a1a}.budget-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px}.budget-detail-grid-full{grid-template-columns:minmax(0,1fr)}.budget-detail-panel{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0f172a14;padding:18px 20px;display:flex;flex-direction:column;gap:16px}.budget-detail-tabs{display:flex;gap:12px;border-bottom:1px solid #e5e7eb;padding-bottom:10px}.tab-button{border:none;background:transparent;color:#5f6b7a;font-weight:600;cursor:pointer;padding:0;font-size:13px}.tab-active{color:#0b5f8f}.budget-summary{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#2c3e50}.budget-pricing{display:flex;flex-direction:column;gap:16px}.budget-pricing-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.budget-pricing-header h2{margin:0;font-size:16px;color:#1f2a37}.budget-pricing-table-wrapper{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.budget-pricing-table{width:100%;border-collapse:collapse;font-size:13px;color:#1f2a37}.budget-pricing-table thead{background:#f8fafc}.budget-pricing-table th,.budget-pricing-table td{padding:8px 10px;text-align:left}.budget-pricing-table tbody tr+tr{border-top:1px solid #e5e7eb}.pricing-row-highlight{background:#cfd4ea;font-weight:600}.pricing-cell-item{font-weight:600;color:#1f2a37}.pricing-cell-value,.pricing-cell-percent,.pricing-cell-note{white-space:nowrap;color:#1f2a37}.pricing-cell-note{color:#64748b}.pricing-value-negative{color:#c81e1e}.budget-summary-meta{display:flex;justify-content:space-between;font-weight:600;color:#1f2a37}.budget-products,.budget-products-list{display:flex;flex-direction:column;gap:16px}.budget-product-card{border:1px solid #e5e7eb;border-radius:10px;padding:16px;background:#fff;display:flex;flex-direction:column;gap:12px}.budget-product-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:#1f2a37;padding:8px 12px;border-radius:8px;background:#f3f4f6}.budget-product-code{font-weight:600}.budget-product-top-actions{display:flex;align-items:center;gap:8px}.budget-product-divider{color:#94a3b8}.budget-product-header{display:flex;gap:16px;align-items:flex-start}.budget-product-image{width:140px;min-width:140px;height:120px;border-radius:8px;border:1px solid #e5e7eb;background:#f8fafc;display:flex;align-items:center;justify-content:center;overflow:hidden}.budget-product-image img{width:100%;height:100%;object-fit:contain}.budget-product-image-placeholder{font-size:12px;color:#94a3b8;text-align:center;padding:8px}.budget-product-main{flex:1;display:flex;flex-direction:column;gap:10px}.budget-product-title{margin:0;font-size:16px;font-weight:600;color:#1f2a37}.budget-product-subtitle{margin:0;font-size:12px;color:#64748b}.budget-product-actions{display:flex;gap:6px;color:#1f2a37}.budget-product-meta{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#334155}.budget-product-meta-row{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.inline-edit-input{width:70px;padding:2px 6px;font-size:12px;border:1px solid #93c5fd;border-radius:4px;outline:none;background:#eff6ff;color:#1e40af}.inline-edit-input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.inline-edit-select{padding:2px 6px;font-size:12px;border:1px solid #93c5fd;border-radius:4px;outline:none;background:#eff6ff;color:#1e40af;max-width:240px}.inline-edit-select:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.inline-edit-save,.inline-edit-cancel{padding:1px 7px;font-size:11px;border-radius:4px;border:none;cursor:pointer;font-weight:600;line-height:1.6}.inline-edit-save{background:#22c55e;color:#fff}.inline-edit-save:disabled{background:#86efac;cursor:not-allowed}.inline-edit-cancel{background:#ef4444;color:#fff}.inline-edit-cancel:disabled{background:#fca5a5;cursor:not-allowed}.inline-edit-icon{width:16px;height:16px;padding:0;opacity:.5;transition:opacity .15s}.inline-edit-icon svg{width:14px;height:14px}.inline-edit-icon:hover{opacity:1}.budget-product-values{display:flex;flex-wrap:wrap;gap:24px;font-size:12px;color:#1f2a37}.budget-product-values div{display:flex;gap:6px}.budget-product-values-main{justify-content:space-between;gap:20px}.budget-product-divider-line{height:1px;background:#e5e7eb}.budget-product-obs{font-size:12px;color:#334155}.budget-product-obs-main{padding-bottom:6px}.budget-product-accessories{display:flex;flex-direction:column;gap:12px;padding-top:8px;border-top:1px solid #e5e7eb}.budget-accessories-title{font-weight:600;font-size:13px;color:#1f2a37}.budget-accessories-list{display:flex;flex-direction:column;gap:12px}.budget-accessory-card{display:flex;gap:12px;padding:12px 0;border-top:1px solid #e5e7eb}.budget-accessory-image{width:90px;min-width:90px;height:80px;border-radius:8px;border:1px solid #e5e7eb;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.budget-accessory-main{flex:1;display:flex;flex-direction:column;gap:8px;font-size:12px;color:#1f2a37}.budget-accessory-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.budget-accessory-title{font-weight:600}.budget-accessory-actions{display:flex;gap:6px;color:#1f2a37}.budget-accessory-meta{display:flex;flex-wrap:wrap;gap:10px 16px;color:#334155}.budget-products-total{text-align:right;font-size:16px;font-weight:700;color:#1f2a37;padding:4px 4px 0}.budget-products-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.budget-products-header h2{margin:0;font-size:16px;color:#1f2a37}.muted{color:#5f6b7a;font-size:12px}.budget-products-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;align-items:end}.budget-add-esquadria-modal{max-width:780px}.budget-modal-feedback{font-size:13px;color:#b42318}.budget-add-modal-actions{display:flex;justify-content:flex-end;gap:10px}.budget-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#2c3e50}.budget-field input,.budget-field select{border:1px solid #d6dee6;border-radius:6px;padding:8px 10px;font-size:13px;background:#fff}.budget-empty{padding:18px;background:#f8fafc;border-radius:8px;font-size:13px;color:#5f6b7a}.budget-items{display:flex;flex-direction:column;gap:12px}.budget-item-card{display:flex;justify-content:space-between;gap:12px;border:1px solid #e5e7eb;border-radius:8px;padding:12px 14px;background:#fff}.budget-item-title{margin:0 0 4px;font-weight:600;color:#1f2a37;font-size:14px}.budget-item-meta{margin:0;font-size:12px;color:#5f6b7a}.budget-item-total{display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-size:13px;font-weight:600}.budget-detail-sidebar .primary-button{margin-top:6px}.budget-summary-list{display:flex;flex-direction:column;gap:10px;font-size:13px;color:#2c3e50}.budget-summary-list div{display:flex;justify-content:space-between;gap:10px}.link-button{border:none;background:transparent;color:#0b5f8f;font-size:13px;font-weight:600;cursor:pointer;padding:0}@media(max-width:980px){.budget-detail-grid{grid-template-columns:1fr}}@media(max-width:720px){.budget-summary-meta{flex-direction:column;gap:6px}.budget-product-top{flex-direction:column;align-items:flex-start}.budget-product-header{flex-direction:column}.budget-product-image{width:100%;height:160px}.budget-accessory-card{flex-direction:column}.budget-accessory-image{width:100%;height:120px}}.pagination-container{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-top:1px solid #e5e7eb;background:#fafbfc;gap:16px;flex-wrap:wrap}.pagination-info{display:flex;align-items:center;gap:12px;font-size:13px;color:#5f6b7a}.pagination-select{border:1px solid #d6dee6;border-radius:6px;padding:6px 10px;font-size:13px;background:#fff;cursor:pointer;min-width:70px}.pagination-select:focus{outline:none;border-color:#0b5f8f}.pagination-total{color:#1f2a37;font-weight:500}.pagination-controls{display:flex;align-items:center;gap:8px}.pagination-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d6dee6;border-radius:6px;background:#fff;color:#0b5f8f;cursor:pointer;transition:all .15s ease}.pagination-button:hover:not(:disabled){background:#e6f0f7;border-color:#0b5f8f}.pagination-button:disabled{color:#94a3b8;cursor:not-allowed;background:#f5f7fa}.pagination-page{font-size:13px;color:#1f2a37;padding:0 12px;font-weight:500}@media(max-width:600px){.pagination-container{flex-direction:column;align-items:flex-start}.pagination-controls{width:100%;justify-content:center}}.create-budget-page{background:#f5f7fa}.create-budget-container{max-width:1180px;margin:32px auto 80px;padding:0 24px}.create-budget-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:18px 20px}.create-budget-title{margin:0 0 16px;font-size:26px;color:#1f2a37;font-weight:500}.create-budget-form{display:flex;flex-direction:column;gap:14px}.create-budget-grid{display:grid;gap:12px}.create-budget-grid-responsavel{grid-template-columns:140px minmax(200px,1fr)}.create-budget-grid-3{grid-template-columns:minmax(200px,1.2fr) minmax(160px,.5fr) minmax(180px,1fr)}.create-budget-grid-2{grid-template-columns:repeat(2,minmax(220px,1fr))}.create-budget-grid-5{grid-template-columns:repeat(5,minmax(100px,1fr))}.create-budget-field{display:flex;flex-direction:column;gap:5px;font-size:13px;color:#334155}.create-budget-field-grow{min-width:0}.create-budget-field input,.create-budget-field select,.create-budget-field textarea{border:1px solid #d6dee6;border-radius:2px;padding:7px 10px;font-size:13px;color:#1f2a37;background:#fff}.create-budget-field textarea{resize:vertical;min-height:78px}.create-budget-section-label{display:inline-block;margin-bottom:6px;font-size:13px;font-weight:600;color:#334155}.create-budget-metrics{display:flex;flex-direction:column;gap:10px}.create-budget-metric-field{gap:3px}.create-budget-metric-field label{font-size:12px;color:#64748b}.create-budget-discount-grid{max-width:480px}.create-budget-checkboxes{display:flex;gap:24px;align-items:center}.create-budget-checkbox{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#334155}.create-budget-submit{width:fit-content;min-width:72px;padding:8px 14px}.create-budget-feedback{margin:4px 0 0;font-size:13px;color:#0b5f8f}@media(max-width:1100px){.create-budget-grid-5{grid-template-columns:repeat(3,minmax(120px,1fr))}}@media(max-width:860px){.create-budget-grid-responsavel,.create-budget-grid-3,.create-budget-grid-2,.create-budget-grid-5{grid-template-columns:1fr}.create-budget-checkboxes{flex-direction:column;align-items:flex-start;gap:10px}}.budget-action-error{color:#c0392b;font-size:13px;margin:4px 0}.budget-versoes{margin-top:8px;font-size:13px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.budget-versoes a{padding:2px 8px;border:1px solid #ccc;border-radius:4px;text-decoration:none;color:#0b5f8f}.budget-versao-current{background:#0b5f8f;color:#fff!important}.budget-versoes-nav{font-size:12px;color:#555}.budget-versao-link{display:inline-block;padding:1px 7px;border:1px solid #ccc;border-radius:4px;background:none;color:#0b5f8f;cursor:pointer;font-size:12px;margin-left:3px;text-decoration:underline}.budget-versao-link:hover{background:#e8f0fe;border-color:#0b5f8f}.budget-versao-link--active{background:#0b5f8f;color:#fff;font-weight:700;text-decoration:none;cursor:default}.budget-bulk-actions{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:8px 0;border-bottom:1px solid #e8e8e8}.budget-select-all{display:flex;align-items:center;gap:6px;font-size:14px;cursor:pointer;-webkit-user-select:none;user-select:none}.budget-product-checkbox{display:flex;align-items:center;margin-right:8px}.budget-product-checkbox input{width:16px;height:16px;cursor:pointer}.icon-button-danger{color:#c0392b}.icon-button-danger:hover{background:#ffeaea}.inline-confirm{display:inline-flex;align-items:center;gap:4px;font-size:13px;white-space:nowrap}.chip-button.chip-danger{background:#c0392b;color:#fff;border-color:#c0392b}.chip-button.chip-danger:hover{background:#a93226}.memorial-page{background:#fff}.memorial-main{max-width:820px;margin:0 auto;padding:1rem 1.25rem 2rem}.memorial-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.memorial-intro{margin-bottom:1.5rem}.memorial-header-table{width:100%;max-width:780px;border-collapse:collapse;margin-bottom:1rem;border-bottom:4px solid #545454;line-height:1.4}.memorial-logo-cell{vertical-align:top;padding:4px;width:120px}.memorial-logo-text{font-weight:800;font-size:1.1rem;letter-spacing:.04em}.memorial-client-cell{vertical-align:top;padding:4px}.memorial-meta-cell{vertical-align:top;padding:4px;border-left:1px solid #999}.memorial-meta-inner{text-align:right}.memorial-section-title{font-size:1.125rem;padding-left:10px;margin:.75rem 0 .25rem}.memorial-summary-line{font-size:13px;padding-left:10px;padding-bottom:4px}.memorial-product-block{margin:1rem 8px}.memorial-product-table{width:100%;max-width:760px;border-collapse:collapse;border:1px solid #333}.memorial-product-head{background:#eaeaea;border-bottom:1px solid #333;text-align:left;padding:6px 8px;font-size:14px}.memorial-thumb-cell{vertical-align:top;padding:8px;width:120px}.memorial-desc-cell{vertical-align:top;padding:8px;width:40%}.memorial-qty-cell{vertical-align:top;padding:8px}.memorial-small{font-size:13px}@media print{.memorial-no-print,.topbar{display:none!important}.app{display:block!important}.memorial-main{padding:0!important;max-width:none!important;margin:0!important}.memorial-product-block{page-break-inside:avoid}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f0f2f5}.login-card{background:#fff;border-radius:12px;box-shadow:0 2px 16px #0000001a;padding:40px 36px 32px;width:100%;max-width:380px}.login-brand{display:flex;align-items:center;justify-content:center;margin-bottom:32px}.login-brand-logo{display:block;width:100%;max-width:260px;height:auto}.login-form{display:flex;flex-direction:column;gap:18px}.login-form .form-group{display:flex;flex-direction:column;gap:6px}.login-form label{font-size:13px;font-weight:600;color:#444}.login-form input{padding:10px 12px;border:1px solid #d0d5dd;border-radius:8px;font-size:14px;transition:border-color .15s}.login-form input:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e81f}.login-error{background:#fef2f2;color:#b91c1c;padding:10px 12px;border-radius:8px;font-size:13px;text-align:center}.login-button{padding:11px;background:#1a73e8;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s}.login-button:hover:not(:disabled){background:#1557b0}.login-button:disabled{opacity:.6;cursor:not-allowed}.user-menu-wrapper{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:6px;background:none;border:1px solid rgba(255,255,255,.3);border-radius:8px;color:inherit;cursor:pointer;padding:5px 10px;font-size:13px;transition:background .15s}.user-menu-trigger:hover{background:#ffffff1a}.user-menu-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border-radius:8px;box-shadow:0 4px 16px #00000026;min-width:160px;z-index:1000;overflow:hidden}.user-dropdown button{display:block;width:100%;padding:10px 16px;background:none;border:none;text-align:left;font-size:14px;color:#333;cursor:pointer}.user-dropdown button:hover{background:#f0f2f5}.modal-senha{max-width:400px}.modal-senha .form-group{margin-bottom:14px}.modal-senha label{display:block;font-size:13px;font-weight:600;color:#444;margin-bottom:4px}.modal-senha input{width:100%;padding:9px 12px;border:1px solid #d0d5dd;border-radius:8px;font-size:14px;box-sizing:border-box}.modal-senha input:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e81f}.senha-sucesso{background:#f0fdf4;color:#166534;padding:10px 12px;border-radius:8px;font-size:13px;text-align:center;margin-bottom:10px}.agenda-layout{display:grid;grid-template-columns:220px 1fr;gap:24px;max-width:1280px;margin:24px auto 80px;padding:0 24px;align-items:start}.agenda-nav{display:flex;flex-direction:column;gap:6px;background:#eef2f5;border-radius:8px;padding:12px}.agenda-nav-link{display:block;padding:10px 12px;border-radius:6px;color:#1f2a37;text-decoration:none;font-size:14px}.agenda-nav-link:hover,.agenda-nav-link.active{background:#0b5f8f;color:#fff}.agenda-content{min-width:0}.agenda-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.agenda-primary-btn{background:#0b5f8f;color:#fff;border:none;border-radius:6px;padding:8px 14px;font-size:13px;cursor:pointer}.agenda-primary-btn:hover{background:#094d74}.agenda-filters{grid-template-columns:repeat(auto-fit,minmax(140px,1fr)) auto}.agenda-estagio-cell{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.agenda-estagio-nome{font-size:13px}.agenda-estagio-edit{position:relative;display:inline-flex;align-items:center;gap:2px;padding:2px 4px;border:1px solid #d6dee6;border-radius:4px;background:#fff;cursor:pointer}.agenda-estagio-edit:hover{border-color:#0b5f8f}.agenda-estagio-pencil,.agenda-estagio-caret{font-size:12px;color:#0b5f8f;pointer-events:none;line-height:1}.agenda-estagio-select{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;font-size:12px}.agenda-situacao{display:inline-block;width:14px;height:14px;border-radius:50%}.agenda-sit-pendente{background:#daa520}.agenda-sit-atrasada{background:#e06666}.agenda-sit-concluida{background:#6aa84f}.agenda-icon-btn{border:none;background:transparent;cursor:pointer;font-size:14px;padding:2px 4px}.agenda-detail-meta{display:flex;flex-wrap:wrap;gap:16px 24px;margin:16px 0;font-size:14px;color:#334155}.agenda-tabs{display:flex;gap:8px;margin-bottom:12px}.agenda-tabs button{border:1px solid #d6dee6;background:#fff;border-radius:6px;padding:8px 14px;cursor:pointer}.agenda-tabs button.active{background:#0b5f8f;color:#fff;border-color:#0b5f8f}.agenda-calendar-wrap{background:#fff;border-radius:10px;padding:16px;box-shadow:0 2px 10px #0f172a14}.agenda-lookup-row .modal-search{display:flex;gap:8px}@media(max-width:900px){.agenda-layout{grid-template-columns:1fr}.agenda-nav{flex-direction:row;flex-wrap:wrap}}
