:root{--swept-blue:#3592ff;--swept-dark-blue:#2e72d9;--swept-light-blue:#e5f0ff;--swept-green:#00c79f;--swept-dark:#37383f;--swept-light-gray:#f5f5f7;--swept-gray:#e0e0e0;--swept-red:#ff647c;--topbar-height:64px}.proposal-tool-embed *{box-sizing:border-box;margin:0;padding:0}.proposal-tool-embed{background:#f5f7fa;color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}.app-layout,.app-main{display:flex}.app-main{flex:1;flex-direction:column;margin:0 auto;max-width:1240px;width:100%}.app-topbar{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;min-height:var(--topbar-height);padding:.625rem 1.5rem;position:sticky;top:0;transition:transform .2s;z-index:50}.app-topbar.topbar-hidden{transform:translateY(-100%)}.topbar-title{color:var(--swept-dark);font-size:1.25rem;font-weight:600}.topbar-subtitle{color:#64748b;font-size:.8rem;margin-top:.1rem}.breadcrumbs{align-items:center;background:#f1f5f9;border-radius:6px;color:#64748b;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.5rem;padding:.5rem .75rem;width:fit-content}.breadcrumbs a{color:var(--swept-blue);font-weight:500;text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs .separator{color:#94a3b8;font-weight:400}.breadcrumbs .current{color:#1e293b;font-weight:600}.topbar-actions{display:flex;gap:.75rem}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.4rem;min-height:40px;padding:.5rem 1rem;transition:all .15s}.btn-icon{fill:none;height:16px;stroke:currentColor;stroke-width:2;width:16px}.btn-ghost{background:transparent;color:#475569}.btn-ghost:hover{background:#f1f5f9}.btn-primary{background:linear-gradient(135deg,var(--swept-blue),var(--swept-dark-blue));color:#fff}.btn-primary:hover{box-shadow:0 4px 12px rgba(53,146,255,.3);transform:translateY(-1px)}.btn-secondary{background:#f1f5f9;color:#475569}.btn-secondary:hover{background:#e2e8f0}.btn-success{background:linear-gradient(135deg,var(--swept-green),#00a080);color:#fff}.app-content{flex:1;padding:0}.proposal-container{display:grid;gap:0;grid-template-columns:480px minmax(0,1fr)}.form-panel{background:#fff;border-right:1px solid #e2e8f0;padding:1.5rem}.form-section{border-bottom:1px solid #f1f5f9;margin-bottom:1.5rem;padding-bottom:1.5rem}.form-section:last-child{border-bottom:none}.form-section h3{align-items:center;color:#64748b;display:flex;font-size:.75rem;gap:.5rem;letter-spacing:.5px;text-transform:uppercase}.form-group,.form-section h3{margin-bottom:1rem}.form-group label{color:#475569;display:block;font-size:.85rem;font-weight:500;margin-bottom:.4rem}.form-row{display:grid;gap:.75rem;grid-template-columns:1fr 1fr}.proposal-tool-embed :is(input,textarea,select){border:1px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:.9rem;padding:.6rem .75rem;transition:all .2s;width:100%}.proposal-tool-embed :is(input,textarea,select):focus{border-color:var(--swept-blue);box-shadow:0 0 0 3px rgba(53,146,255,.1);outline:none}.proposal-tool-embed textarea{min-height:80px;resize:vertical}.location-selector{display:flex;gap:.5rem}.location-selector select{flex:1}.location-selector button{background:var(--swept-light-blue);border:1px solid var(--swept-blue);border-radius:8px;color:var(--swept-blue);cursor:pointer;font-size:.8rem;padding:.6rem .75rem}.location-inline-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:none;margin-top:.6rem;padding:.75rem}.location-inline-form.show{display:block}.location-inline-form .form-group{margin-bottom:.75rem}.location-inline-actions{display:flex;gap:.5rem;justify-content:flex-end}.location-inline-actions button{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;font-size:.8rem;padding:.5rem .75rem}.location-inline-actions button.primary{background:var(--swept-light-blue);border-color:var(--swept-blue);color:var(--swept-blue)}.service-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:.5rem;padding:.75rem}.service-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.service-item-header input{flex:1;font-weight:500;margin-right:.5rem}.service-item-row{align-items:center;display:grid;gap:.5rem;grid-template-columns:1fr 80px 80px}.btn-remove{background:#fee2e2;border:none;border-radius:6px;color:#dc2626;font-size:1rem;min-width:40px}.btn-add,.btn-remove{cursor:pointer;min-height:40px}.btn-add{align-items:center;background:#f0f9ff;border:1px dashed #0ea5e9;border-radius:8px;color:#0369a1;display:flex;font-size:.85rem;gap:.5rem;justify-content:center;padding:.5rem;width:100%}.btn-add:hover{background:#e0f2fe}.logo-upload{border:2px dashed #e2e8f0;border-radius:8px;cursor:pointer;padding:1rem;text-align:center;transition:all .2s}.logo-upload:hover{background:#f0f9ff;border-color:var(--swept-blue)}.logo-upload img{max-height:60px;max-width:150px}.logo-upload input{display:none}.logo-upload-placeholder{color:#94a3b8;font-size:.85rem}.color-row{align-items:center;display:flex;gap:.75rem}.color-row input[type=color]{border:none;cursor:pointer;height:36px;padding:0;width:50px}.preview-panel{background:#475569;display:flex;justify-content:center;padding:1.5rem}.pages-container{align-items:center;display:flex;flex-direction:column;gap:1.5rem;max-width:100%}.page-indicator{background:#475569;border-radius:20px;box-shadow:0 2px 8px rgba(0,0,0,.3);color:#fff;font-size:12px;font-weight:500;padding:.5rem 1rem}.proposal-page{background:#fff;box-shadow:0 4px 24px rgba(0,0,0,.3);color:#1a1a1a;flex-shrink:0;font-family:Georgia,serif;font-size:10pt;line-height:1.5;max-width:100%;min-height:11in;overflow-wrap:anywhere;padding:.6in;position:relative;width:8.5in;word-break:break-word}.proposal-page:after{bottom:.4in;color:#94a3b8;content:attr(data-page);font-family:-apple-system,sans-serif;font-size:9pt;position:absolute;right:.6in}.proposal-header{align-items:flex-start;border-bottom:3px solid var(--swept-blue);display:flex;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1rem}.company-info h1{color:#1e40af;font-family:-apple-system,sans-serif;font-size:24pt;margin-bottom:.25rem}.company-info p{color:#64748b;font-size:10pt;margin:.1rem 0}.company-logo{max-height:70px;max-width:180px;object-fit:contain}.proposal-badge{background:var(--swept-blue);color:#fff;font-family:-apple-system,sans-serif;font-size:10pt;font-weight:600;letter-spacing:1px;padding:.5rem 1.5rem;text-transform:uppercase}.proposal-title{margin:1.25rem 0;text-align:center}.proposal-title h2{color:#1e293b;font-family:-apple-system,sans-serif;font-size:18pt;margin-bottom:.5rem}.proposal-title .date{color:#64748b;font-size:10pt}.proposal-section{margin-bottom:1rem}.proposal-section h3{border-bottom:1px solid #e2e8f0;color:#1e40af;font-family:-apple-system,sans-serif;font-size:12pt;letter-spacing:.5px;margin-bottom:.5rem;padding-bottom:.35rem;text-transform:uppercase}.client-details{background:#f8fafc;border-left:4px solid var(--swept-blue);padding:.75rem}.client-details p{margin:.25rem 0}.client-details strong{color:#1e293b}.services-table{border-collapse:collapse;font-family:-apple-system,sans-serif;font-size:10pt;margin:.5rem 0;width:100%}.services-table th{background:#1e40af;color:#fff;font-weight:600;padding:.75rem;text-align:left}.services-table th:last-child{text-align:right}.services-table td{border-bottom:1px solid #e2e8f0;padding:.5rem .75rem}.services-table td:last-child{font-weight:500;text-align:right}.services-table tr:nth-child(2n){background:#f8fafc}.services-table .total-row{background:#1e40af!important;color:#fff;font-weight:700}.services-table .total-row td{border:none;color:#fff;font-size:11pt}.highlight-box{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #93c5fd;border-radius:8px;margin:.75rem 0;padding:.75rem}.highlight-box h4{color:#1e40af;font-family:-apple-system,sans-serif;margin-bottom:.5rem}.benefits-grid{display:grid;gap:.75rem;grid-template-columns:1fr 1fr;margin-top:.75rem}.benefit-item{align-items:flex-start;display:flex;font-size:10pt;gap:.5rem}.benefit-icon{color:var(--swept-green);font-size:14pt}.terms-list{padding-left:1.25rem}.terms-list li{margin-bottom:.5rem}.signature-area{display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-top:2rem}.signature-block{border-top:1px solid #1a1a1a;padding-top:.5rem}.signature-block p{color:#64748b;font-size:9pt;margin:.25rem 0}.signature-line{border-bottom:1px solid #1a1a1a;height:40px;margin-bottom:.25rem}.proposal-footer{border-top:1px solid #e2e8f0;color:#64748b;font-size:9pt;margin-top:2rem;padding-top:1rem;text-align:center}.feedback-section{background:#eef2f7;padding:3rem 1.5rem;text-align:center}.feedback-section__inner{margin:0 auto;max-width:800px}.toast{align-items:center;background:#1e293b;border-radius:8px;bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.2);color:#fff;display:flex;gap:.75rem;opacity:0;padding:1rem 1.5rem;position:fixed;right:2rem;transform:translateY(100px);transition:all .3s;z-index:1000}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:var(--swept-red)}.toast.success{background:var(--swept-green)}.pdf-export-overlay{align-items:center;background:rgba(0,0,0,.7);bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:999998}.pdf-export-overlay .loading-text{color:#fff;font-size:1.25rem;font-weight:600;margin-top:1rem}.pdf-export-overlay .spinner{animation:pdf-spin .8s linear infinite;border:4px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;height:48px;width:48px}@keyframes pdf-spin{to{transform:rotate(1turn)}}@media (max-width:1200px){.proposal-container{grid-template-columns:minmax(0,1fr)}.preview-panel{display:none}}@media (max-width:768px){.app-topbar{align-items:flex-start;flex-direction:column;gap:1rem;height:auto;padding:1rem}.topbar-actions{flex-wrap:wrap;width:100%}.form-row{grid-template-columns:1fr}}.proposal-tool-embed .app-topbar{border-radius:0;position:static;top:auto;z-index:auto}.proposal-tool-embed .app-main{min-height:0}.proposal-tool-embed .app-content{padding-top:1.25rem}.proposal-tool-embed .app-topbar .topbar-subtitle,.proposal-tool-embed .app-topbar .topbar-title{display:none}.proposal-tool-embed .app-topbar{min-height:0;padding:.75rem 1rem}.proposal-tool-embed .topbar-left:empty{display:none}