:root{--deep-navy: #0A1628;--mountain-blue: #1E3A5F;--royal-blue: #2563EB;--sky-blue: #3B82F6;--light-azure: #60A5FA;--ice-blue: #93C5FD;--cloud-white: #F0F9FF;--pure-white: #FFFFFF}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--cloud-white);color:var(--deep-navy);line-height:1.5}.app{display:flex;min-height:100vh}.sidebar{width:240px;background:var(--deep-navy);color:var(--pure-white);padding:20px;display:flex;flex-direction:column}.sidebar h1{font-size:1.5rem;margin-bottom:30px;color:var(--light-azure)}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar button{background:transparent;border:none;color:var(--ice-blue);padding:12px 16px;text-align:left;border-radius:8px;cursor:pointer;font-size:.95rem;transition:all .2s}.sidebar button:hover,.sidebar button.active{background:#2563eb33;color:var(--light-azure)}.main-content{flex:1;display:flex;flex-direction:column}.header{background:var(--pure-white);padding:16px 24px;border-bottom:1px solid var(--ice-blue);display:flex;justify-content:space-between;align-items:center}.header h2{font-size:1.25rem;font-weight:600;color:var(--deep-navy)}.header-actions{display:flex;gap:12px;align-items:center}.btn{padding:10px 20px;border:none;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s}.btn-primary{background:var(--royal-blue);color:var(--pure-white)}.btn-primary:hover{background:var(--sky-blue)}.btn-secondary{background:var(--cloud-white);color:var(--deep-navy);border:1px solid var(--ice-blue)}.btn-secondary:hover{background:var(--ice-blue)}.btn-success{background:#059669;color:#fff}.btn-danger{background:#dc2626;color:#fff}.btn-small{padding:6px 12px;font-size:.8rem}.search-input{padding:10px 16px;border:1px solid var(--ice-blue);border-radius:8px;width:300px;font-size:.9rem;background:var(--pure-white)}.search-input:focus{outline:none;border-color:var(--royal-blue);box-shadow:0 0 0 3px #2563eb1a}.content{flex:1;padding:24px;overflow-y:auto;background:var(--cloud-white)}.lead-list{background:var(--pure-white);border-radius:12px;box-shadow:0 2px 8px #0a162814}.lead-list-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 120px;padding:16px 20px;background:var(--cloud-white);border-bottom:1px solid var(--ice-blue);font-weight:600;font-size:.85rem;color:var(--mountain-blue);text-transform:uppercase;letter-spacing:.5px}.lead-item{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 120px;padding:16px 20px;border-bottom:1px solid var(--cloud-white);align-items:center;cursor:pointer;transition:background .2s}.lead-item:hover{background:var(--cloud-white)}.lead-item:last-child{border-bottom:none}.lead-name{font-weight:500;color:var(--deep-navy)}.lead-name small{display:block;color:var(--mountain-blue);font-weight:400;font-size:.85rem}.status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:500;text-transform:capitalize}.status-new{background:#2563eb1a;color:var(--royal-blue)}.status-appointment{background:#0596691a;color:#059669}.status-callback{background:#f59e0b1a;color:#d97706}.status-no_answer{background:#ec48991a;color:#db2777}.status-closed{background:#6b72801a;color:#6b7280}.status-invalid{background:#dc26261a;color:#dc2626}.status-voicemail{background:#8b5cf61a;color:#8b5cf6}.lead-card-container{display:flex;gap:24px}.lead-card{flex:1;background:var(--pure-white);border-radius:12px;box-shadow:0 2px 8px #0a162814;overflow:hidden}.lead-card-header{background:linear-gradient(135deg,var(--deep-navy) 0%,var(--mountain-blue) 100%);color:var(--pure-white);padding:24px}.lead-card-header h2{font-size:1.5rem;margin-bottom:8px}.lead-card-header p{color:var(--ice-blue);font-size:.9rem}.lead-card-body{padding:24px}.lead-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.info-item{padding:12px;background:var(--cloud-white);border-radius:8px;border:1px solid var(--ice-blue)}.info-item label{display:block;font-size:.75rem;color:var(--mountain-blue);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.info-item span{font-size:.95rem;font-weight:500;color:var(--deep-navy)}.phone-actions{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.phone-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:var(--cloud-white);border:1px solid var(--royal-blue);border-radius:8px;color:var(--royal-blue);cursor:pointer;font-weight:500;transition:all .2s}.phone-btn:hover{background:var(--royal-blue);color:var(--pure-white)}.notes-section{margin-top:24px}.notes-section h3{font-size:1rem;margin-bottom:12px;color:var(--deep-navy)}.notes-display{background:var(--cloud-white);padding:16px;border-radius:8px;font-size:.9rem;white-space:pre-wrap;max-height:200px;overflow-y:auto;margin-bottom:12px;border:1px solid var(--ice-blue)}.notes-input{display:flex;gap:8px}.notes-input textarea{flex:1;padding:12px;border:1px solid var(--ice-blue);border-radius:8px;resize:none;font-family:inherit;font-size:.9rem}.notes-input textarea:focus{outline:none;border-color:var(--royal-blue);box-shadow:0 0 0 3px #2563eb1a}.conversation-panel{width:400px;background:var(--pure-white);border-radius:12px;box-shadow:0 2px 8px #0a162814;display:flex;flex-direction:column}.conversation-header{padding:16px 20px;border-bottom:1px solid var(--ice-blue);font-weight:600;color:var(--deep-navy)}.conversation-messages{flex:1;padding:16px;overflow-y:auto;max-height:400px;display:flex;flex-direction:column;gap:12px}.message{max-width:80%;padding:12px 16px;border-radius:16px;font-size:.9rem}.message.outbound{align-self:flex-end;background:var(--royal-blue);color:var(--pure-white);border-bottom-right-radius:4px}.message.inbound{align-self:flex-start;background:var(--cloud-white);color:var(--deep-navy);border-bottom-left-radius:4px;border:1px solid var(--ice-blue)}.message-time{font-size:.7rem;opacity:.7;margin-top:4px}.conversation-input{padding:16px;border-top:1px solid var(--ice-blue);display:flex;gap:8px}.conversation-input input{flex:1;padding:12px 16px;border:1px solid var(--ice-blue);border-radius:24px;font-size:.9rem}.conversation-input input:focus{outline:none;border-color:var(--royal-blue);box-shadow:0 0 0 3px #2563eb1a}.send-btn{width:40px;height:40px;border-radius:50%;background:var(--royal-blue);border:none;color:var(--pure-white);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.send-btn:hover{background:var(--sky-blue)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0a162899;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--pure-white);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{padding:20px 24px;border-bottom:1px solid var(--ice-blue);display:flex;justify-content:space-between;align-items:center}.modal-header h3{font-size:1.2rem;color:var(--deep-navy)}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--mountain-blue)}.modal-body{padding:24px}.disposition-options{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.disposition-option{padding:14px 16px;border:2px solid var(--ice-blue);border-radius:8px;cursor:pointer;transition:all .2s;font-weight:500;color:var(--deep-navy)}.disposition-option:hover{border-color:var(--royal-blue);background:var(--cloud-white)}.disposition-option.selected{border-color:var(--royal-blue);background:#2563eb1a}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--deep-navy)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px;border:1px solid var(--ice-blue);border-radius:8px;font-size:.95rem;font-family:inherit}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--royal-blue);box-shadow:0 0 0 3px #2563eb1a}.modal-footer{padding:16px 24px;border-top:1px solid var(--ice-blue);display:flex;justify-content:flex-end;gap:12px}.lead-navigation{display:flex;justify-content:space-between;margin-bottom:20px}.nav-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--pure-white);border:1px solid var(--ice-blue);border-radius:8px;cursor:pointer;font-weight:500;color:var(--deep-navy);transition:all .2s}.nav-btn:hover:not(:disabled){border-color:var(--royal-blue);background:var(--cloud-white)}.nav-btn:disabled{opacity:.5;cursor:not-allowed}.appointments-list{background:var(--pure-white);border-radius:12px;box-shadow:0 2px 8px #0a162814}.appointment-item{padding:20px;border-bottom:1px solid var(--cloud-white);display:flex;justify-content:space-between;align-items:center}.appointment-item:last-child{border-bottom:none}.appointment-info h4{margin-bottom:4px;color:var(--deep-navy)}.appointment-info p{color:var(--mountain-blue);font-size:.9rem}.appointment-actions{display:flex;gap:8px}.upload-area{border:2px dashed var(--ice-blue);border-radius:12px;padding:40px;text-align:center;margin-bottom:24px;cursor:pointer;transition:all .2s;background:var(--pure-white)}.upload-area:hover{border-color:var(--royal-blue);background:var(--cloud-white)}.upload-area input{display:none}.upload-area p{color:var(--mountain-blue);margin-top:12px}.filter-tabs{display:flex;gap:8px;margin-bottom:20px}.filter-tab{padding:8px 16px;background:var(--pure-white);border:1px solid var(--ice-blue);border-radius:20px;cursor:pointer;font-size:.85rem;transition:all .2s;color:var(--mountain-blue)}.filter-tab:hover,.filter-tab.active{background:var(--royal-blue);border-color:var(--royal-blue);color:var(--pure-white)}.pagination{display:flex;justify-content:center;gap:8px;margin-top:20px}.pagination button{padding:8px 16px;border:1px solid var(--ice-blue);background:var(--pure-white);border-radius:8px;cursor:pointer;color:var(--deep-navy)}.pagination button:hover:not(:disabled){border-color:var(--royal-blue)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.loading{display:flex;justify-content:center;align-items:center;padding:40px}.spinner{width:40px;height:40px;border:3px solid var(--ice-blue);border-top-color:var(--royal-blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:60px 20px;color:var(--mountain-blue)}.empty-state h3{margin-bottom:8px;color:var(--deep-navy)}.toast{position:fixed;bottom:24px;right:24px;padding:16px 24px;background:var(--deep-navy);color:var(--pure-white);border-radius:8px;box-shadow:0 4px 12px #0a16284d;z-index:2000;animation:slideIn .3s ease}.toast.success{background:#059669}.toast.error{background:#dc2626}@keyframes slideIn{0%{transform:translateY(100px);opacity:0}to{transform:translateY(0);opacity:1}}.loading-screen{display:flex;justify-content:center;align-items:center;height:100vh;background:var(--cloud-white)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--deep-navy) 0%,var(--mountain-blue) 100%);padding:20px}.login-container{background:var(--pure-white);border-radius:16px;box-shadow:0 20px 60px #0a162866;width:100%;max-width:420px;overflow:hidden}.login-header{text-align:center;padding:40px 40px 20px;background:linear-gradient(135deg,var(--deep-navy) 0%,var(--mountain-blue) 100%);color:var(--pure-white)}.login-logo{width:80px;height:80px;object-fit:contain;margin-bottom:16px;border-radius:12px;background:var(--pure-white);padding:8px}.login-header h1{font-size:1.75rem;margin-bottom:8px;color:var(--light-azure)}.login-header p{color:var(--ice-blue);font-size:.95rem}.login-form{padding:30px 40px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.alert{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:.9rem}.alert-error{background:#dc26261a;color:#dc2626;border:1px solid rgba(220,38,38,.3)}.alert-success{background:#0596691a;color:#059669;border:1px solid rgba(5,150,105,.3)}.btn-block{width:100%;padding:14px 20px;font-size:1rem}.login-footer{padding:20px 40px 30px;text-align:center;border-top:1px solid var(--ice-blue)}.login-footer p{color:var(--mountain-blue);font-size:.9rem}.login-footer button{background:none;border:none;color:var(--royal-blue);cursor:pointer;font-weight:600;font-size:.9rem}.login-footer button:hover{text-decoration:underline}.sidebar-header{margin-bottom:30px}.sidebar-logo{width:50px;height:50px;object-fit:contain;margin-bottom:12px;border-radius:8px;background:var(--pure-white);padding:4px}.sidebar-footer{margin-top:auto;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.user-info{margin-bottom:12px}.user-info span{display:block;font-weight:500;color:var(--pure-white)}.user-info small{color:var(--ice-blue);font-size:.8rem;text-transform:capitalize}.logout-btn{width:100%;padding:10px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:var(--pure-white);border-radius:8px;cursor:pointer;transition:all .2s}.logout-btn:hover{background:#fff3}.badge{background:#dc2626;color:#fff;padding:2px 8px;border-radius:12px;font-size:.75rem;margin-left:8px}.inbound-list{background:var(--pure-white);border-radius:12px;box-shadow:0 2px 8px #0a162814}.inbound-item{padding:20px;border-bottom:1px solid var(--cloud-white);display:flex;justify-content:space-between;align-items:flex-start;cursor:pointer;transition:background .2s}.inbound-item:hover{background:var(--cloud-white)}.inbound-item:last-child{border-bottom:none}.inbound-item.unread{background:#2563eb0d;border-left:4px solid var(--royal-blue)}.inbound-item.unread:hover{background:#2563eb1a}.inbound-info h4{margin-bottom:4px;color:var(--deep-navy)}.inbound-phone{color:var(--royal-blue);font-size:.9rem;margin-bottom:8px}.inbound-message{background:var(--cloud-white);padding:10px 14px;border-radius:12px;font-size:.9rem;margin-bottom:8px;max-width:400px;border:1px solid var(--ice-blue)}.inbound-info small{color:var(--mountain-blue);font-size:.8rem}.inbound-status{min-width:80px;text-align:right}.users-list{background:var(--pure-white);border-radius:12px;box-shadow:0 2px 8px #0a162814}.status-unread{background:#f59e0b1a;color:#d97706}.status-read{background:#0596691a;color:#059669}.status-follow_up{background:#2563eb1a;color:var(--royal-blue)}.filters-row{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:16px;background:var(--pure-white);border-radius:12px;align-items:center}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-weight:500;color:var(--mountain-blue);font-size:.85rem}.filter-select{padding:8px 12px;border:1px solid var(--ice-blue);border-radius:8px;font-size:.85rem;background:var(--pure-white);color:var(--deep-navy)}.filter-select:focus{outline:none;border-color:var(--royal-blue)}.filter-date{padding:8px 12px;border:1px solid var(--ice-blue);border-radius:8px;font-size:.85rem}.filter-date:focus{outline:none;border-color:var(--royal-blue)}.call-history-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--ice-blue)}.call-history-section h3{font-size:1rem;margin-bottom:12px;color:var(--deep-navy)}.call-history-section .empty-text{color:var(--mountain-blue);font-size:.9rem}.call-history-list{display:flex;flex-direction:column;gap:12px}.call-item{background:var(--cloud-white);border:1px solid var(--ice-blue);border-radius:8px;padding:12px}.call-item.inbound{border-left:3px solid var(--royal-blue)}.call-item.outbound{border-left:3px solid #059669}.call-info{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-bottom:8px}.call-direction{font-weight:500;font-size:.85rem}.call-direction.inbound{color:var(--royal-blue)}.call-direction.outbound{color:#059669}.call-phone{color:var(--deep-navy);font-weight:500}.call-duration{color:var(--mountain-blue);font-size:.85rem}.call-date{color:var(--mountain-blue);font-size:.8rem;margin-left:auto}.call-recording{width:100%;height:32px;margin-top:8px}.call-recording::-webkit-media-controls-panel{background:var(--cloud-white)}.lead-list-header,.lead-item{grid-template-columns:2fr 1fr 1fr 100px 100px 80px}.language-toggle{display:flex;gap:4px;margin-top:8px}.lang-btn{padding:4px 10px;border:1px solid rgba(255,255,255,.3);background:transparent;color:var(--ice-blue);border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.lang-btn:hover{background:#ffffff1a}.lang-btn.active{background:var(--royal-blue);border-color:var(--royal-blue);color:var(--pure-white)}.login-container .language-toggle{position:absolute;top:20px;right:20px}.login-container .lang-btn{border-color:var(--ice-blue);color:var(--mountain-blue)}.login-container .lang-btn:hover{background:var(--cloud-white)}.login-container .lang-btn.active{background:var(--royal-blue);border-color:var(--royal-blue);color:var(--pure-white)}.login-container{position:relative}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-grid .form-group{margin-bottom:0}.modal-large{max-width:700px}.btn-success{background:#059669;color:var(--pure-white)}.btn-success:hover{background:#047857}.btn-success:disabled{background:#9ca3af}.incoming-call-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0a1628e6;display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.incoming-call-modal{background:var(--pure-white);border-radius:20px;padding:40px;text-align:center;box-shadow:0 10px 40px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.incoming-call-icon{font-size:4rem;margin-bottom:16px;animation:ring 1s ease-in-out infinite}@keyframes ring{0%,to{transform:rotate(-15deg)}50%{transform:rotate(15deg)}}.incoming-call-modal h3{font-size:1.5rem;color:var(--deep-navy);margin-bottom:8px}.incoming-call-modal p{font-size:1.1rem;color:var(--mountain-blue);margin-bottom:24px}.incoming-call-actions{display:flex;gap:16px;justify-content:center}.btn-large{padding:16px 32px;font-size:1.1rem;border-radius:50px}.btn-danger{background:#dc2626;color:var(--pure-white)}.btn-danger:hover{background:#b91c1c}.call-bar{position:fixed;top:0;left:240px;right:0;background:var(--deep-navy);color:var(--pure-white);padding:12px 24px;display:flex;justify-content:space-between;align-items:center;z-index:1500;animation:slideDown .3s ease}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.call-bar.calling{background:var(--sky-blue)}.call-bar.connected{background:#059669}.call-bar.ended{background:var(--mountain-blue)}.call-bar-status{display:flex;align-items:center;gap:12px;font-weight:500}.call-indicator{width:12px;height:12px;background:var(--pure-white);border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.call-bar-actions{display:flex;gap:12px}.call-btn{padding:8px 20px;border:1px solid rgba(255,255,255,.3);background:transparent;color:var(--pure-white);border-radius:20px;cursor:pointer;font-weight:500;transition:all .2s}.call-btn:hover{background:#ffffff1a}.call-btn.muted{background:#fff3}.call-btn.hangup{background:#dc2626;border-color:#dc2626}.call-btn.hangup:hover{background:#b91c1c}.phone-status{position:fixed;bottom:20px;right:20px;background:var(--deep-navy);color:var(--pure-white);padding:10px 16px;border-radius:24px;font-size:.85rem;display:flex;align-items:center;gap:8px;box-shadow:0 4px 12px #00000026;z-index:1000}.phone-status.ready{background:#059669}.phone-status.offline,.phone-status.error{background:#dc2626}.phone-icon{font-size:1rem}.phone-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;background:var(--royal-blue);color:var(--pure-white);border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s}.phone-btn:hover:not(:disabled){background:var(--sky-blue)}.phone-btn:disabled{background:#9ca3af;cursor:not-allowed}.quick-actions{display:flex;gap:8px;margin-top:24px;padding:16px 0;border-top:1px solid rgba(255,255,255,.1)}.quick-btn{flex:1;padding:12px 8px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;color:var(--ice-blue);border-radius:8px;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:4px}.quick-btn:hover{background:#ffffff26;border-color:var(--light-azure)}.quick-btn.sms{border-color:var(--sky-blue)}.quick-btn.sms:hover{background:#3b82f633}.quick-btn.call{border-color:#fff3}.quick-btn.call.ready{border-color:#059669}.quick-btn.call.ready:hover{background:#05966933}.quick-btn:disabled{opacity:.5;cursor:not-allowed}.lead-number{font-weight:600;color:var(--royal-blue);font-size:.85rem}
