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{min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(135deg,#667eea,#764ba2);color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.container,body{min-height:100vh}.container{background:#fff;box-shadow:0 0 30px #0000001a;margin:0 auto}.header{background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;overflow:hidden;padding:2rem;position:relative;text-align:center}.header:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='30' cy='30' r='2' fill='%23fff' fill-opacity='.05' fill-rule='evenodd'/%3E%3C/svg%3E");bottom:0;content:"";left:0;position:absolute;right:0;top:0}.header h1{font-size:2.5rem;margin-bottom:.5rem}.header h1,.header p{position:relative;z-index:1}.header p{font-size:1.1rem;opacity:.9}.main-content{padding:2rem}.filters-section{background:#f8f9fa;border-radius:12px;box-shadow:0 2px 10px #0000000d;margin-bottom:2rem;padding:1.5rem}.filters-grid{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{color:#555;font-size:.9rem;font-weight:600}.filter-input{border:2px solid #e9ecef;border-radius:8px;font-size:1rem;padding:.75rem;transition:all .3s ease}.filter-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #00000014;overflow:hidden;padding:1.5rem;position:relative;text-align:center;transition:transform .3s ease}.stat-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0}.stat-card:hover{transform:translateY(-5px)}.stat-number{color:#2c3e50;font-size:2rem;font-weight:700;margin-bottom:.5rem}.stat-label{color:#666;font-size:.9rem}.chart-container{margin-bottom:2rem;padding:1.5rem}.chart-container,.contacts-section{background:#fff;border-radius:12px;box-shadow:0 4px 15px #00000014}.contacts-section{overflow:hidden}.section-header{background:#f8f9fa;color:#2c3e50;font-weight:600;padding:1rem 1.5rem}.contact-card,.section-header{border-bottom:1px solid #e9ecef}.contact-card{padding:1.5rem;transition:background-color .3s ease}.contact-card:hover{background:#f8f9fa}.contact-card:last-child{border-bottom:none}.contact-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1rem}.contact-info{flex:1 1;min-width:200px}.contact-name{align-items:center;color:#2c3e50;display:flex;font-size:1.2rem;font-weight:600;gap:.5rem;margin-bottom:.25rem}.contact-phone{color:#666;margin-bottom:.25rem}.contact-date{color:#888;font-size:.9rem}.contact-actions{display:flex;flex-wrap:wrap;gap:.5rem}.interest-badge{border-radius:20px;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:.5rem 1rem;text-transform:uppercase}.interest-alto{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.interest-medio{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.interest-basso{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.btn{border:none;border-radius:6px;cursor:pointer;display:inline-block;font-size:.9rem;font-weight:500;padding:.5rem 1rem;text-align:center;text-decoration:none;transition:all .3s ease}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#5a6fd8;transform:translateY(-1px)}.btn-success{background:#28a745;color:#fff}.btn-success:hover{background:#218838;transform:translateY(-1px)}.btn-info{background:#17a2b8;color:#fff}.btn-info:hover{background:#138496;transform:translateY(-1px)}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover{background:#c82333;transform:translateY(-1px)}.btn-warning{background:#ffc107;color:#212529}.btn-warning:hover{background:#e0a800;transform:translateY(-1px)}.contact-message{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;color:#555;font-style:italic;margin:1rem 0;padding:1rem}.tabs-container{background:#f8f9fa;border-radius:12px;box-shadow:0 2px 10px #0000000d;margin-bottom:1.5rem;overflow:hidden}.tabs{border-bottom:1px solid #e9ecef;display:flex}.tab-btn{align-items:center;background:#0000;border:none;color:#666;cursor:pointer;display:flex;flex:1 1;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;padding:1.2rem;position:relative;transition:all .3s ease}.tab-btn.active{color:#667eea}.tab-btn.active:after{background:#667eea;bottom:0;content:"";height:3px;left:0;position:absolute;right:0}.count-badge{background:#e9ecef;border-radius:12px;color:#495057;font-size:.85rem;font-weight:600;padding:.15rem .6rem}.tab-btn.active .count-badge{background:#667eea;color:#fff}.read-indicator{align-items:center;background:#28a745;border-radius:50%;color:#fff;display:inline-flex;font-size:.8rem;height:24px;justify-content:center;width:24px}.toast-container{bottom:20px;max-width:350px;position:fixed;right:20px;z-index:1000}.toast{align-items:center;animation:slideIn .3s ease,fadeOut .5s ease 2.5s forwards;background:#fff;border-left:4px solid;border-radius:8px;box-shadow:0 5px 15px #00000026;display:flex;gap:.75rem;margin-top:.75rem;padding:1rem 1.5rem}.toast-success{border-left-color:#28a745}.toast-info{border-left-color:#17a2b8}.toast-error{border-left-color:#dc3545}.toast-icon{font-size:1.5rem}.toast-success .toast-icon{color:#28a745}.toast-info .toast-icon{color:#17a2b8}.toast-error .toast-icon{color:#dc3545}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.loading-spinner{animation:spin 1s ease-in-out infinite;border:3px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.modal-overlay{align-items:center;background:#000c;display:flex;height:100%;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100%;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:80vh;max-width:600px;overflow:hidden;width:100%}.modal-header{background:#667eea;font-size:1.2em;font-weight:600;justify-content:space-between;padding:20px}.modal-close,.modal-header{align-items:center;color:#fff;display:flex}.modal-close{background:#0000;border:none;cursor:pointer;font-size:1.5em;height:30px;justify-content:center;padding:0;width:30px}.modal-body{display:flex;flex-direction:column;max-height:60vh;overflow-y:auto;padding:20px}.modal-footer{background:#f8f9fa;border-top:1px solid #e9ecef;padding:15px 20px;text-align:center}.conversation-message{border-radius:12px;margin:10px 0;max-width:80%;padding:12px 16px}.conversation-message.bot{background:#e3f2fd;color:#0d47a1;margin-right:auto}.conversation-message.user{background:#667eea;color:#fff;margin-left:auto}.message-sender{font-weight:600;margin-bottom:4px}.patient-record-summary{background:#f8f9fa;border-left:4px solid #28a745;border-radius:8px;margin:1rem 0;padding:1rem}.summary-title{color:#28a745;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.summary-item{align-items:flex-start;display:flex;margin-bottom:.5rem}.summary-label{color:#555;font-weight:600;margin-right:.5rem;min-width:100px}.summary-value{color:#333;flex:1 1}@media (max-width:768px){.container{padding-left:0}.header h1{font-size:2rem}.header p{font-size:1rem}.main-content{padding:1rem}.filters-grid{grid-template-columns:1fr}.contact-header{align-items:flex-start;flex-direction:column}.contact-actions{justify-content:flex-start;width:100%}.stats-grid{grid-template-columns:repeat(2,1fr)}.tabs{flex-direction:column}.tab-btn{justify-content:flex-start;padding:1rem}.tab-btn.active:after{bottom:auto;height:100%;width:3px}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.btn{font-size:.8rem;padding:.4rem .8rem}.contact-actions{flex-direction:column;gap:.5rem}.btn{width:100%}}
/*# sourceMappingURL=main.084f6312.css.map*/