@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&display=swap";:root{--bg: #f6f7fb;--card: #ffffff;--text: #1f2a37;--muted: #6b7280;--accent: #2563eb;--accent-2: #f59e0b;--stroke: #e5e7eb;--danger: #dc2626}*{box-sizing:border-box}body{margin:0;font-family:Nunito,Segoe UI,system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg);min-height:100vh}a{color:inherit;text-decoration:none}.layout{max-width:1180px;margin:0 auto;padding:28px 20px 56px;display:flex;flex-direction:column;gap:20px}.header{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.nav{display:flex;gap:10px;flex-wrap:wrap}.nav-link{padding:10px 14px;border:1px solid var(--stroke);border-radius:12px;background:#f0f4ff;color:#1d4ed8;font-weight:700}.nav-link.active{background:#e0e7ff;border-color:#c7d2fe}.status-bar{display:flex;gap:10px;flex-wrap:wrap}.pill{padding:8px 12px;border-radius:999px;background:#eef2ff;border:1px solid #e0e7ff;font-size:14px;display:inline-flex;align-items:center;gap:6px;color:#1d4ed8}.pill.error{border-color:var(--danger);background:#fef2f2;color:var(--danger)}.muted{color:var(--muted);font-weight:400}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#6b7280;font-size:12px;margin:0 0 4px}.version-badge{margin-left:10px;padding:2px 8px;background:#e0e7ff;color:#4338ca;border-radius:10px;font-size:11px;font-weight:700;letter-spacing:.02em}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.card{background:var(--card);border:1px solid var(--stroke);border-radius:14px;padding:18px;box-shadow:0 10px 24px #1f293714}.inline-card{border:1px dashed #d1d5db;border-radius:10px;padding:12px 14px;margin-top:10px;background:#f9fafb}.form{display:flex;flex-direction:column;gap:12px;margin-top:8px}.field{display:flex;flex-direction:column;gap:6px;font-weight:600}.field input,.field textarea,.field select{width:100%;padding:11px 12px;border-radius:10px;border:1px solid #d1d5db;background:#ffffff;color:var(--text);font-size:14px}.field input:focus,.field textarea:focus,.field select:focus{outline:2px solid #bfdbfe;border-color:#93c5fd}.checkbox{display:flex;align-items:center;gap:8px;font-weight:500}.two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.button{padding:11px 16px;border-radius:12px;border:1px solid transparent;background:linear-gradient(120deg,#2563eb,#3b82f6);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 6px 14px #2563eb2e}.button:disabled{opacity:.7;cursor:not-allowed}.button.ghost{background:#ffffff;color:#1d4ed8;border:1px solid #d1d5db;box-shadow:none}.inline{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.inline-input{padding:11px 12px;border-radius:10px;border:1px solid #d1d5db;background:#ffffff;color:var(--text);flex:1;min-width:220px}.bullet-list{padding-left:18px;color:var(--text);line-height:1.6}.table{margin-top:10px;border:1px solid #e5e7eb;border-radius:12px;background:#ffffff}.table-head,.table-row{display:grid;grid-template-columns:60px 1fr 2fr 80px 120px;gap:8px;padding:10px 12px;align-items:center}.table-head{background:#f3f4f6;color:var(--muted);font-weight:700}.table-row:nth-child(odd){background:#f9fafb}.badge{display:inline-flex;padding:6px 10px;border-radius:999px;border:1px solid #e5e7eb;background:#f3f4f6;text-transform:capitalize;font-size:13px}.badge.approved{border-color:#22c55e;background:#ecfdf3;color:#15803d}.badge.drafted,.badge.submitted{border-color:#f59e0b;background:#fffbeb;color:#b45309}.badge.contact_requested{border-color:#2563eb;background:#e0f2fe;color:#1d4ed8}.section-header{display:flex;justify-content:space-between;align-items:center}code{background:#f3f4f6;padding:3px 6px;border-radius:6px;border:1px solid #e5e7eb}h1,h2,h3,h4{margin:6px 0}textarea{font-family:Nunito,Segoe UI,system-ui,-apple-system,sans-serif}.capture-section{margin:16px 0;padding:16px;background:#f9fafb;border:1px dashed #d1d5db;border-radius:12px}.capture-controls{display:flex;gap:10px;flex-wrap:wrap}.capture-btn{display:flex;align-items:center;gap:8px;padding:12px 18px;border-radius:12px;border:2px solid #d1d5db;background:#ffffff;cursor:pointer;font-size:16px;font-weight:600;transition:all .2s ease}.capture-btn:hover{border-color:#2563eb;background:#eff6ff}.capture-btn.active{border-color:#2563eb;background:#dbeafe}.capture-btn.recording{border-color:#dc2626;background:#fef2f2;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{box-shadow:0 0 #dc262666}50%{box-shadow:0 0 0 8px #dc262600}}.voice-status{margin-top:12px;padding:10px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;font-size:14px;color:#991b1b}.voice-preview{color:#6b7280;font-style:italic}.big-input{width:100%;padding:16px;border-radius:12px;border:2px solid #d1d5db;background:#ffffff;color:var(--text);font-size:16px;line-height:1.6;resize:vertical;font-family:inherit}.big-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.big-input::placeholder{color:#9ca3af}.extracted-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px}.extracted-label{font-size:13px;color:#166534;font-weight:600}.tag{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:20px;font-size:14px;font-weight:600}.tag.category{background:#dbeafe;color:#1e40af}.tag.location{background:#fef3c7;color:#92400e}.tag.timeframe{background:#e0e7ff;color:#3730a3}.tag.budget{background:#d1fae5;color:#065f46}.tag.room{background:#fce7f3;color:#9d174d}.inline-card.tip{background:#fffbeb;border-color:#fcd34d}.inline-card.tip p{margin:0;font-size:14px;color:#92400e}.inline-card.success{background:#ecfdf5;border-color:#34d399}.inline-card.success p{margin:0}.post-panel{display:flex;flex-direction:column}.post-content{flex:1}.post-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.post-version-badge{display:inline-block;padding:4px 10px;background:#dbeafe;color:#1e40af;border-radius:20px;font-size:12px;font-weight:700}.post-text{padding:16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;white-space:pre-wrap;line-height:1.6;font-size:15px}.post-text.followup-text{background:#fefce8;border-color:#fde047;font-size:14px}.button.success{background:#22c55e;border-color:#16a34a}.button.small{padding:8px 12px;font-size:13px}.button.danger{background:#dc2626;border-color:#b91c1c;color:#fff}.button.danger:hover{background:#b91c1c}.project-selector{display:flex;gap:10px;align-items:center;margin-bottom:12px}.project-dropdown{flex:1;padding:10px 12px;border-radius:10px;border:1px solid #d1d5db;background:#ffffff;color:var(--text);font-size:14px;font-family:inherit;cursor:pointer}.project-dropdown:focus{outline:2px solid #bfdbfe;border-color:#93c5fd}.project-dropdown:disabled{opacity:.6;cursor:not-allowed}.button-row{display:flex;gap:10px;flex-wrap:wrap}.button-row .button{flex:1;min-width:140px}.rfp-result{display:flex;flex-direction:column;gap:16px}.rfp-result h3{color:var(--accent);margin:0}.rfp-section{padding:12px;background:#f9fafb;border-radius:10px}.rfp-section h4{margin:0 0 8px;font-size:14px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.rfp-section p{margin:0;line-height:1.6}.rfp-section ul{margin:0;padding-left:20px}.rfp-section li{margin-bottom:4px;line-height:1.5}.rfp-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.rfp-meta-item{padding:12px;background:#eef2ff;border-radius:10px;text-align:center}.rfp-meta-item .label{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.rfp-meta-item .value{display:block;font-weight:700;color:#1e40af}.rfp-panel{display:flex;flex-direction:column}.rfp-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.streaming-indicator{width:8px;height:8px;background:#22c55e;border-radius:50%;animation:pulse-green 1s infinite}@keyframes pulse-green{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.rfp-stream-content{flex:1;overflow-y:auto}.rfp-placeholder{padding:20px;background:#f9fafb;border-radius:12px;text-align:center}.placeholder-hints{margin-top:16px;text-align:left;padding:12px;background:#ffffff;border-radius:8px}.placeholder-hints p{margin:0 0 8px;font-weight:600;color:var(--text)}.placeholder-hints ul{margin:0;padding-left:20px;color:var(--muted)}.placeholder-hints li{margin-bottom:4px}.cursor-blink{display:inline-block;color:var(--accent);font-weight:700;animation:blink .8s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.markdown-content h2{color:var(--accent);margin:0 0 16px;font-size:1.5em;border-bottom:1px solid var(--border);padding-bottom:8px}.markdown-content h3{color:var(--accent);margin:20px 0 12px;font-size:1.3em}.markdown-content h3:first-child{margin-top:0}.markdown-content h4{color:var(--text);margin:16px 0 8px;font-size:1.1em;text-transform:uppercase;letter-spacing:.03em}.markdown-content h5{color:var(--text);margin:12px 0 6px;font-size:1em;font-weight:600}.markdown-content p{margin:0 0 8px;line-height:1.6}.markdown-content ul{margin:0 0 12px;padding-left:20px}.markdown-content li{margin-bottom:4px;line-height:1.5}.markdown-content strong{color:var(--text)}.thinking-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:var(--muted)}.thinking-state p{margin:16px 0 0;font-size:16px;font-weight:600}.thinking-dots{display:flex;gap:6px}.thinking-dots span{width:10px;height:10px;background:var(--accent);border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.thinking-dots span:nth-child(1){animation-delay:-.32s}.thinking-dots span:nth-child(2){animation-delay:-.16s}.thinking-dots span:nth-child(3){animation-delay:0s}@keyframes bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.button.secondary{background:#ffffff;color:#374151;border:1px solid #d1d5db;box-shadow:none}.button.secondary:hover{background:#f3f4f6}.camera-preview{margin-top:12px;border-radius:12px;overflow:hidden;background:#000}.camera-preview video{width:100%;max-height:300px;object-fit:cover;display:block}.photo-gallery{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.photo-thumb{position:relative;width:100px;height:100px;border-radius:10px;overflow:hidden;border:2px solid #e5e7eb}.photo-thumb img{width:100%;height:100%;object-fit:cover}.remove-photo{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;border:none;background:rgba(220,38,38,.9);color:#fff;cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:center}.remove-photo:hover{background:#dc2626}.mobile-upload-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--bg)}.mobile-upload-card{background:var(--card);border:1px solid var(--stroke);border-radius:16px;padding:24px;max-width:400px;width:100%;text-align:center;box-shadow:0 10px 24px #1f293714}.mobile-upload-card.error{border-color:var(--danger)}.mobile-upload-card h2{margin:0 0 8px}.mobile-upload-btn{width:100%;padding:16px 20px;border-radius:12px;border:none;background:linear-gradient(120deg,#2563eb,#3b82f6);color:#fff;font-size:16px;font-weight:700;cursor:pointer;margin-top:16px}.mobile-upload-btn.secondary{background:#ffffff;color:#374151;border:1px solid #d1d5db}.file-input-hidden{position:absolute;left:-9999px;opacity:0}.upload-list{margin-top:16px;display:flex;flex-direction:column;gap:8px}.upload-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;background:#f9fafb;text-align:left}.upload-item.success{background:#ecfdf5;border:1px solid #34d399}.upload-item.error{background:#fef2f2;border:1px solid #fca5a5}.upload-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.upload-item.success .upload-icon{background:#34d399;color:#fff}.upload-item.error .upload-icon{background:#f87171;color:#fff}.upload-name{flex:1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-success-message{margin-top:16px;padding:12px;background:#ecfdf5;border:1px solid #34d399;border-radius:8px;color:#065f46;font-weight:600}.upload-status{margin-top:16px;padding:20px}.qr-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.qr-modal{background:var(--card);border-radius:16px;padding:24px;max-width:360px;width:100%;text-align:center;box-shadow:0 20px 40px #0003}.qr-modal h3{margin:0 0 8px}.qr-code-container{margin:20px 0;padding:16px;background:white;border-radius:12px;display:inline-block}.qr-timer{font-size:14px;color:var(--muted);margin-bottom:16px}.qr-timer.warning{color:var(--danger);font-weight:600}.suggested-questions{margin:12px 0;padding:14px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px}.suggested-questions .eyebrow{color:#0369a1;margin-bottom:8px}.questions-text{color:#0c4a6e;line-height:1.7;white-space:pre-wrap;font-size:14px}@media (max-width: 720px){.table-head,.table-row{grid-template-columns:40px 1fr;grid-template-rows:auto auto auto;row-gap:4px}.table-row span:nth-child(3),.table-head span:nth-child(3),.table-row span:nth-child(4),.table-head span:nth-child(4),.table-row span:nth-child(5),.table-head span:nth-child(5){grid-column:span 2}}.history-accordion{margin-top:20px;padding-top:16px;border-top:1px solid var(--stroke)}.accordion-item{border:1px solid #e5e7eb;border-radius:10px;margin-bottom:8px;background:#ffffff;overflow:hidden;transition:all .2s ease}.accordion-item.expanded{border-color:#93c5fd;box-shadow:0 2px 8px #2563eb1a}.accordion-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:#f9fafb;border:none;cursor:pointer;text-align:left;font-size:14px;font-weight:600;color:var(--text);font-family:inherit;transition:background .2s ease}.accordion-header:hover{background:#f3f4f6}.accordion-item.expanded .accordion-header{background:#eff6ff;border-bottom:1px solid #dbeafe}.accordion-title{display:flex;align-items:center;gap:10px}.accordion-version{display:inline-block;padding:2px 8px;background:#dbeafe;color:#1e40af;border-radius:10px;font-size:11px;font-weight:700}.accordion-toggle{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#e5e7eb;border-radius:6px;font-size:16px;font-weight:700;color:#6b7280}.accordion-item.expanded .accordion-toggle{background:#bfdbfe;color:#1e40af}.accordion-content{padding:14px;background:#ffffff}.accordion-section{margin-bottom:14px}.accordion-section:last-child{margin-bottom:0}.accordion-section .eyebrow{margin-bottom:6px}.accordion-text{margin:0;padding:10px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;line-height:1.6;white-space:pre-wrap;max-height:150px;overflow-y:auto}
