*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f0f2f5;color:#1a1a2e;overflow:hidden}.app{height:100vh;display:flex;flex-direction:column}.app-header{background:#fff;color:#032d60;padding:14px 24px;border-bottom:2px solid #0176D3;flex-shrink:0;box-shadow:0 1px 4px #00000014}.header-content{display:flex;align-items:center;justify-content:space-between;max-width:1600px;margin:0 auto;gap:16px}.header-left{display:flex;align-items:center;gap:12px;flex-shrink:0}.header-mulesoft-logo{width:32px;height:32px;object-fit:contain;flex-shrink:0}.header-icon{background:#e8f1fa;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#0176d3}.app-header h1{font-size:18px;font-weight:600;letter-spacing:-.3px;color:#032d60}.header-broker{display:flex;align-items:center;gap:8px;font-size:12px;flex-shrink:1;min-width:0}.header-broker label{white-space:nowrap;color:#5a6872}.broker-input{background:#f4f6f9;border:1px solid #d0d5dd;color:#1a1a2e;border-radius:6px;padding:5px 10px;font-size:12px;font-family:SF Mono,Fira Code,Consolas,monospace;width:380px;outline:none}.broker-input:focus{border-color:#0176d3;background:#fff;box-shadow:0 0 0 2px #0176d326}.broker-confirm{background:#0176d3;border:1px solid #0176D3;color:#fff;border-radius:6px;padding:5px 14px;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .2s}.broker-confirm:hover{background:#014486}.header-reset{background:#f4f6f9;border:1px solid #d0d5dd;color:#5a6872;border-radius:6px;padding:5px 14px;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .2s}.header-reset:hover:not(:disabled){background:#e0e3e8;color:#1a1a2e}.header-reset:disabled{opacity:.4;cursor:not-allowed}.app-main{flex:1;display:flex;overflow:hidden}.chart-panel{width:40%;flex:none;display:flex;flex-direction:column;justify-content:space-between;padding:0;background:#f0f2f5;border-right:1px solid #e0e3e8;overflow-y:auto}.chart-panel-chart{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:20px}.data-panel{flex:1;background:#f7f8fa;overflow-y:auto;padding:20px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;align-content:start;gap:16px;border-right:1px solid #e0e3e8}.data-panel::-webkit-scrollbar{width:6px}.data-panel::-webkit-scrollbar-thumb{background:#d0d5dd;border-radius:3px}.data-panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#8b95a5;text-align:center;padding:40px}.data-panel-empty svg{margin-bottom:16px;opacity:.35}.data-panel-empty p{font-size:14px;line-height:1.6}.data-card{background:#fff;border-radius:12px;border:1px solid #e0e3e8;overflow:hidden;box-shadow:0 1px 3px #0000000f;animation:cardIn .4s ease-out;min-height:320px;display:flex;flex-direction:column}@keyframes cardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.data-card-full{grid-column:1 / -1}.data-card-full .data-card{min-height:auto}.data-card-full .filled-card .data-card-body{max-height:200px;overflow-y:auto}.questionnaire-title{text-align:center;font-weight:700;font-size:15px;margin:12px 16px 0;color:#1a1a2e}.data-card-header{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px;font-weight:600;font-size:14px;border-bottom:1px solid #f0f0f0}.card-icon{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.card-icon.patient{background:#e8f4fd;color:#2196f3}.card-icon.practitioner{background:#fce4ec;color:#e91e63}.card-icon.questionnaire{background:#e8f5e9;color:#4caf50}.card-icon.filled{background:#c8e6c9;color:#2e7d32}.data-card.filled-card{background:#f1f8e9;border-color:#a5d6a7}.data-card-body{padding:14px 16px;font-size:13px;line-height:1.7;max-height:320px;overflow-y:auto;white-space:pre-wrap;word-break:break-word;color:#444;flex:1}.data-card-body::-webkit-scrollbar{width:5px}.data-card-body::-webkit-scrollbar-thumb{background:#d0d5dd;border-radius:3px}.editable-field-row{display:flex;align-items:baseline;gap:0}.editable-field-input{border:none;border-bottom:1px dashed #a5d6a7;background:transparent;font:inherit;font-weight:700;color:#2e7d32;padding:0 2px;margin:0;flex:1;min-width:40px;outline:none;line-height:inherit}.editable-field-input:focus{border-bottom-color:#2e7d32;background:#a5d6a726}.export-panel{display:flex;gap:12px;justify-content:center;padding:8px 0}.export-button{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:10px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s;border:none}.export-button.fhir{background:#e3f2fd;color:#1565c0}.export-button.fhir:hover{background:#bbdefb}.export-button.x12{background:#fce4ec;color:#c62828}.export-button.x12:hover{background:#f8bbd0}.export-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.export-modal{background:#fff;border-radius:16px;width:720px;max-width:90vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:modalIn .25s ease-out}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.export-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #eee}.export-modal-header h2{font-size:16px;font-weight:600}.export-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#888;line-height:1;padding:0 4px}.export-modal-close:hover{color:#333}.export-modal-body{flex:1;overflow-y:auto;padding:16px 24px}.export-modal-payload{background:#f5f6f8;border:1px solid #e0e3e8;border-radius:8px;padding:16px;font-size:11px;font-family:SF Mono,Fira Code,Consolas,monospace;line-height:1.5;white-space:pre-wrap;word-break:break-all;max-height:400px;overflow-y:auto}.export-modal-actions{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #eee}.export-action-btn{display:flex;align-items:center;gap:6px;padding:10px 20px;border-radius:10px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s;border:none}.export-action-btn.download{background:#f0f2f5;color:#333}.export-action-btn.download:hover{background:#e0e3e8}.export-action-btn.send-payer{background:#36c;color:#fff}.export-action-btn.send-payer:hover:not(:disabled){background:#2952a3}.export-action-btn.send-payer:disabled{opacity:.5;cursor:not-allowed}.export-action-btn.cancel{background:#f0f2f5;color:#333}.export-action-btn.cancel:hover{background:#e0e3e8}.export-payer-section{padding:16px 24px;border-top:1px solid #eee;display:flex;flex-direction:column;gap:10px}.payer-label{font-size:13px;font-weight:600;color:#555}.payer-select{width:100%;padding:10px 12px;border:1px solid #d0d5dd;border-radius:8px;font-size:13px;font-family:inherit;outline:none;background:#fff}.payer-select:focus{border-color:#36c;box-shadow:0 0 0 3px #3366cc1a}.payer-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:4px}.send-progress{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;border-top:1px solid #eee}.send-spinner{width:32px;height:32px;border:3px solid #e0e3e8;border-top-width:3px;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.send-step-label{font-size:14px;font-weight:600}.chat-panel{width:26%;flex:none;display:flex;flex-direction:column;background:#fff;min-width:0}.suggested-prompts{padding:14px 20px;border-bottom:1px solid #eee;flex-shrink:0}.suggested-prompts-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:#8b95a5;margin-bottom:10px}.prompts-grid{display:flex;flex-wrap:wrap;gap:8px}.prompt-chip{background:#f0f4ff;border:1px solid #d0dcf0;color:#36c;padding:7px 14px;border-radius:12px;font-size:12px;font-family:inherit;cursor:pointer;transition:all .2s;max-width:100%;white-space:normal;line-height:1.4;text-align:left}.prompt-chip:hover:not(:disabled){background:#dce6ff;border-color:#99b3e6;transform:translateY(-1px)}.prompt-chip:disabled{opacity:.5;cursor:not-allowed;transform:none}.prompt-chip-locked{opacity:.35;filter:grayscale(.6);pointer-events:none}.chat-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:14px}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-thumb{background:#d0d5dd;border-radius:3px}.chat-message{display:flex;gap:10px;animation:msgIn .3s ease-out}@keyframes msgIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-message.user{justify-content:flex-end}.chat-message.assistant{justify-content:flex-start}.message-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.message-avatar.user{background:#36c;color:#fff}.message-avatar.assistant{background:#1a1a2e;color:#00d4aa}.message-bubble{max-width:75%;padding:11px 16px;border-radius:16px;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.message-bubble.user{background:#36c;color:#fff;border-bottom-right-radius:4px}.message-bubble.assistant{background:#f0f2f5;color:#1a1a2e;border-bottom-left-radius:4px}.chat-input-area{padding:14px 20px;border-top:1px solid #eee;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.chat-input-area textarea{width:100%;resize:none;border:1px solid #d0d5dd;border-radius:12px;padding:11px 16px;font-family:inherit;font-size:14px;line-height:1.5;max-height:360px;outline:none;transition:border-color .2s}.chat-input-area textarea:focus{border-color:#36c;box-shadow:0 0 0 3px #3366cc1a}.chat-input-area textarea::placeholder{color:#aab0bc}.chat-input-row{display:flex;align-items:center;justify-content:flex-end}.send-button{background:#36c;color:#fff;border:none;border-radius:12px;padding:11px 20px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.send-button:hover:not(:disabled){background:#2952a3}.send-button:disabled{opacity:.5;cursor:not-allowed}.elapsed-time{display:flex;align-items:center;gap:5px;font-size:12px;font-family:SF Mono,Fira Code,Consolas,monospace;color:#8b95a5;margin-right:auto}.flow-chart-container{background:#fafbfc;border:1px solid #e8ecf0;border-radius:12px;padding:12px;width:100%}.mini-terminal{background:#1e1e1e;overflow-y:auto;height:calc(12 * 1.6em + 16px);padding:8px 10px;flex-shrink:0;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:11px;line-height:1.6;border-radius:0}.mini-terminal::-webkit-scrollbar{width:4px}.mini-terminal::-webkit-scrollbar-thumb{background:#444;border-radius:2px}.mini-terminal-line{white-space:nowrap}.mini-terminal-time{color:#666}.mini-terminal-msg{color:#d4d4d4}.mini-terminal-msg.success{color:#27c93f}.mini-terminal-msg.error{color:#ff5f56}.mini-terminal-msg.info{color:#42a5f5}.loading-dots{display:flex;gap:4px;padding:6px 0}.loading-dots span{width:6px;height:6px;background:#8b95a5;border-radius:50%;animation:dotPulse 1.4s ease-in-out infinite}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}@media(max-width:1200px){.chart-panel{width:35%}.chat-panel{width:22%}.broker-input{width:260px}}@media(max-width:900px){.app-main{flex-direction:column}.chart-panel{width:100%;max-height:35vh;border-right:none;border-bottom:1px solid #e0e3e8}.data-panel{grid-template-columns:1fr;border-right:none;border-bottom:1px solid #e0e3e8}.chat-panel{width:100%}.header-broker{display:none}}
