.estimate-engine{border:2px solid rgba(22,163,74,.28);background:linear-gradient(180deg,#f0fdf4,#fff);box-shadow:0 18px 55px rgba(22,101,52,.12)}.estimate-engine-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.estimate-engine h2{letter-spacing:-.04em}.estimate-total{min-width:220px;background:#052e16;color:#fff;border-radius:20px;padding:16px;text-align:right;box-shadow:0 14px 35px rgba(5,46,22,.25)}.estimate-total span,.estimate-total small{display:block;color:#bbf7d0;font-weight:800}.estimate-total b{display:block;font-size:30px;line-height:1.1;margin:4px 0}.estimate-engine-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:18px}.estimate-engine article{background:#fff;border:1px solid #dcfce7;border-radius:18px;padding:14px;display:grid;gap:10px}.estimate-engine article h3{margin:0;font-size:15px}.estimate-engine label{display:grid;gap:5px}.estimate-engine label span{font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;color:#166534}.estimate-engine input,.estimate-engine textarea{border:1px solid #bbf7d0;border-radius:12px;padding:10px 11px;font-weight:800;background:#fafffb}.estimate-engine textarea{min-height:90px;resize:vertical}.estimate-breakdown p{display:flex;justify-content:space-between;gap:10px;margin:0;padding:8px 0;border-bottom:1px dashed #bbf7d0}.estimate-breakdown p:last-child{border-bottom:0;background:#ecfdf5;border-radius:12px;padding:10px}.estimate-breakdown span{font-weight:950}.estimate-notes{margin-top:14px}.estimate-engine-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.estimate-engine-actions button{border:0;border-radius:13px;padding:10px 12px;background:#166534;color:#fff;font-weight:900}.estimate-engine-actions button:nth-child(5){background:#b91c1c}.estimate-engine-actions button:nth-child(7),.estimate-engine-actions button:nth-child(8){background:#0f172a}@media(max-width:760px){.estimate-engine-head{display:grid}.estimate-total{text-align:left}.estimate-engine-actions button{flex:1 1 145px}}