*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f3f4f6;color:#111827}#root{max-width:1200px;margin:0 auto;padding:16px}.app-container{display:flex;gap:12px;height:calc(100vh - 32px)}.editor-panel{flex:1;min-width:0;background:#fff;border-radius:12px;border:1px solid #e5e7eb;padding:12px;display:flex;flex-direction:column;overflow-y:auto}.preview-panel{flex:1;min-width:0;background:#f9fafb;border-radius:12px;border:1px solid #e5e7eb;padding:20px;overflow:auto}.tab-bar{display:flex;gap:8px;margin-bottom:8px}.tab{padding:6px 12px;border-radius:999px;border:1px solid #d1d5db;background:#fff;font-size:13px;cursor:pointer}.tab.active{background:#111827;color:#fff;border-color:#111827}.editor-panel h1{font-size:18px;margin:4px 0 8px;text-align:left;color:#15202d}.section{margin-bottom:10px;text-align:left}.section-title{font-size:13px;font-weight:600;margin:0 0 4px;color:#15202d}.section-header{display:flex;align-items:center;justify-content:space-between;gap:8px}label{display:block;font-size:12px;color:#4b5563;margin-bottom:6px}label input,label select,label textarea{margin-top:2px}input[type=text],input[type=email],input[type=date],select,textarea{width:100%;font-size:12px;padding:6px 8px;border-radius:6px;border:1px solid #d1d5db;outline:none}input:focus,select:focus,textarea:focus{border-color:#111827}textarea{resize:vertical}.service-card{border:1px solid #e5e7eb;border-radius:8px;padding:6px;margin-bottom:6px;background:#f9fafb}.service-header{display:flex;justify-content:space-between;gap:6px;margin-bottom:4px}.service-name-input{flex:1;font-weight:600}.remove-btn{border-radius:6px;border:1px solid #fecaca;background:#fee2e2;font-size:11px;padding:3px 8px;cursor:pointer}.button-row{display:flex;flex-direction:column;gap:6px;margin-top:10px}.save-btn,.download-btn{width:100%;padding:8px;border-radius:8px;border:1px solid transparent;font-size:14px;cursor:pointer}.save-btn{border-color:#111827;background:#fff;color:#111827}.download-btn{background:#111827;color:#fff}.saved-list h1{margin-top:0;margin-bottom:4px;font-size:18px;color:#15202d}.saved-help{margin-top:0;margin-bottom:8px;font-size:12px;color:#6b7280}.saved-table{width:100%;border-collapse:collapse;font-size:12px}.saved-table th,.saved-table td{border:1px solid #e5e7eb;padding:6px}.saved-filters{display:flex;gap:8px;margin-bottom:8px}.saved-filters input,.saved-filters select{font-size:12px;padding:6px 8px;border-radius:6px;border:1px solid #d1d5db}.saved-table th{background:#f3f4f6;text-align:left}.saved-actions button{margin-right:4px;padding:3px 8px;font-size:11px;border-radius:6px;border:1px solid #d1d5db;background:#fff;cursor:pointer}.preview-pages{display:flex;flex-direction:column;gap:20px;width:fit-content;margin:0 auto;padding-bottom:40px}.proposal-page{background:#fff;width:794px;min-height:1123px;box-sizing:border-box;padding:40px;position:relative;overflow:hidden;box-shadow:0 4px 15px #0000001a;border-radius:0;color:#15202d;margin:0 auto}.page-body{height:100%;padding-bottom:40px}.page-footer{display:block;position:absolute;bottom:20px;left:0;width:100%;text-align:center;font-size:10px;color:#9ca3af;border-top:1px solid #f3f4f6;padding-top:10px;width:calc(100% - 80px);margin-left:40px}.footer-site{color:#15202d;font-weight:500}.proposal-header{display:flex;align-items:center;gap:15px;border-bottom:2px solid #15202d;padding-bottom:15px;margin-bottom:20px}.proposal-header .logo{height:50px;width:auto;object-fit:contain;padding:0}.header-text h1{font-size:20px;font-weight:700;margin:0 0 4px;color:#15202d}.header-text p{margin:2px 0;font-size:11px;color:#4b5563;font-weight:500}.header-subline{font-size:10px;color:#6b7280;margin-top:4px}.proposal-meta{margin-bottom:25px;background:#f9fafb;padding:15px;border-radius:4px}.proposal-meta h2{font-size:16px;margin:0 0 8px;color:#15202d;border-bottom:1px solid #e5e7eb;padding-bottom:8px}.prepared-by-line{margin:4px 0;font-size:12px;line-height:1.5}.proposal-section{margin-top:20px;margin-bottom:20px}.proposal-section h3{font-size:14px;text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px;padding-bottom:4px;border-bottom:1px solid #e5e7eb;color:#15202d;font-weight:700}.proposal-section p{margin:6px 0;line-height:1.5;font-size:12px}.proposal-services{margin-top:15px}.proposal-services h4{font-size:13px;margin:10px 0 8px;color:#15202d;font-weight:600}.proposal-services table{width:100%;border-collapse:collapse;font-size:11px;margin-bottom:8px}.proposal-services th,.proposal-services td{border:1px solid #e5e7eb;padding:8px;vertical-align:top}.proposal-services th{background:#f3f4f6;font-weight:600;color:#374151;text-align:left}.fee-note{margin-top:8px;font-size:11px;font-style:italic;color:#6b7280}.signature-columns{display:flex;gap:40px;margin-top:30px;padding-top:20px}.signature-column{flex:1}.signature-column p{margin:8px 0;font-size:12px}@media(max-width:900px){.app-container{flex-direction:column;height:auto}.editor-panel,.preview-panel{height:auto;max-height:60vh}}.auth-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:#f5f5f7;padding:16px}.auth-card{background:#fff;max-width:380px;width:100%;padding:24px 28px;border-radius:16px;box-shadow:0 10px 30px #0f172a24;text-align:left}.auth-title{margin:0 0 4px;font-size:20px;font-weight:600;color:#15202d}.auth-subtitle{margin:0 0 16px;font-size:13px;color:#6b7280}.auth-label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:8px}.auth-input{width:100%;margin-top:4px;padding:8px 10px;border-radius:8px;border:1px solid #d1d5db;font-size:14px;outline:none;box-sizing:border-box}.auth-input:focus{border-color:#111827}.auth-error{color:#b91c1c;font-size:12px;margin-top:6px;margin-bottom:0}.auth-button{margin-top:16px;width:100%;padding:8px 12px;border-radius:999px;border:none;cursor:pointer;font-size:14px;font-weight:500;background:#111827;color:#fff}
