body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--primary-color:#8b5a3c;--primary-dark:#6b4226;--secondary-color:#d2691e;--accent-color:sienna;--success-color:#228b22;--danger-color:#dc143c;--warning-color:#ff8c00;--background:#fff;--surface:#fff;--surface-light:#faf8f5;--text-primary:#333;--text-secondary:#666;--border-color:#e0d5c7;--shadow-sm:0 1px 3px #8b5a3c1a;--shadow-md:0 4px 6px #8b5a3c26;--shadow-lg:0 10px 20px #8b5a3c33;--border-radius:6px;--transition:all 0.2s ease;--header-brown:#8b5a3c;--card-hover:#f5f0ea}*{box-sizing:border-box;margin:0;padding:0}body{color:#333;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6}.App,.sb-flooring-app,body{background:#fff;background:var(--background);min-height:100vh}.app-main{margin:0 auto;max-width:1200px;padding:30px 20px}.app-header{background:#8b5a3c;background:var(--header-brown);box-shadow:0 2px 4px #0000001a;margin:0;padding:12px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.business-branding{align-items:center;display:flex;gap:15px;transition:opacity .2s ease}.business-branding:hover{opacity:.85}.business-branding h1{color:#fff;font-size:1.3rem;font-weight:700;margin:0}.tagline{border-left:1px solid #ffffff4d;color:#ffffffe6;font-size:.9rem;margin:0;padding-left:15px}.header-contact{align-items:center;display:flex;gap:20px}.header-phone{background:#228b22;background:var(--success-color);color:#fff;font-size:1rem;font-weight:500}.header-phone:hover{box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);transform:translateY(-2px)}.header-facebook{align-items:center;background:#1877f2;color:#fff;display:flex;gap:8px}.header-facebook:hover{background:#166fe5;box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);transform:translateY(-2px)}.fb-icon{background:#fff;border-radius:50%;color:#1877f2;display:inline-block;font-weight:700;height:20px;line-height:20px;text-align:center;width:20px}.step-container{background:#fff;background:var(--surface);border-radius:6px;border-radius:var(--border-radius);box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);margin-bottom:20px;padding:30px}.step-title{color:#8b5a3c;color:var(--primary-color);font-size:1.8rem;font-weight:700;margin-bottom:10px;text-align:center}.step-subtitle{color:#666;color:var(--text-secondary);margin-bottom:30px;text-align:center}.project-types-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.project-type-card{background:var(--surface);border:3px solid #0000;border-radius:6px;border-radius:var(--border-radius);padding:30px;position:relative;transition:all .2s ease;transition:var(--transition)}.project-type-card,.project-type-card:hover{box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md)}.project-type-card:hover{background:#f5f0ea;background:var(--card-hover);transform:translateY(-2px)}.project-type-card.selected,.project-type-card:hover{border-color:#8b5a3c;border-color:var(--primary-color)}.project-type-card.selected{background:#faf8f5;background:var(--surface-light);box-shadow:0 0 0 3px #8b5a3c1a}.project-icon{align-items:center;background:#8b5a3c;background:var(--primary-color);border-radius:50%;color:#fff;display:flex;font-size:2rem;height:50px;justify-content:center;margin:0 auto 15px;width:50px}.project-name{color:#333;color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:10px}.project-description{color:#666;color:var(--text-secondary);font-size:.95rem}.sample-guide{background:#fff;background:var(--background);border-left:4px solid #8b5a3c;border-left:4px solid var(--primary-color);border-radius:8px;margin-bottom:25px;padding:20px}.sample-guide h4{color:#8b5a3c;color:var(--primary-color);margin-bottom:15px}.sample-list{list-style:none;padding:0}.sample-list li{padding:5px 0}.photo-tip,.sample-list li{color:#333;color:var(--text-primary)}.photo-tip{animation:pulse-border 2s infinite;background:linear-gradient(135deg,#667eea26,#764ba226);border:2px solid #8b5a3c;border:2px solid var(--primary-color);border-radius:10px;box-shadow:0 1px 3px #8b5a3c1a;box-shadow:var(--shadow-sm);font-size:.95rem;font-weight:600;line-height:1.5;margin-top:15px;padding:15px}@keyframes pulse-border{0%,to{border-color:#8b5a3c;border-color:var(--primary-color)}50%{border-color:#d2691e;border-color:var(--secondary-color)}}.upload-controls{display:flex;gap:15px;justify-content:center;margin-bottom:25px}.camera-btn,.upload-btn{background:#fff;border:2px solid #8b5a3c;border:2px solid var(--primary-color);border-radius:6px;border-radius:var(--border-radius);color:#8b5a3c;color:var(--primary-color);cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:12px 24px;text-align:center;transition:all .2s ease;transition:var(--transition)}.camera-btn:hover,.upload-btn:hover{background:#8b5a3c;background:var(--primary-color);color:#fff;transform:translateY(-1px)}label.camera-btn{display:inline-block}.images-preview{margin:25px 0}.images-preview h4{color:#8b5a3c;color:var(--primary-color);margin-bottom:15px}.images-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.image-preview{aspect-ratio:1;border-radius:8px;box-shadow:0 1px 3px #8b5a3c1a;box-shadow:var(--shadow-sm);overflow:hidden;position:relative}.image-preview img{height:100%;object-fit:cover;width:100%}.remove-btn{align-items:center;background:#dc143c;background:var(--danger-color);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;line-height:1;position:absolute;right:5px;top:5px;transition:all .2s ease;transition:var(--transition);width:24px}.remove-btn:hover{background:#e53e3e;transform:scale(1.1)}.details-section{margin:25px 0}.details-section h4{color:#8b5a3c;color:var(--primary-color);margin-bottom:10px}.details-input{background:#fff;background:var(--background);border-radius:8px;font-family:inherit;margin-bottom:20px;padding:12px 15px;transition:all .2s ease;transition:var(--transition)}.details-input:focus{background:#fff;background:var(--surface)}.quality-options{display:flex;flex-direction:column;gap:10px}.quality-option{align-items:center;background:#fff;background:var(--background);border-radius:8px;cursor:pointer;display:flex;padding:10px;transition:all .2s ease;transition:var(--transition)}.quality-option:hover{background:#667eea0d}.quality-option input[type=radio]{margin-right:10px}.quality-name{color:#333;color:var(--text-primary);font-weight:600}.quality-desc{color:#666;color:var(--text-secondary)}.quality-example{color:#8b5a3c;color:var(--primary-color);font-size:.9rem;font-style:italic;margin-left:5px}.action-buttons{gap:15px;margin-top:30px}.back-btn,.contact-btn,.continue-btn,.estimate-btn,.submit-btn,.visualize-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;transition:all .2s ease;transition:var(--transition)}.contact-btn,.continue-btn,.estimate-btn,.submit-btn,.visualize-btn{background:linear-gradient(135deg,#8b5a3c,#d2691e);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff}.contact-btn:hover,.continue-btn:hover,.estimate-btn:hover,.submit-btn:hover,.visualize-btn:hover{box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);transform:translateY(-2px)}.back-btn{background:#fff;background:var(--background);border:2px solid #e0d5c7;border:2px solid var(--border-color);color:#333;color:var(--text-primary)}.back-btn:hover{background:#667eea0d;border-color:#8b5a3c;border-color:var(--primary-color)}.continue-btn:disabled,.estimate-btn:disabled,.submit-btn:disabled,.visualize-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.estimate-container{background:#fff;background:var(--surface);border-radius:6px;border-radius:var(--border-radius);box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);padding:30px}.cost-breakdown{margin:20px 0}.cost-breakdown h3{color:#8b5a3c;color:var(--primary-color);margin-bottom:15px}.cost-item{background:#fff;background:var(--background);border-radius:8px;display:flex;justify-content:space-between;margin-bottom:10px;padding:15px}.cost-item span:first-child{color:#333;color:var(--text-primary);font-weight:500}.cost-value{color:#8b5a3c;color:var(--primary-color);font-weight:700}.cost-item.total{background:linear-gradient(135deg,#667eea1a,#764ba21a);border:2px solid #8b5a3c;border:2px solid var(--primary-color)}.cost-item.total .cost-value{font-size:1.3rem}.timeline{background:#fff;background:var(--background);border-left:4px solid #8b5a3c;border-left:4px solid var(--primary-color);border-radius:8px;margin:20px 0;padding:20px}.timeline h3{color:#8b5a3c;color:var(--primary-color);font-weight:600;margin-bottom:10px}.timeline p{color:#666;color:var(--text-secondary)}.scope{background:#fff;background:var(--background);border-left:4px solid #8b5a3c;border-left:4px solid var(--primary-color);border-radius:8px;margin:20px 0;padding:20px}.scope h3{color:#8b5a3c;color:var(--primary-color);font-weight:600;margin-bottom:10px}.scope-content{color:#333;color:var(--text-primary)}.recommendations{background:#48bb781a;border:2px solid #228b22;border:2px solid var(--success-color);border-radius:8px;margin:20px 0;padding:20px}.recommendations h3{color:#228b22;color:var(--success-color);font-weight:600;margin-bottom:10px}.recommendations-content{color:#333;color:var(--text-primary)}.visualization-section{margin:20px 0}.before-after-container{align-items:center;background:#fff;border-radius:6px;border-radius:var(--border-radius);box-shadow:0 1px 3px #8b5a3c1a;box-shadow:var(--shadow-sm);display:flex;gap:15px;min-height:350px;padding:20px}.before-image{flex:0 0 35%;overflow:hidden;text-align:center}.after-image{display:flex;flex:1 1;flex-direction:column;text-align:center}.after-image h4,.before-image h4{color:#8b5a3c;color:var(--primary-color);font-size:1rem;font-weight:600;margin-bottom:10px}.before-image .room-image{max-height:300px;object-fit:cover}.after-image .room-image,.before-image .room-image{border-radius:6px;border-radius:var(--border-radius);height:auto;width:100%}.after-image .room-image{border:2px solid #e0d5c7;border:2px solid var(--border-color);max-height:350px;object-fit:contain}.arrow-divider{color:#8b5a3c;color:var(--primary-color);flex:0 0 auto;font-size:1.5rem;padding:0 10px}@keyframes pulse{0%,to{transform:translateX(0)}50%{transform:translateX(10px)}}.viz-placeholder{align-items:center;background:linear-gradient(135deg,#667eea0d,#764ba20d);border:2px dashed #8b5a3c;border:2px dashed var(--primary-color);border-radius:6px;border-radius:var(--border-radius);display:flex;height:300px;justify-content:center;width:100%}.viz-placeholder span{color:#8b5a3c;color:var(--primary-color);font-size:1.1rem;font-weight:600}.primary-btn{background:linear-gradient(135deg,#8b5a3c,#d2691e);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;border-radius:10px;box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:14px 28px;transition:all .2s ease;transition:var(--transition)}.primary-btn:hover:not(:disabled){box-shadow:0 10px 20px #8b5a3c33;box-shadow:var(--shadow-lg);transform:translateY(-3px)}.primary-btn:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.before-after-container{flex-direction:column;gap:20px;gap:15px;min-height:auto;padding:15px}.arrow-divider{animation:pulse-vertical 2s infinite;transform:rotate(90deg)}@keyframes pulse-vertical{0%,to{transform:rotate(90deg) translateX(0)}50%{transform:rotate(90deg) translateX(10px)}}.room-image{max-height:250px}}.contact-form{margin:0 auto;max-width:600px}.form-group{margin-bottom:20px}.form-group label{margin-bottom:8px}.form-group input,.form-group textarea{background:#fff;background:var(--background);border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:1rem;padding:12px 15px;transition:all .2s ease;transition:var(--transition);width:100%}.form-group input:focus,.form-group textarea:focus{background:#fff;background:var(--surface);border-color:#8b5a3c;border-color:var(--primary-color);outline:none}.dates-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-top:10px}.date-btn{background:#fff;background:var(--background);border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:8px;color:#333;color:var(--text-primary);cursor:pointer;font-size:.9rem;padding:10px;transition:all .2s ease;transition:var(--transition)}.date-btn:hover{background:#667eea0d}.date-btn.selected,.date-btn:hover{border-color:#8b5a3c;border-color:var(--primary-color)}.date-btn.selected{background:#667eea1a;color:#8b5a3c;color:var(--primary-color);font-weight:600}.loading-overlay{align-items:center;background:#00000080;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.loader{animation:spin 1s linear infinite;border:4px solid #e0d5c7;border-top:4px solid #8b5a3c;border:4px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);height:50px;margin-bottom:20px;width:50px}.loading-overlay p{color:#fff;font-size:1.1rem;text-align:center}.camera-interface{align-items:center;background:#000000f2;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.camera-container{background:#000;border-radius:6px;border-radius:var(--border-radius);max-height:90vh;max-width:90vw;overflow:hidden;position:relative;width:100%}.camera-video{height:auto;max-height:70vh;object-fit:contain;transform-origin:center center;transition:transform .3s ease;width:100%}.zoom-controls{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000c;border-radius:25px;bottom:80px;display:flex;gap:15px;left:50%;padding:15px 25px;position:absolute;transform:translateX(-50%)}.zoom-label{color:#fff;font-size:14px;font-weight:600;min-width:80px}.zoom-slider{-webkit-appearance:none;appearance:none;background:#ffffff4d;border-radius:3px;height:6px;outline:none;width:150px}.zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#8b5a3c;background:var(--primary-color);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000004d;cursor:pointer;height:20px;width:20px}.zoom-slider::-moz-range-thumb{background:#8b5a3c;background:var(--primary-color);border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000004d;cursor:pointer;height:20px;width:20px}.camera-actions{bottom:20px;display:flex;gap:15px;left:50%;position:absolute;transform:translateX(-50%)}.capture-btn,.close-camera-btn{align-items:center;border:none;border-radius:25px;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s}.capture-btn{background:#8b5a3c;background:var(--primary-color);color:#fff}.capture-btn:hover{background:#6b4226;background:var(--primary-dark);transform:scale(1.05)}.capture-btn:active{transform:scale(.95)}.close-camera-btn{background:#f56565e6;color:#fff}.close-camera-btn:hover{background:#dc143c;background:var(--danger-color)}.history-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;position:absolute;right:20px;top:20px;transition:all .3s}.history-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-2px)}.history-container{background:#fff;background:var(--surface);border-radius:6px;border-radius:var(--border-radius);box-shadow:0 10px 20px #8b5a3c33;box-shadow:var(--shadow-lg);padding:30px}.history-header{align-items:center;border-bottom:2px solid #e0d5c7;border-bottom:2px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.history-header h2{color:#8b5a3c;color:var(--primary-color);font-size:1.8rem;margin:0}.close-history-btn{background:#dc143c;background:var(--danger-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:8px 16px;transition:all .3s}.close-history-btn:hover{background:#e53e3e;transform:translateY(-2px)}.no-history{color:#666;color:var(--text-secondary);font-size:1.1rem;padding:60px 20px;text-align:center}.history-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.history-card{background:#fff;background:var(--background);border:2px solid #0000;border-radius:12px;box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);overflow:hidden;transition:all .3s}.history-card:hover{border-color:#8b5a3c;border-color:var(--primary-color);box-shadow:0 10px 20px #8b5a3c33;box-shadow:var(--shadow-lg);transform:translateY(-5px)}.history-card-header{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-bottom:1px solid #e0d5c7;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:15px 20px}.project-type-badge{background:#8b5a3c;background:var(--primary-color);border-radius:20px;color:#fff;font-size:.85rem;font-weight:600;padding:5px 12px;text-transform:capitalize}.date-badge{color:#666;color:var(--text-secondary);font-size:.85rem}.history-card-body{padding:20px}.estimate-summary{border-bottom:1px solid #e0d5c7;border-bottom:1px solid var(--border-color);margin-bottom:15px;padding-bottom:15px}.cost-range{color:#8b5a3c;color:var(--primary-color);font-size:1.4rem;font-weight:700;margin:5px 0}.timeline{color:#666;color:var(--text-secondary);font-size:.95rem;margin:5px 0}.quality{background:#48bb781a;border-radius:15px;color:#228b22;color:var(--success-color);display:inline-block;font-size:.85rem;font-weight:600;margin-top:8px;padding:3px 10px;text-transform:capitalize}.history-meta{color:#666;color:var(--text-secondary);display:flex;font-size:.9rem;gap:20px;margin:15px 0}.history-meta span{align-items:center;display:flex;gap:5px}.contact-info{background:#667eea0d;border-radius:8px;margin:15px 0;padding:10px 15px}.contact-info p{color:#666;color:var(--text-secondary);font-size:.9rem;margin:3px 0}.view-details-btn{background:linear-gradient(135deg,#8b5a3c,#d2691e);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-top:15px;padding:12px;transition:all .3s;width:100%}.view-details-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.refinement-section{background:#fff;background:var(--surface);border-radius:6px;border-radius:var(--border-radius);box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);margin:30px 0;padding:25px}.refine-btn{background:linear-gradient(135deg,#8b5a3c,#d2691e);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:15px;transition:all .2s ease;transition:var(--transition);width:100%}.refine-btn:hover{box-shadow:0 10px 20px #8b5a3c33;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.refinement-form{background:#fff;background:var(--background);border-radius:6px;border-radius:var(--border-radius);padding:20px}.refinement-form h3{color:#8b5a3c;color:var(--primary-color);margin-bottom:15px}.refinement-help{background:#667eea0d;border-left:3px solid #8b5a3c;border-left:3px solid var(--primary-color);border-radius:8px;color:#666;color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin-bottom:20px;padding:15px}.refinement-input{background:#fff;background:var(--surface);border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:8px;font-family:inherit;font-size:1rem;padding:15px;resize:vertical;transition:all .2s ease;transition:var(--transition);width:100%}.refinement-input:focus{border-color:#8b5a3c;border-color:var(--primary-color);box-shadow:0 0 0 3px #667eea1a;outline:none}.refinement-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:20px}.cancel-btn{background:#fff;background:var(--background);border-radius:8px;color:#333;color:var(--text-primary);font-weight:600;padding:12px 24px}.cancel-btn:hover{border-color:#dc143c;border-color:var(--danger-color);color:#dc143c;color:var(--danger-color)}.update-btn{background:linear-gradient(135deg,#8b5a3c,#d2691e);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease;transition:var(--transition)}.update-btn:hover:not(:disabled){box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);transform:translateY(-2px)}.update-btn:disabled{cursor:not-allowed;opacity:.5}.conversation-history{background:#fff;background:var(--background);border:1px solid #e0d5c7;border:1px solid var(--border-color);border-radius:6px;border-radius:var(--border-radius);margin-top:25px;padding:20px}.conversation-history h4{color:#8b5a3c;color:var(--primary-color);font-size:1.1rem;margin-bottom:15px}.history-entry{border-bottom:1px solid #e0d5c7;border-bottom:1px solid var(--border-color);margin-bottom:15px;padding-bottom:15px}.history-entry:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.user-refinement{background:#667eea0d;border-left:3px solid #8b5a3c;border-left:3px solid var(--primary-color);border-radius:5px;margin-bottom:10px;padding:10px}.user-refinement strong{color:#8b5a3c;color:var(--primary-color);display:block;margin-bottom:5px}.assistant-response{background:#48bb780d;border-left:3px solid #228b22;border-left:3px solid var(--success-color);border-radius:5px;padding:10px}.assistant-response strong{color:#228b22;color:var(--success-color);display:block;margin-bottom:5px}.auth-widget{position:fixed;right:20px;top:20px;z-index:1000}.auth-button{background:linear-gradient(135deg,#8b5a3c,#d2691e);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;border-radius:25px;box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .2s ease;transition:var(--transition)}.auth-button:hover{transform:translateY(-2px)}.auth-button:hover,.auth-dropdown{box-shadow:0 10px 20px #8b5a3c33;box-shadow:var(--shadow-lg)}.auth-dropdown{animation:slideDown .3s ease;background:#fff;background:var(--surface);border-radius:6px;border-radius:var(--border-radius);max-height:600px;max-width:400px;min-width:300px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 10px)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.auth-menu{padding:20px}.auth-header{border-bottom:1px solid #e0d5c7;border-bottom:1px solid var(--border-color);margin-bottom:15px;padding-bottom:15px}.auth-header h3{color:#8b5a3c;color:var(--primary-color);font-size:1.2rem;margin:0}.menu-item{background:#fff;background:var(--background);border:none;border-radius:8px;color:#333;color:var(--text-primary);cursor:pointer;display:block;font-size:1rem;margin:5px 0;padding:12px 15px;text-align:left;transition:all .2s ease;transition:var(--transition);width:100%}.menu-item:hover{background:#667eea1a;transform:translateX(5px)}.menu-item.logout{color:#dc143c;color:var(--danger-color)}.menu-item.logout:hover{background:#f565651a}.auth-menu form{padding:0}.auth-menu form h3{color:#8b5a3c;color:var(--primary-color);margin-bottom:20px;text-align:center}.auth-input{background:#fff;background:var(--background);border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;margin:10px 0;padding:12px;transition:all .2s ease;transition:var(--transition);width:100%}.auth-input:focus{background:#fff;background:var(--surface);border-color:#8b5a3c;border-color:var(--primary-color);outline:none}.auth-error{background:#f565651a;border-radius:8px;color:#dc143c;color:var(--danger-color);font-size:.9rem;margin:10px 0;padding:10px}.auth-submit{background:linear-gradient(135deg,#8b5a3c,#d2691e);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin:10px 0;padding:12px;transition:all .2s ease;transition:var(--transition);width:100%}.auth-submit:hover:not(:disabled){box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);transform:translateY(-2px)}.auth-submit:disabled{cursor:not-allowed;opacity:.5}.auth-cancel,.auth-switch{background:#0000;border:none;color:#8b5a3c;color:var(--primary-color);cursor:pointer;font-size:.9rem;margin:5px 0;padding:10px;transition:all .2s ease;transition:var(--transition);width:100%}.auth-cancel:hover,.auth-switch:hover{text-decoration:underline}.projects-list{border-top:1px solid #e0d5c7;border-top:1px solid var(--border-color);margin-top:20px;padding-top:20px}.projects-list h4{color:#8b5a3c;color:var(--primary-color);margin-bottom:15px}.project-item{background:#fff;background:var(--background);cursor:pointer;display:flex;gap:15px;margin:10px 0;padding:12px;transition:all .2s ease;transition:var(--transition)}.project-item:hover{background:#667eea1a;transform:translateX(5px)}.project-thumb{background:#e0d5c7;background:var(--border-color);border-radius:8px;flex-shrink:0;height:60px;overflow:hidden;width:60px}.project-thumb img{height:100%;object-fit:cover;width:100%}.project-info{display:flex;flex:1 1;flex-direction:column;gap:4px}.project-info strong{color:#333;color:var(--text-primary);font-size:.95rem}.project-info span{color:#666;color:var(--text-secondary);font-size:.85rem}.project-info small{color:#666;color:var(--text-secondary);font-size:.8rem}.no-projects{font-style:italic}.loading,.no-projects{color:#666;color:var(--text-secondary);padding:20px;text-align:center}hr{border:none;border-top:1px solid #e0d5c7;border-top:1px solid var(--border-color);margin:15px 0}.modal-overlay{align-items:center;animation:fadeIn .3s ease;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUp .3s ease;background:#fff;background:var(--surface);border-radius:6px;border-radius:var(--border-radius);box-shadow:0 10px 20px #8b5a3c33;box-shadow:var(--shadow-lg);max-width:500px;padding:30px;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-content h2{color:#8b5a3c;color:var(--primary-color);margin-bottom:10px}.modal-content p{color:#666;color:var(--text-secondary);margin-bottom:20px}.save-project-modal .auth-section{background:#fff;background:var(--background);border:1px solid #e0d5c7;border:1px solid var(--border-color);border-radius:8px;margin-bottom:20px;padding:20px}.save-project-modal .auth-message{color:#8b5a3c;color:var(--primary-color);font-weight:600;margin-bottom:15px}.save-project-modal .auth-input{background:#fff;border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;margin-bottom:12px;padding:12px;transition:all .2s ease;transition:var(--transition);width:100%}.save-project-modal .auth-input:focus{border-color:#8b5a3c;border-color:var(--primary-color);outline:none}.save-project-modal .auth-toggle-btn{background:none;border:none;color:#8b5a3c;color:var(--primary-color);cursor:pointer;font-size:.9rem;margin-top:5px;padding:0;text-decoration:underline}.save-project-modal .auth-toggle-btn:hover{color:#d2691e;color:var(--secondary-color)}.save-project-modal .logged-in-message{background:#8b5a3c1a;border-radius:6px;color:#8b5a3c;color:var(--primary-color);font-weight:500;margin-bottom:20px;padding:10px}.save-project-modal .project-name-section{margin-top:10px}.save-project-modal .project-name-section p{font-weight:500;margin-bottom:10px}.project-name-input{background:#fff;background:var(--background);border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:8px;font-size:1.1rem;margin-bottom:20px;padding:15px;transition:all .2s ease;transition:var(--transition);width:100%}.project-name-input:focus{background:#fff;background:var(--surface);border-color:#8b5a3c;border-color:var(--primary-color);outline:none}.modal-buttons{display:flex;gap:15px;justify-content:flex-end}.save-btn{background:linear-gradient(135deg,#8b5a3c,#d2691e);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease;transition:var(--transition)}.save-btn:hover{box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);transform:translateY(-2px)}.business-footer{background:#8b5a3c;background:var(--primary-color);color:#fff;font-size:.85rem;margin-top:30px;padding:15px 20px;text-align:center}.footer-content{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.footer-content span{color:#ffffffe6}.footer-content a{color:#fff;font-size:.95rem;text-decoration:none}.footer-section a{color:#ffffffe6;text-decoration:none;transition:all .2s ease;transition:var(--transition)}.footer-section a:hover{color:#fff;text-decoration:underline}.facebook-link{align-items:center;background:#1877f2;border-radius:25px;display:inline-flex;gap:10px;margin:10px 0;padding:10px 20px;transition:all .2s ease;transition:var(--transition)}.facebook-link:hover{background:#166fe5;text-decoration:none!important;transform:translateY(-2px)}.fb-icon-large{background:#fff;border-radius:50%;color:#1877f2;display:inline-block;font-size:18px;font-weight:700;height:25px;line-height:25px;text-align:center;width:25px}.portfolio-text{color:#fff9!important;font-size:.85rem!important;font-style:italic;margin-top:5px}.footer-bottom{color:#fff9;font-size:.85rem;padding-top:20px;text-align:center}.footer-bottom p{margin:5px 0}.contact-owner-section{background:#fff;background:var(--surface);border:2px solid #8b5a3c;border:2px solid var(--primary-color);border-radius:6px;border-radius:var(--border-radius);box-shadow:0 10px 20px #8b5a3c33;box-shadow:var(--shadow-lg);margin:30px 0;padding:30px}.contact-header{margin-bottom:30px;text-align:center}.contact-header h2{color:#8b5a3c;color:var(--primary-color);font-size:1.8rem;margin-bottom:10px}.contact-header p{color:#666;color:var(--text-secondary);font-size:1.1rem}.contact-main{display:flex;flex-direction:column;gap:25px}.owner-message{background:#fff;background:var(--background);border-radius:6px;border-radius:var(--border-radius);gap:20px;padding:20px}.owner-avatar,.owner-message{align-items:center;display:flex}.owner-avatar{background:#8b5a3c;background:var(--primary-color);border-radius:50%;font-size:3rem;height:80px;justify-content:center;width:80px}.owner-info h3{color:#8b5a3c;color:var(--primary-color);margin-bottom:10px}.owner-info p{color:#333;color:var(--text-primary);line-height:1.6}.contact-options{display:flex;flex-direction:column;gap:20px}.contact-primary-btn{box-shadow:0 4px 6px #8b5a3c26;box-shadow:var(--shadow-md);font-size:1.1rem;font-weight:600;padding:15px}.contact-primary-btn:hover{background:#276749;box-shadow:0 10px 20px #8b5a3c33;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-icon{font-size:2rem}.btn-title{display:block;font-size:1.2rem;font-weight:700}.btn-subtitle{display:block;font-size:.9rem;opacity:.9}.contact-call-option{background:#fff;background:var(--background);border-radius:6px;border-radius:var(--border-radius);padding:20px;text-align:center}.contact-call-option h4{margin-bottom:15px}.phone-display{align-items:center;display:flex;gap:10px;justify-content:center;margin:15px 0}.phone-icon{font-size:1.5rem}.availability{color:#666;color:var(--text-secondary);font-size:.9rem}.callback-section{background:#fff;background:var(--background);border-radius:6px;border-radius:var(--border-radius);padding:20px}.callback-btn{align-items:center;background:#8b5a3c;background:var(--primary-color);border:none;border-radius:6px;border-radius:var(--border-radius);color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:10px;justify-content:center;padding:15px;transition:all .2s ease;transition:var(--transition);width:100%}.callback-btn:hover{background:#6b4226;background:var(--primary-dark);transform:translateY(-1px)}.callback-form{display:flex;flex-direction:column;gap:10px}.callback-input{border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:6px;border-radius:var(--border-radius);font-size:1rem;padding:12px}.callback-input:focus{border-color:#8b5a3c;border-color:var(--primary-color);outline:none}.callback-actions{display:flex;gap:10px}.submit-callback-btn{background:#228b22;background:var(--success-color);border:none;border-radius:6px;border-radius:var(--border-radius);color:#fff;cursor:pointer;flex:1 1;font-weight:600;padding:12px;transition:all .2s ease;transition:var(--transition)}.submit-callback-btn:hover:not(:disabled){background:#276749}.submit-callback-btn:disabled{cursor:not-allowed;opacity:.5}.cancel-btn{background:#0000;border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:6px;border-radius:var(--border-radius);color:#666;color:var(--text-secondary);cursor:pointer;padding:12px 20px;transition:all .2s ease;transition:var(--transition)}.cancel-btn:hover{border-color:#666;border-color:var(--text-secondary)}.callback-success{background:#48bb781a;color:#228b22;color:var(--success-color);font-weight:600;padding:15px;text-align:center}.callback-success,.contact-benefits{border-radius:6px;border-radius:var(--border-radius)}.contact-benefits{background:#2c52820d;border-left:4px solid #8b5a3c;border-left:4px solid var(--primary-color);padding:20px}.contact-benefits h4{color:#8b5a3c;color:var(--primary-color);margin-bottom:15px}.contact-benefits ul{list-style:none;padding:0}.contact-benefits li{align-items:center;color:#333;color:var(--text-primary);display:flex;gap:10px;padding:8px 0}.sms-chat-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.sms-chat-container{background:#fff;background:var(--surface);border-radius:6px;border-radius:var(--border-radius);box-shadow:0 10px 20px #8b5a3c33;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;height:80vh;max-height:600px;max-width:500px;overflow:hidden;width:90%}.sms-chat-header{align-items:center;background:#8b5a3c;background:var(--primary-color);color:#fff;display:flex;justify-content:space-between;padding:20px}.sms-chat-header h3{font-size:1.2rem;margin:0}.sms-chat-header p{font-size:.9rem;margin:5px 0 0;opacity:.9}.chat-close-btn{align-items:center;background:#0000;border:none;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:0;transition:all .2s ease;transition:var(--transition);width:30px}.chat-close-btn:hover{background:#fff3;border-radius:50%}.chat-start-form{display:flex;flex-direction:column;gap:20px;padding:30px}.chat-start-form h4{color:#8b5a3c;color:var(--primary-color);margin:0}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#333;color:var(--text-primary)}.chat-input{border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:6px;border-radius:var(--border-radius);font-size:1rem;padding:12px}.chat-input:focus{border-color:#8b5a3c;border-color:var(--primary-color);outline:none}.start-chat-btn{background:#228b22;background:var(--success-color);border:none;border-radius:6px;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:15px;transition:all .2s ease;transition:var(--transition)}.start-chat-btn:hover:not(:disabled){background:#276749;transform:translateY(-2px)}.start-chat-btn:disabled{cursor:not-allowed;opacity:.5}.chat-alternative{border-top:1px solid #e0d5c7;border-top:1px solid var(--border-color);padding-top:20px;text-align:center}.owner-phone{color:#8b5a3c;color:var(--primary-color);font-size:1.3rem;font-weight:700;margin:10px 0}.chat-messages-area{height:100%}.chat-messages-area,.messages-container{display:flex;flex:1 1;flex-direction:column}.messages-container{gap:10px;overflow-y:auto;padding:20px}.message{word-wrap:break-word;border-radius:12px;max-width:70%;padding:12px 16px}.message.customer{align-self:flex-end;background:#8b5a3c;background:var(--primary-color);color:#fff}.message.owner{align-self:flex-start;background:#fff;background:var(--background);color:#333;color:var(--text-primary)}.message.system{align-self:center;background:#7180961a;color:#666;color:var(--text-secondary);font-size:.9rem;max-width:90%;text-align:center}.message-content{margin-bottom:5px}.message-time{font-size:.75rem;opacity:.7}.sending-indicator{font-size:.8rem;font-style:italic;margin-left:10px;opacity:.7}.error-indicator{color:#dc143c;color:var(--danger-color);font-size:.8rem;margin-left:10px}.chat-input-area{border-top:1px solid #e0d5c7;border-top:1px solid var(--border-color);display:flex;gap:10px;padding:20px}.message-input{border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:25px;flex:1 1;font-size:1rem;padding:12px}.message-input:focus{border-color:#8b5a3c;border-color:var(--primary-color);outline:none}.send-btn{background:#8b5a3c;background:var(--primary-color);border:none;border-radius:25px;color:#fff;cursor:pointer;font-weight:600;padding:12px 25px;transition:all .2s ease;transition:var(--transition)}.send-btn:hover{background:#6b4226;background:var(--primary-dark)}.save-project-btn{background:#8b5a3c;background:var(--primary-color);border:none;border-radius:6px;border-radius:var(--border-radius);color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .2s ease;transition:var(--transition)}.save-project-btn:hover{background:#6b4226;background:var(--primary-dark);transform:translateY(-2px)}.estimate-summary{border:2px solid #8b5a3c;border:2px solid var(--primary-color);padding:25px;text-align:center}.price-display h3{color:#666;color:var(--text-secondary);font-size:1rem;letter-spacing:1px;margin-bottom:10px;text-transform:uppercase}.price-range{color:#8b5a3c;color:var(--primary-color);font-size:2.5rem;font-weight:700;margin:15px 0}.price-breakdown{color:#666;color:var(--text-secondary);display:flex;font-size:.9rem;gap:15px;justify-content:center;margin-bottom:20px}.timeline-short{margin:10px 0;padding:10px}.scope-brief,.timeline-short{background:#fff;background:var(--background);border-radius:6px;border-radius:var(--border-radius);color:#333;color:var(--text-primary)}.scope-brief{line-height:1.6;padding:15px;text-align:left}.scope-brief strong{color:#8b5a3c;color:var(--primary-color);display:block;margin-bottom:8px}.estimate-summary{background:var(--surface);border-radius:6px;border-radius:var(--border-radius);box-shadow:0 1px 3px #8b5a3c1a;box-shadow:var(--shadow-sm);margin:20px 0;overflow:hidden;padding:0}.price-header{background:#faf8f5;background:var(--surface-light);border-bottom:2px solid #e0d5c7;border-bottom:2px solid var(--border-color);padding:20px;text-align:center}.price-header h3{color:#666;color:var(--text-secondary);font-size:.9rem;letter-spacing:1px;margin-bottom:10px;text-transform:uppercase}.price-total{color:#8b5a3c;color:var(--primary-color);font-size:2.2rem;font-weight:700}.cost-details{grid-gap:0;display:grid;gap:0;grid-template-columns:1fr 1fr}.labor-section,.materials-section{padding:20px}.labor-section{border-right:1px solid #e0d5c7;border-right:1px solid var(--border-color)}.labor-section h4,.materials-section h4{color:#8b5a3c;color:var(--primary-color);font-size:1rem;font-weight:600;margin-bottom:15px}.cost-line{color:#333;color:var(--text-primary);display:flex;font-size:.95rem;justify-content:space-between;padding:5px 0}.cost-line.total{color:#8b5a3c;color:var(--primary-color);font-weight:600;margin-top:8px;padding-top:8px}.cost-line.total,.timeline-section{border-top:1px solid #e0d5c7;border-top:1px solid var(--border-color)}.timeline-section{background:#faf8f5;background:var(--surface-light);padding:15px 20px;text-align:center}.timeline-section strong{color:#8b5a3c;color:var(--primary-color);margin-right:10px}.timeline-note{color:#666;color:var(--text-secondary);font-size:.9rem}.options-section{background:#fff;border-top:1px solid #e0d5c7;border-top:1px solid var(--border-color);padding:20px}.options-section h4{color:#8b5a3c;color:var(--primary-color);font-size:1rem;margin-bottom:15px}.options-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.option-chip{background:#faf8f5;background:var(--surface-light);border:1px solid #e0d5c7;border:1px solid var(--border-color);border-radius:20px;color:#333;color:var(--text-primary);font-size:.9rem;padding:8px 12px;text-align:center;transition:all .2s ease;transition:var(--transition)}.option-chip:hover{background:#8b5a3c;background:var(--primary-color);border-color:#8b5a3c;border-color:var(--primary-color);color:#fff}.scope-section{background:#fff;border-top:1px solid #e0d5c7;border-top:1px solid var(--border-color);padding:20px}.scope-section h4{color:#8b5a3c;color:var(--primary-color);font-size:1.1rem;font-weight:600;margin-bottom:15px}.scope-list{list-style:none;padding:0}.scope-list li{color:#333;color:var(--text-primary);font-size:.95rem;line-height:1.6;padding:10px 0 10px 30px;position:relative}.scope-list li:before{color:#228b22;color:var(--success-color);content:"✓";font-size:1.2rem;font-weight:700;left:0;position:absolute}.recommendations-section{background:#faf8f5;background:var(--surface-light);border-top:1px solid #e0d5c7;border-top:1px solid var(--border-color);padding:15px 20px}.recommendations-section h4{color:#8b5a3c;color:var(--primary-color);margin-bottom:10px}.recommendations-section p{color:#333;color:var(--text-primary);line-height:1.6}.adjust-project-section{background:#faf8f5;background:var(--surface-light);border:1px solid #e0d5c7;border:1px solid var(--border-color);border-radius:6px;border-radius:var(--border-radius);margin:30px 0;padding:25px}.adjust-project-section h3{color:#8b5a3c;color:var(--primary-color);font-size:1.3rem;font-weight:600;margin-bottom:20px}.update-visualization-box{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px}.update-visualization-box h4{color:#555;font-size:1rem;font-weight:500;margin-bottom:15px}.update-input-area{align-items:center;display:flex;gap:10px}.refinement-input-compact{border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:6px;flex:1 1;font-size:1rem;padding:12px;transition:all .2s ease;transition:var(--transition)}.refinement-input-compact:focus{background:#fff;border-color:#8b5a3c;border-color:var(--primary-color);outline:none}.update-image-btn{background:#8b5a3c;background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 20px;transition:all .2s ease;transition:var(--transition);white-space:nowrap}.update-image-btn:hover:not(:disabled){background:#d2691e;background:var(--secondary-color);transform:translateX(2px)}.update-image-btn:disabled{cursor:not-allowed;opacity:.5}.update-note{color:#666;font-size:.85rem;font-style:italic;margin-top:10px}.update-section{background:#fff;border:1px solid #e0d5c7;border:1px solid var(--border-color);border-radius:6px;border-radius:var(--border-radius);margin:20px 0;padding:20px}.update-prompt{text-align:center}.update-plan-btn{background:#fff;border:2px solid #8b5a3c;border:2px solid var(--primary-color);border-radius:6px;border-radius:var(--border-radius);color:#8b5a3c;color:var(--primary-color);cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .2s ease;transition:var(--transition)}.update-plan-btn:hover{background:#faf8f5;background:var(--surface-light)}.update-hint{color:#666;color:var(--text-secondary);font-size:.9rem;margin-top:8px}.contact-primary-btn{align-items:center;background:#228b22;background:var(--success-color);border:none;border-radius:6px;border-radius:var(--border-radius);box-shadow:0 4px 10px #228b224d;color:#fff;cursor:pointer;display:flex;flex-direction:column;font-size:1.2rem;font-weight:700;gap:5px;padding:20px;transition:all .2s ease;transition:var(--transition);width:100%}.response-time{font-size:.9rem;font-weight:400;opacity:.95}.or-divider{color:#666;color:var(--text-secondary);font-weight:600;margin:15px 0;text-align:center}.contact-call-option h4{color:#8b5a3c;color:var(--primary-color);margin-bottom:10px;text-align:center}.phone-display{text-align:center}.phone-number{color:#8b5a3c;color:var(--primary-color);font-size:1.5rem;font-weight:700}.phone-note{color:#666;color:var(--text-secondary);font-size:.9rem;margin-top:8px;text-align:center}.photo-instructions{background:#faf8f5;background:var(--surface-light);border-radius:6px;border-radius:var(--border-radius);margin-bottom:20px;padding:15px}.photo-instructions h3{color:#8b5a3c;color:var(--primary-color);font-size:1.1rem;margin-bottom:8px}.photo-instructions p{color:#666;color:var(--text-secondary);font-size:.95rem}.details-section h3{color:#8b5a3c;color:var(--primary-color);font-size:1.1rem;margin-bottom:10px}.details-input{border:2px solid #e0d5c7;border:2px solid var(--border-color);border-radius:6px;border-radius:var(--border-radius);font-size:1rem;padding:12px;resize:vertical;width:100%}.details-input:focus{border-color:#8b5a3c;border-color:var(--primary-color);outline:none}.facebook-portfolio{align-items:center;background:#1877f2!important;color:#fff!important;display:flex;gap:10px}.facebook-portfolio:hover{background:#166fe5!important}.fb-icon-menu{background:#fff;border-radius:50%;color:#1877f2;display:inline-block;font-size:14px;font-weight:700;height:18px;line-height:18px;text-align:center;width:18px}.menu-contact-info{background:#667eea0d;border-radius:8px;margin-top:15px;padding:15px;text-align:center}.menu-contact-info .small-text{color:#666;color:var(--text-secondary);font-size:.85rem;margin-bottom:5px}.phone-link{color:#8b5a3c;color:var(--primary-color);font-size:1.1rem;font-weight:600;text-decoration:none}.phone-link:hover{text-decoration:underline}@media (max-width:768px){.header-content{flex-direction:column;text-align:center}.header-contact{align-items:center;width:100%}.footer-content{grid-template-columns:1fr;text-align:center}.facebook-link{display:inline-flex}.sb-flooring-app{padding:0}.step-container{margin:0;padding:15px}.app-header h1{font-size:1.5rem}.app-header .tagline{font-size:.9rem}.header-phone{font-size:1rem}.project-types-grid{gap:15px}.project-types-grid,.quality-options{grid-template-columns:1fr}.visualization-section{margin:10px 0}.before-after-container{flex-direction:column;gap:15px;min-height:auto;padding:10px}.after-image,.before-image{flex:1 1 auto;width:100%}.arrow-divider{font-size:1.2rem;padding:10px 0;transform:rotate(90deg)}.after-image h4,.before-image h4{font-size:.9rem;margin-bottom:8px}.room-image{max-height:200px!important;object-fit:cover;width:100%}.estimate-container{margin:10px 0;padding:0}.estimate-summary{border-radius:8px;margin:10px 0}.price-header{padding:15px}.price-header h3{font-size:.8rem}.price-total{font-size:1.8rem}.cost-details{gap:0;grid-template-columns:1fr}.labor-section{border-bottom:1px solid #e0d5c7;border-bottom:1px solid var(--border-color);border-right:none;padding:15px}.materials-section{padding:15px}.labor-section h4,.materials-section h4{font-size:.95rem;margin-bottom:10px}.cost-line{font-size:.85rem;padding:4px 0}.timeline-section{font-size:.9rem;padding:12px 15px}.timeline-note{display:block;margin-top:5px}.options-section{padding:15px}.options-section h4{font-size:.95rem;margin-bottom:10px}.options-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.option-chip{font-size:.8rem;padding:6px 10px}.scope-section{padding:15px}.scope-section h4{font-size:.95rem;margin-bottom:10px}.scope-list{font-size:.85rem}.scope-list li{line-height:1.4;margin-bottom:8px}.recommendations-section{margin:10px 0;padding:15px}.recommendations-section h4{font-size:.95rem;margin-bottom:8px}.recommendations-section p{font-size:.85rem;line-height:1.5}.adjust-project-section{margin:10px 0;padding:15px}.adjust-project-section h3{font-size:1rem;margin-bottom:10px}.update-visualization-box{padding:12px}.update-visualization-box h4{font-size:.9rem;margin-bottom:8px}.update-input-area{flex-direction:column;gap:10px}.refinement-input-compact{font-size:.85rem;padding:10px}.update-image-btn{font-size:.9rem;padding:12px;width:100%}.update-note{font-size:.75rem;margin-top:8px}.action-buttons{flex-direction:column;gap:10px;padding:15px}.action-buttons button{font-size:.95rem;padding:12px;width:100%}.back-btn{order:2}.estimate-btn,.primary-btn{font-size:1rem;order:1;padding:14px}.viz-grid{grid-template-columns:1fr}.images-grid{gap:10px}.dates-grid,.images-grid{grid-template-columns:repeat(2,1fr)}.dates-grid{gap:8px}.upload-controls{flex-direction:column;gap:10px}.camera-btn,.upload-btn{padding:12px;width:100%}.contact-owner-container{margin:10px 0;padding:15px}.contact-owner-header h3{font-size:1rem}.specialist-badge{font-size:.75rem}.methods-grid{gap:10px;grid-template-columns:1fr}.method-card{padding:12px}.business-footer{font-size:.8rem;padding:15px}.footer-content{flex-direction:column;gap:5px}.footer-content span:nth-child(2n):not(:last-child){display:none}}@media (min-width:769px) and (max-width:1024px){.project-types-grid,.viz-grid{grid-template-columns:repeat(2,1fr)}}.header{background:#fff;box-shadow:0 2px 10px #0000001a;margin-bottom:2rem;padding:2rem 1rem;text-align:center}.header h1{color:#2c3e50;font-size:2.5rem;margin-bottom:.5rem}.header p{color:#7f8c8d;font-size:1.2rem}.container{margin:0 auto;max-width:1200px;padding:0 1rem}.step-header{margin-bottom:3rem;text-align:center}.step-header h2{color:#fff;font-size:2rem;margin-bottom:.5rem}.step-header p{color:#fffc;font-size:1.1rem}.project-types{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:3rem}.project-type-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;cursor:pointer;padding:2rem;text-align:center;transition:all .3s ease}.project-type-card:hover{box-shadow:0 8px 30px #00000026;transform:translateY(-8px)}.project-icon{font-size:4rem;margin-bottom:1rem}.project-type-card h3{color:#2c3e50;font-size:1.5rem;margin-bottom:.5rem}.project-type-card p{color:#7f8c8d;line-height:1.5}.config-form,.contact-form,.project-form{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin:0 auto;max-width:600px;padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#2c3e50;display:block;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e6ed;border-radius:8px;font-size:1rem;padding:.75rem;transition:border-color .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group textarea{min-height:100px;resize:vertical}.upload-guidance{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-bottom:2rem;padding:2rem}.upload-guidance h3{color:#2c3e50;margin-bottom:1rem}.upload-guidance ul{color:#7f8c8d;padding-left:1.5rem}.upload-guidance li{line-height:1.5;margin-bottom:.5rem}.image-upload-area{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-bottom:2rem;padding:3rem;text-align:center}.upload-button{border:3px dashed #667eea;border-radius:12px;cursor:pointer;display:block;padding:3rem 2rem;transition:all .3s ease}.upload-button:hover{background:#667eea0d;border-color:#5a6fd8}.upload-icon{font-size:3rem;margin-bottom:1rem}.upload-button h3{color:#2c3e50;margin-bottom:.5rem}.upload-button p{color:#7f8c8d}.generation-status{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin:0 auto;max-width:800px;padding:2rem}.generation-steps{margin-bottom:2rem}.step{align-items:center;border-radius:12px;display:flex;margin-bottom:1.5rem;padding:1rem;transition:all .3s ease}.step.completed{background:#27ae601a}.step.active{background:#667eea1a}.step-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-weight:700;height:40px;justify-content:center;margin-right:1rem;width:40px}.step.completed .step-icon{background:#27ae60;color:#fff}.step.active .step-icon{background:#667eea;color:#fff}.step-text h4{color:#2c3e50;margin-bottom:.25rem}.step-text p{color:#7f8c8d;font-size:.9rem}.estimate-summary{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-bottom:2rem;padding:2rem}.total-cost{border-bottom:2px solid #e0e6ed;margin-bottom:2rem;padding-bottom:2rem;text-align:center}.total-cost h2{color:#2c3e50;margin-bottom:1rem}.cost-amount{color:#27ae60;font-size:3rem;font-weight:700;margin-bottom:.5rem}.confidence{color:#7f8c8d;font-size:1rem}.cost-breakdown{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.breakdown-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.breakdown-item span:first-child{color:#2c3e50;font-weight:600}.breakdown-item span:last-child{color:#27ae60;font-size:1.1rem;font-weight:700}.detailed-breakdown{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-bottom:2rem;padding:2rem}.detailed-breakdown h3{color:#2c3e50;margin-bottom:1.5rem}.breakdown-detail{grid-gap:1rem;align-items:start;border-bottom:1px solid #e0e6ed;display:grid;gap:1rem;grid-template-columns:200px 1fr 120px;padding:1rem}.breakdown-detail:last-child{border-bottom:none}.breakdown-category{color:#2c3e50;font-weight:600}.breakdown-description{color:#7f8c8d;line-height:1.4}.breakdown-cost{color:#27ae60;font-weight:700;text-align:right}.project-info{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-bottom:1.5rem;padding:1.5rem}.project-info.warning{background:#e74c3c0d;border-left:4px solid #e74c3c}.project-info h4{font-size:1.1rem;margin-bottom:1rem}.project-info li,.project-info p{color:#7f8c8d;line-height:1.5;margin-bottom:.5rem}.project-info ul{padding-left:1.5rem}.next-steps{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-top:2rem;padding:2rem;text-align:center}.next-steps h3{color:#2c3e50;margin-bottom:1rem}.next-steps p{color:#7f8c8d;font-size:1.1rem;margin-bottom:2rem}.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;text-align:center;text-decoration:none;transition:all .3s ease}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#5a6fd8;transform:translateY(-2px)}.btn-primary:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.btn-secondary{background:#ecf0f1;color:#2c3e50}.btn-secondary:hover{background:#d5dbdb}.btn-large{font-size:1.1rem;padding:1rem 2rem}.action-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.form-actions{display:flex;gap:1rem;justify-content:space-between;margin-top:2rem}.previous-projects{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin-top:3rem;padding:2rem}.previous-projects h3{color:#2c3e50;margin-bottom:1.5rem}.projects-list{grid-gap:1rem;display:grid;gap:1rem}.project-item{background:#f8f9fa;border-radius:8px;padding:1rem;transition:all .3s ease}.project-item:hover{background:#e9ecef}.project-info h4{color:#2c3e50;margin-bottom:.25rem}.project-info p{color:#7f8c8d;font-size:.9rem;margin-bottom:.25rem}.project-info .estimate{color:#27ae60;font-weight:600}.success-message{background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a;margin:0 auto;max-width:600px;padding:3rem 2rem;text-align:center}.success-icon{font-size:4rem;margin-bottom:1rem}.success-message h2{color:#27ae60;margin-bottom:1rem}.success-message p{color:#7f8c8d;line-height:1.6;margin-bottom:2rem}.next-steps-info{background:#f8f9fa;border-radius:12px;margin:2rem 0;padding:1.5rem;text-align:left}.next-steps-info h3{color:#2c3e50;margin-bottom:1rem;text-align:center}.next-steps-info ul{padding-left:1.5rem}.next-steps-info li{color:#7f8c8d;line-height:1.6;margin-bottom:.75rem}.loading-message{padding:2rem;text-align:center}.loading-message p{color:#7f8c8d;margin-top:1rem}.spinner{border:4px solid #667eea1a;border-radius:50%;border-top-color:#667eea;height:50px;margin:0 auto;width:50px}.mini-spinner,.spinner{animation:spin 1s linear infinite}.mini-spinner{border:2px solid #667eea1a;border-radius:50%;border-top-color:#667eea;height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{background:#e74c3c1a;border:1px solid #e74c3c;border-radius:8px;color:#c0392b;margin:1rem 0;padding:1rem}@media (max-width:768px){.header h1{font-size:2rem}.header p{font-size:1rem}.breakdown-detail,.cost-breakdown,.project-types{grid-template-columns:1fr}.breakdown-detail{gap:.5rem}.breakdown-cost{text-align:left}.action-buttons,.form-actions{flex-direction:column}.form-actions .btn-secondary{order:2}.form-actions .btn-primary{order:1}}@media (max-width:480px){.container{padding:0 .5rem}.app-header h1{font-size:1.3rem}.step-title{font-size:1.2rem}.price-total{font-size:1.5rem}.options-grid{grid-template-columns:1fr}.option-chip{text-align:center;width:100%}.dates-grid,.images-grid{grid-template-columns:1fr}.config-form,.contact-form,.project-form{padding:1.5rem}.cost-amount{font-size:2rem}}
/*# sourceMappingURL=main.e532f69f.css.map*/