body{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}.layout{background:#f5f7fa;display:flex;min-height:100vh}.sidebar{background:linear-gradient(180deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;transition:transform .3s ease;width:280px;z-index:100}.sidebar-header{align-items:center;border-bottom:1px solid #fff3;display:flex;justify-content:space-between;padding:30px 25px}.sidebar-header h2{font-size:1.5em;font-weight:700}.menu-toggle{background:none;border:none;color:#fff;cursor:pointer;display:none;font-size:1.5em}.sidebar-nav{flex:1 1;overflow-y:auto;padding:20px 0}.nav-item{align-items:center;border-left:4px solid #0000;color:#fff;display:flex;gap:15px;padding:15px 25px;text-decoration:none;transition:all .3s ease}.nav-item:hover{background:#ffffff1a;border-left-color:#fff}.nav-item.active{background:#fff3;border-left-color:#fff;font-weight:600}.nav-icon{font-size:1.3em}.nav-label{font-size:1em}.sidebar-footer{border-top:1px solid #fff3;padding:20px 25px}.user-info{gap:12px;margin-bottom:15px}.user-avatar-small,.user-info{align-items:center;display:flex}.user-avatar-small{background:#ffffff4d;border-radius:50%;font-size:.9em;font-weight:700;height:45px;justify-content:center;width:45px}.user-details{flex:1 1}.user-name{font-size:.95em;margin-bottom:3px}.user-role{font-size:.8em;opacity:.8;text-transform:uppercase}.btn-logout{background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px;transition:all .3s ease;width:100%}.btn-logout:hover{background:#ffffff4d}.main-content{flex:1 1;margin-left:280px;min-height:100vh}.mobile-menu-toggle{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 5px 15px #0003;color:#fff;cursor:pointer;display:none;font-size:1.5em;height:50px;left:20px;position:fixed;top:20px;width:50px;z-index:90}.sidebar-overlay{display:none}@media (max-width:768px){.sidebar{transform:translateX(-100%)}.sidebar.open{transform:translateX(0)}.menu-toggle{display:block}.main-content{margin-left:0;width:100%}.mobile-menu-toggle{display:block}.sidebar-overlay{background:#00000080;bottom:0;display:block;left:0;position:fixed;right:0;top:0;z-index:90}}.landing-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.landing-header{color:#fff;padding:60px 20px 40px;text-align:center}.landing-header h1{animation:fadeInDown .8s ease;font-size:3em;margin-bottom:15px;text-shadow:2px 2px 4px #0000004d}.landing-header p{animation:fadeInUp .8s ease;font-size:1.3em;opacity:.95}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.landing-container{margin:0 auto;max-width:1200px;padding:0 20px 60px}.landing-content{grid-gap:40px;align-items:start;display:grid;gap:40px;grid-template-columns:1fr 1fr}.landing-intro{animation:fadeIn 1s ease;background:#fff;border-radius:15px;box-shadow:0 10px 30px #0003;padding:40px}.landing-intro h2{color:#667eea;font-size:2em;margin-bottom:20px}.landing-intro p{color:#333;font-size:1.1em;line-height:1.8;margin-bottom:15px}.landing-intro .highlight{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;color:#fff;font-weight:600;margin-top:20px;padding:20px}.register-form{animation:fadeIn 1s ease .2s backwards;background:#fff;border-radius:15px;box-shadow:0 10px 30px #0003;padding:40px}.register-form h3{color:#667eea;font-size:1.8em;margin-bottom:25px;text-align:center}.form-group label{font-size:.95em}.form-group textarea{min-height:100px;resize:vertical}.referral-notice{background:#ffc107;border-radius:8px;color:#333;font-weight:600;margin-bottom:20px;padding:12px 16px;text-align:center}.form-footer{color:#6c757d;font-size:.85em;margin-top:15px;text-align:center}.success-container{animation:fadeIn .8s ease;color:#fff;margin:0 auto;max-width:600px;padding:60px 20px;text-align:center}.success-icon{animation:bounceIn .8s ease}@keyframes bounceIn{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.success-container h1{font-size:2.5em;margin-bottom:20px;text-shadow:2px 2px 4px #0000004d}.success-message{font-size:1.3em;margin-bottom:15px;opacity:.95}.success-submessage{font-size:1.1em;margin-bottom:30px;opacity:.9}.success-box{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:15px;margin-top:30px;padding:30px}.success-box p{font-size:1.1em;font-weight:500;margin:10px 0}@media (max-width:768px){.landing-content{grid-template-columns:1fr}.landing-intro{order:2}.register-form{order:1}.form-row{grid-template-columns:1fr}.landing-header h1{font-size:2em}.landing-header p{font-size:1.1em}}.login-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-container{animation:fadeIn .6s ease;max-width:450px;width:100%}.login-header{color:#fff;margin-bottom:30px;text-align:center}.login-header h1{font-size:2.5em;margin-bottom:10px;text-shadow:2px 2px 4px #0000004d}.login-header p{font-size:1.1em;opacity:.95}.login-form{background:#fff;border-radius:15px;box-shadow:0 10px 40px #0000004d;padding:40px}.login-form h2{color:#667eea;font-size:1.8em;margin-bottom:30px;text-align:center}.login-form .form-group{margin-bottom:20px}.login-form label{color:#333;display:block;font-size:.95em;font-weight:600;margin-bottom:8px}.login-form input{border:2px solid #e9ecef;border-radius:8px;font-family:inherit;font-size:1em;padding:14px 16px;transition:all .3s ease;width:100%}.login-form input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.error-message{font-weight:500;padding:12px 16px}.btn-login{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1em;font-weight:700;margin-top:10px;padding:16px;transition:all .3s ease;width:100%}.btn-login:hover:not(:disabled){box-shadow:0 10px 25px #667eea66;transform:translateY(-3px)}.btn-login:disabled{cursor:not-allowed;opacity:.6}.login-footer{color:#fff;margin-top:30px;opacity:.9;text-align:center}@media (max-width:768px){.login-header h1{font-size:2em}.login-form{padding:30px 25px}}.stat-card{background:#fff;border-radius:12px;box-shadow:0 5px 15px #0000001a;padding:25px;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{box-shadow:0 10px 25px #00000026;transform:translateY(-5px)}.stat-header{align-items:center;display:flex;gap:10px;margin-bottom:15px}.stat-icon{font-size:1.5em}.stat-label{color:#6c757d;font-size:.9em;font-weight:500}.stat-value{color:#333;font-size:2.5em;font-weight:700;margin-bottom:10px}.stat-growth{font-size:.9em;font-weight:600}.stat-growth.positive{color:#198754}.stat-growth.negative{color:#dc3545}.dashboard-page{margin:0 auto;max-width:1400px;padding:30px}.dashboard-header{margin-bottom:30px}.dashboard-header h1{color:#333;font-size:2.5em;margin-bottom:10px}.dashboard-header p{color:#6c757d;font-size:1.1em}.stats-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.charts-grid,.stats-grid{display:grid;margin-bottom:30px}.charts-grid{grid-gap:30px;gap:30px;grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}.chart-container{background:#fff;border-radius:15px;box-shadow:0 5px 15px #0000001a;padding:25px}.chart-container h2{color:#667eea;font-size:1.3em;margin-bottom:20px;text-align:center}.status-breakdown{background:#fff;border-radius:15px;box-shadow:0 5px 15px #0000001a;padding:30px}.status-breakdown h2{color:#667eea;font-size:1.5em;margin-bottom:25px;text-align:center}.status-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.status-card{border-radius:12px;color:#fff;padding:25px;text-align:center;transition:transform .3s ease}.status-card:hover{transform:translateY(-5px)}.status-card.inconformado{background:#6c757d}.status-card.simpatizante{background:#0dcaf0}.status-card.apoiador{background:#198754}.status-card.cabo{background:#fd7e14}.status-card.multiplicador{background:#ffc107;color:#333}.status-card-value{font-size:2.5em;font-weight:700;margin-bottom:10px}.status-card-label{font-size:1.1em;font-weight:600;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.status-card-range{font-size:.85em;margin-top:5px;opacity:.9}.error,.loading{color:#6c757d;font-size:1.2em;padding:60px 20px;text-align:center}@media (max-width:768px){.dashboard-page{padding:20px}.charts-grid{grid-template-columns:1fr}.status-cards{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}.status-badge{border-radius:20px;display:inline-block;font-size:.85em;font-weight:600;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase;white-space:nowrap}.badge-small{font-size:.75em;padding:4px 10px}.badge-large{font-size:.95em;padding:8px 18px}.badge-inconformado{background:#6c757d;color:#fff}.badge-simpatizante{background:#0dcaf0;color:#fff}.badge-apoiador{background:#198754;color:#fff}.badge-cabo_eleitoral{background:#fd7e14;color:#fff}.badge-multiplicador{background:#ffc107;color:#333}.user-card{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:20px;transition:transform .3s ease,box-shadow .3s ease}.user-card:hover{border-color:#667eea;box-shadow:0 5px 20px #667eea33;transform:translateY(-3px)}.user-card-header{gap:15px;margin-bottom:15px}.user-avatar,.user-card-header{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;flex-shrink:0;font-size:1.3em;font-weight:700;height:60px;justify-content:center;width:60px}.user-info{flex:1 1;min-width:0}.user-name{color:#333;font-size:1.1em;font-weight:600;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-phone{color:#6c757d;font-size:.9em;margin-bottom:2px}.user-location{color:#adb5bd;font-size:.85em}.user-card-body{margin-bottom:15px}.user-stats{display:flex;gap:20px;margin-bottom:12px}.user-stat{align-items:center;display:flex;flex-direction:column}.user-stat .stat-value{color:#667eea;font-size:1.4em;font-weight:700}.user-stat .stat-label{color:#6c757d;font-size:.75em;text-transform:uppercase}.user-card-actions{display:flex;gap:10px}.btn{align-items:center;display:flex;flex:1 1;font-size:.9em;gap:6px;justify-content:center;padding:10px 16px}.modal-overlay{animation:fadeIn .3s ease}.modal-content{animation:slideUp .3s ease;max-width:900px}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.modal-close{float:right;position:sticky;right:10px;top:10px;z-index:10}.profile-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px 15px 0 0;color:#fff;display:flex;gap:25px;padding:40px}.profile-avatar-large{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff4d;border:4px solid #fff;border-radius:50%;display:flex;flex-shrink:0;font-size:2.5em;font-weight:700;height:100px;justify-content:center;width:100px}.profile-info h2{font-size:2em;margin-bottom:10px}.profile-email,.profile-location,.profile-phone{font-size:1em;margin:5px 0;opacity:.95}.profile-badges{margin-top:15px}.profile-tabs{background:#f8f9fa;border-bottom:2px solid #e9ecef;display:flex;gap:0;padding:0 40px}.tab-button{background:#0000;border:none;border-bottom:3px solid #0000;color:#6c757d;cursor:pointer;flex:1 1;font-size:1em;font-weight:600;padding:18px 20px;position:relative;transition:all .3s ease}.tab-button:hover{background:#667eea0d;color:#667eea}.tab-button.active{background:#fff;border-bottom-color:#667eea;color:#667eea}.tab-content{min-height:300px}.messages-tab,.timeline-tab{padding:30px 40px}.timeline-header{margin-bottom:30px}.timeline-header h3{color:#667eea;font-size:1.5em;margin-bottom:5px}.timeline-subtitle{color:#6c757d;font-size:.95em}.timeline-pagination{align-items:center;border-top:2px solid #e9ecef;display:flex;gap:20px;justify-content:center;margin-top:30px;padding-top:20px}.timeline-pagination .btn-secondary{background:#fff;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s ease}.timeline-pagination .btn-secondary:hover:not(:disabled){background:#667eea;color:#fff;transform:translateY(-2px)}.timeline-pagination .btn-secondary:disabled{cursor:not-allowed;opacity:.4}.timeline-pagination .page-info{color:#333;font-weight:600}.no-events,.no-messages{color:#6c757d;font-size:1.1em;padding:60px 20px;text-align:center}.loading{font-size:1.1em;padding:40px}.profile-stats-grid{grid-gap:20px;background:#f8f9fa;border-bottom:2px solid #e9ecef;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));padding:30px 40px}.profile-stat{text-align:center}.profile-stat .stat-value{color:#667eea;font-size:2em;font-weight:700}.profile-stat .stat-label{color:#6c757d;font-size:.85em;font-weight:600;margin-top:5px;text-transform:uppercase}.profile-section{border-bottom:1px solid #e9ecef;padding:30px 40px}.profile-section:last-of-type{border-bottom:none}.profile-section h3{color:#667eea;font-size:1.3em;margin-bottom:20px}.inconformismo-text{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;color:#333;font-size:1.05em;line-height:1.8;padding:20px}.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:15px}.tag{background:#667eea;border-radius:20px;color:#fff;font-size:.9em;font-weight:600;padding:6px 14px}.indicado-card,.referrer-card{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:10px;padding:15px}.indicado-name,.referrer-name{color:#333;font-weight:600}.indicados-list{gap:10px}.indicados-list,.messages-list{display:flex;flex-direction:column}.messages-list{gap:15px}.message-item{background:#f8f9fa;border-left:4px solid #e9ecef;border-radius:8px;padding:20px}.message-item.respondida{border-left-color:#198754}.message-item.enviada{border-left-color:#0dcaf0}.message-item.pendente{border-left-color:#ffc107}.message-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.message-trigger{color:#667eea;font-size:.85em}.message-status,.message-trigger{font-weight:600;text-transform:uppercase}.message-status{border-radius:12px;font-size:.8em;padding:4px 10px}.message-status.status-respondida{background:#198754;color:#fff}.message-status.status-enviada{background:#0dcaf0;color:#fff}.message-status.status-pendente{background:#ffc107;color:#333}.message-content{color:#333;line-height:1.6;margin-bottom:10px}.message-footer{color:#6c757d;display:flex;font-size:.85em;justify-content:space-between}.message-response{background:#dcf8c6;border-radius:8px;font-size:.95em;margin-top:10px;padding:12px}.profile-info-grid{grid-gap:15px;background:#f8f9fa;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));padding:30px 40px}.info-item{display:flex;flex-direction:column;gap:5px}.info-label{color:#6c757d;font-size:.85em;font-weight:600;text-transform:uppercase}.info-value{color:#333;font-size:1em;font-weight:600}.profile-actions-inline{border-top:2px solid #e9ecef;padding:20px 40px}.btn-timeline{align-items:center;background:linear-gradient(135deg,#667eea1a,#764ba21a);border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;display:flex;font-size:1.05em;font-weight:600;gap:10px;justify-content:center;padding:16px 20px;transition:all .3s ease;width:100%}.btn-timeline:hover{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 5px 15px #667eea66;color:#fff;transform:translateY(-2px)}.profile-actions{display:flex;gap:15px;padding:30px 40px}.profile-actions .btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:1em;font-weight:600;gap:8px;justify-content:center;padding:14px 20px;transition:all .3s ease}.btn-whatsapp{background:#25d366;color:#fff}.btn-whatsapp:hover{background:#1fb855;box-shadow:0 5px 15px #25d36666;transform:translateY(-2px)}@media (max-width:768px){.modal-content{max-height:95vh}.profile-header{flex-direction:column;padding:30px 20px;text-align:center}.profile-stats-grid{grid-template-columns:repeat(2,1fr)}.profile-section{padding:20px}.profile-info-grid{grid-template-columns:1fr;padding:20px}.profile-actions{flex-direction:column;padding:20px}}.crm-page{margin:0 auto;max-width:1400px;padding:30px}.crm-header{margin-bottom:30px}.crm-header h1{color:#333;font-size:2.5em;margin-bottom:10px}.crm-header p{color:#6c757d;font-size:1.1em}.crm-stats{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:30px}.stat-badge{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;padding:15px 20px;transition:all .3s ease}.stat-badge:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-3px)}.stat-badge.inconformado{border-color:#6c757d}.stat-badge.simpatizante{border-color:#0dcaf0}.stat-badge.apoiador{border-color:#198754}.stat-badge.cabo{border-color:#fd7e14}.stat-badge.multiplicador{border-color:#ffc107}.badge-label{color:#6c757d;font-size:.85em;font-weight:600;margin-bottom:5px;text-transform:uppercase}.badge-value{color:#333;font-size:1.8em;font-weight:700}.crm-filters{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:30px;padding:20px}.search-bar{flex:1 1;min-width:300px}.search-bar input{border:2px solid #e9ecef;border-radius:8px;font-size:1em;padding:12px 16px;transition:all .3s ease;width:100%}.search-bar input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-group{display:flex;gap:10px}.filter-group select{border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-size:1em;padding:12px 16px;transition:all .3s ease}.filter-group select:focus{border-color:#667eea;outline:none}.contacts-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:30px}.pagination{gap:20px;margin-top:30px}.pagination button{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s ease}.pagination button:hover:not(:disabled){background:#764ba2;transform:translateY(-2px)}.pagination button:disabled{cursor:not-allowed;opacity:.5}.page-info{color:#333;font-weight:600}.loading,.no-results{color:#6c757d;font-size:1.2em;padding:60px 20px;text-align:center}@media (max-width:768px){.crm-page{padding:20px}.crm-stats{justify-content:center}.crm-filters{flex-direction:column}.search-bar{min-width:100%}.filter-group{flex-direction:column}.filter-group select{width:100%}.contacts-grid{grid-template-columns:1fr}}.messages-page{margin:0 auto;max-width:1400px;padding:30px}.messages-header{margin-bottom:30px}.messages-header h1{color:#333;font-size:2.5em;margin-bottom:10px}.messages-header p{color:#6c757d;font-size:1.1em}.messages-tabs{display:flex;gap:10px;margin-bottom:30px}.tab{background:#fff;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-weight:600;padding:12px 30px;transition:all .3s ease}.tab:hover{border-color:#667eea}.tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.success-message{background:#198754}.error-message,.success-message{border-radius:8px;color:#fff;font-weight:600;margin-bottom:20px;padding:15px 20px;text-align:center}.error-message{background:#dc3545}.bulk-send,.individual-send{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.contacts-selector{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px}.contacts-selector h3{color:#667eea;font-size:1.3em;margin-bottom:20px}.selector-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.selector-actions{display:flex;gap:10px}.btn-link{background:none;border:none;color:#667eea;cursor:pointer;font-size:.9em;font-weight:600;text-decoration:underline}.btn-link:hover{color:#764ba2}.search-input{border:2px solid #e9ecef;border-radius:8px;font-size:1em;margin-bottom:15px;padding:12px 16px;transition:all .3s ease;width:100%}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.contacts-list{max-height:500px}.selected-check{color:#667eea;font-size:1.5em;font-weight:700}.message-composer{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;padding:25px}.message-composer h3{color:#667eea;font-size:1.3em;margin-bottom:20px}.templates-section{margin-bottom:20px}.templates-section label{color:#333;display:block;font-weight:600;margin-bottom:10px}.templates-list{display:flex;flex-wrap:wrap;gap:10px}.template-btn{background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;font-size:.9em;font-weight:600;padding:8px 16px;transition:all .3s ease}.template-btn:hover{background:#667eea;border-color:#667eea;color:#fff}.message-composer textarea{border:2px solid #e9ecef;border-radius:8px;font-family:inherit;font-size:1em;margin-bottom:20px;padding:15px;resize:vertical;transition:all .3s ease;width:100%}.message-composer textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.message-preview{background:#dcf8c6;border:2px solid #25d366;border-radius:8px;margin-bottom:20px;padding:20px}.message-preview h4{color:#25d366;font-size:.9em;margin-bottom:10px;text-transform:uppercase}.message-preview p{color:#333;line-height:1.6;white-space:pre-wrap}.btn-send{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1em;font-weight:700;padding:16px;transition:all .3s ease}.btn-send:hover:not(:disabled){box-shadow:0 10px 25px #667eea66;transform:translateY(-3px)}.btn-send:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.messages-page{padding:20px}.bulk-send,.individual-send{grid-template-columns:1fr}.contacts-selector{order:1}.message-composer{order:2}}.events-page{margin:0 auto;max-width:1400px;padding:30px}.events-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.events-header h1{color:#333;font-size:2.5em;margin-bottom:10px}.events-header p{color:#6c757d;font-size:1.1em}.btn-create{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1em;font-weight:700;padding:14px 28px;transition:all .3s ease}.btn-create:hover{box-shadow:0 10px 25px #667eea66;transform:translateY(-3px)}.events-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.event-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px;transition:all .3s ease}.event-card:hover{box-shadow:0 5px 20px #00000026;transform:translateY(-5px)}.event-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:15px}.event-header h3{color:#333;flex:1 1;font-size:1.4em}.event-status{border-radius:12px;font-size:.8em;font-weight:600;padding:6px 12px;text-transform:uppercase}.event-status.active{background:#198754;color:#fff}.event-status.inactive{background:#6c757d;color:#fff}.event-description{color:#6c757d;line-height:1.6;margin-bottom:20px}.event-details{background:#f8f9fa;border-radius:8px;display:flex;flex-direction:column;gap:10px;margin-bottom:20px;padding:15px}.event-detail{align-items:center;color:#333;display:flex;font-size:.95em;gap:10px}.detail-icon{font-size:1.2em}.event-stats{grid-gap:15px;background:#f8f9fa;border-radius:8px;display:grid;gap:15px;grid-template-columns:repeat(4,1fr);margin-bottom:20px;padding:15px}.event-stat{text-align:center}.event-stat .stat-value{color:#667eea;display:block;font-size:1.8em;font-weight:700}.event-stat .stat-label{color:#6c757d;font-size:.8em;font-weight:600;text-transform:uppercase}.event-actions{display:flex;gap:10px}.event-actions .btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-weight:600;padding:12px 16px;transition:all .3s ease}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268;transform:translateY(-2px)}.btn-primary:hover{box-shadow:0 5px 15px #667eea66}.no-events{border-radius:12px;color:#6c757d;font-size:1.2em;padding:60px 20px}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:15px;max-height:90vh;max-width:600px;overflow-y:auto;padding:40px;position:relative;width:100%}.modal-content.modal-invite{max-width:700px}.modal-close{background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.5em;height:40px;position:absolute;right:15px;top:15px;transition:all .3s ease;width:40px}.modal-close:hover{background:#bb2d3b;transform:rotate(90deg)}.modal-content h2{color:#667eea;font-size:1.8em;margin-bottom:10px}.modal-subtitle{color:#6c757d}.form-group,.modal-subtitle{margin-bottom:20px}.form-group label{color:#333;display:block;font-weight:600;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{border:2px solid #e9ecef;border-radius:8px;font-family:inherit;font-size:1em;padding:12px 16px;transition:all .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1em;font-weight:700;margin-top:10px;padding:16px;transition:all .3s ease;width:100%}.btn-submit:hover:not(:disabled){box-shadow:0 10px 25px #667eea66;transform:translateY(-3px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.contacts-list{border:2px solid #e9ecef;border-radius:8px;margin-bottom:20px;max-height:400px;overflow-y:auto}.contact-item{align-items:center;border-bottom:1px solid #e9ecef;cursor:pointer;display:flex;gap:12px;padding:15px;transition:all .3s ease}.contact-item:last-child{border-bottom:none}.contact-item:hover{background:#f8f9fa}.contact-item.selected{background:#e7f3ff;border-left:4px solid #667eea}.contact-item input[type=checkbox]{cursor:pointer;height:20px;width:20px}.contact-info{flex:1 1}.contact-name{color:#333;font-weight:600;margin-bottom:4px}.contact-details{color:#6c757d;font-size:.85em}@media (max-width:768px){.events-page{padding:20px}.events-header{align-items:flex-start;flex-direction:column;gap:20px}.btn-create{width:100%}.events-grid{grid-template-columns:1fr}.event-stats{grid-template-columns:repeat(2,1fr)}.form-row{grid-template-columns:1fr}}.territory-page{margin:0 auto;max-width:1400px;padding:30px}.territory-header{margin-bottom:30px}.territory-header h1{color:#333;font-size:2.5em;margin-bottom:10px}.territory-header p{color:#6c757d;font-size:1.1em}.cities-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-bottom:40px}.city-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px;transition:all .3s ease}.city-card:hover{box-shadow:0 5px 20px #00000026;transform:translateY(-5px)}.city-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.city-header h3{color:#333;font-size:1.5em}.forca-badge{border-radius:20px;color:#fff;font-size:.85em;font-weight:600;padding:6px 14px;text-transform:uppercase}.city-stats{grid-gap:15px;background:#f8f9fa;border-radius:8px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);margin-bottom:20px;padding:20px}.city-stat{text-align:center}.city-stat .stat-value{color:#667eea;display:block;font-size:1.8em;font-weight:700}.city-stat .stat-label{color:#6c757d;font-size:.8em;font-weight:600;text-transform:uppercase}.city-distribution{margin-bottom:20px}.city-distribution h4{color:#667eea;font-size:1.1em;margin-bottom:15px}.distribution-bars{display:flex;flex-direction:column;gap:10px}.distribution-item{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:120px 1fr 50px}.dist-label{color:#6c757d;font-size:.85em;font-weight:600}.dist-bar{background:#e9ecef;border-radius:10px;height:20px;overflow:hidden}.dist-fill{height:100%;transition:width .5s ease}.dist-fill.inconformado{background:#6c757d}.dist-fill.simpatizante{background:#0dcaf0}.dist-fill.apoiador{background:#198754}.dist-fill.cabo{background:#fd7e14}.dist-fill.multiplicador{background:#ffc107}.dist-value{color:#333;font-size:.9em;font-weight:600;text-align:right}.btn-expand{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px;transition:all .3s ease;width:100%}.btn-expand:hover{background:#764ba2;transform:translateY(-2px)}.neighborhoods-section{animation:fadeIn .5s ease;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.neighborhoods-header{align-items:center;border-bottom:3px solid #667eea;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:20px}.neighborhoods-header h2{color:#667eea;font-size:1.8em}.btn-close{background:#6c757d;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s ease}.btn-close:hover{background:#5a6268}.neighborhoods-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.neighborhood-card{background:#f8f9fa;border:2px solid #e9ecef;border-radius:10px;padding:20px;transition:all .3s ease}.neighborhood-card:hover{border-color:#667eea;box-shadow:0 3px 10px #667eea26}.neighborhood-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.neighborhood-header h4{color:#333;font-size:1.2em}.neighborhood-count{background:#667eea;border-radius:12px;color:#fff;font-size:.85em;font-weight:600;padding:4px 10px}.neighborhood-leader{align-items:center;background:#fff;border:2px solid #198754;border-radius:8px;display:flex;gap:12px;padding:15px}.leader-icon{font-size:1.8em}.leader-label{color:#6c757d;font-size:.8em;font-weight:600;text-transform:uppercase}.leader-name{color:#333;font-size:1em;font-weight:600}.no-leader{align-items:center;background:#fff3cd;border:2px solid #ffc107;border-radius:8px;color:#856404;display:flex;font-weight:600;gap:10px;padding:15px}.warning-icon{font-size:1.5em}.loading{color:#6c757d;padding:60px 20px}@media (max-width:768px){.territory-page{padding:20px}.cities-grid,.neighborhoods-grid{grid-template-columns:1fr}.neighborhoods-header{align-items:flex-start;flex-direction:column;gap:15px}.btn-close{width:100%}}.timeline{margin:20px 0;padding-left:50px;position:relative}.timeline:before{background:linear-gradient(180deg,#667eea,#764ba2);bottom:0;content:"";left:20px;position:absolute;top:0;width:3px}.timeline-item{background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;margin-bottom:20px;padding:15px;position:relative;transition:all .3s ease}.timeline-item:hover{border-color:#667eea;box-shadow:0 3px 10px #667eea26;transform:translateX(5px)}.timeline-icon{align-items:center;background:#fff;border:3px solid #667eea;border-radius:50%;box-shadow:0 0 0 3px #667eea33;display:flex;font-size:.9em;height:28px;justify-content:center;left:-38px;position:absolute;top:18px;width:28px}.timeline-content{display:flex;flex-direction:column;gap:5px}.timeline-header{align-items:center;display:flex;justify-content:space-between}.timeline-description{color:#333;font-size:.95em;font-weight:600}.timeline-points{background:#198754;border-radius:12px;color:#fff;font-size:.85em;font-weight:600;padding:4px 10px}.timeline-date{color:#6c757d;font-size:.85em}.timeline-page{background:#f8f9fa;min-height:100vh}.timeline-header-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:40px}.btn-back{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:1em;font-weight:600;margin-bottom:30px;padding:12px 24px;transition:all .3s ease}.btn-back:hover{background:#ffffff4d;transform:translateX(-5px)}.contact-info-header{align-items:center;display:flex;gap:30px;margin-bottom:40px}.contact-avatar-large{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff4d;border:4px solid #fff;border-radius:50%;box-shadow:0 10px 30px #0003;display:flex;flex-shrink:0;font-size:3em;font-weight:700;height:120px;justify-content:center;width:120px}.contact-details h1{font-size:2.5em;font-weight:700;margin-bottom:10px}.contact-location,.contact-phone{font-size:1.1em;margin:5px 0;opacity:.95}.contact-badges{margin-top:15px}.stats-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-box{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:15px;display:flex;gap:20px;padding:25px;transition:all .3s ease}.stat-box:hover{background:#ffffff4d;transform:translateY(-5px)}.stat-icon{font-size:3em;opacity:.9}.stat-content{flex:1 1}.stat-box .stat-value{font-size:2.5em;font-weight:700;line-height:1;margin-bottom:5px}.stat-box .stat-label{font-size:.95em;font-weight:600;letter-spacing:.5px;opacity:.9;text-transform:uppercase}.timeline-content-section{margin:-40px auto 0;max-width:1200px;padding:0 40px 60px;position:relative}.timeline-title{background:#fff;border-bottom:3px solid #667eea;border-radius:15px 15px 0 0;box-shadow:0 5px 20px #0000001a;padding:40px}.timeline-title h2{color:#667eea;font-size:2em;margin-bottom:10px}.timeline-description{color:#6c757d;font-size:1.1em}.timeline-content-section .timeline{background:#fff;box-shadow:0 5px 20px #0000001a;padding:40px}.pagination{align-items:center;background:#fff;border-radius:0 0 15px 15px;box-shadow:0 5px 20px #0000001a;display:flex;gap:25px;justify-content:center;padding:30px 40px}.pagination .btn{background:#fff;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;font-size:1em;font-weight:600;padding:12px 24px;transition:all .3s ease}.pagination .btn:hover:not(:disabled){background:#667eea;box-shadow:0 5px 15px #667eea4d;color:#fff;transform:translateY(-2px)}.pagination .btn:disabled{cursor:not-allowed;opacity:.3}.pagination .page-info{color:#333;font-size:1.05em;font-weight:600}.no-events{background:#fff;border-radius:0 0 15px 15px;box-shadow:0 5px 20px #0000001a;padding:80px 40px;text-align:center}.no-events-icon{font-size:5em;margin-bottom:20px;opacity:.5}.no-events h3{color:#333;font-size:1.8em;margin-bottom:10px}.no-events p{color:#6c757d;font-size:1.1em}.loading{background:#fff;border-radius:15px;box-shadow:0 5px 20px #0000001a;color:#667eea;font-size:1.2em;font-weight:600;padding:60px 40px;text-align:center}@media (max-width:768px){.timeline-header-section{padding:20px}.contact-info-header{flex-direction:column;gap:20px;text-align:center}.contact-avatar-large{font-size:2.5em;height:100px;width:100px}.contact-details h1{font-size:1.8em}.stats-summary{gap:15px;grid-template-columns:repeat(2,1fr)}.stat-box{flex-direction:column;padding:20px;text-align:center}.stat-icon{font-size:2.5em}.stat-box .stat-value{font-size:2em}.timeline-content-section{margin-top:-30px;padding:0 20px 40px}.timeline-title{padding:30px 20px}.timeline-title h2{font-size:1.5em}.pagination,.timeline-content-section .timeline{padding:20px}.pagination{flex-direction:column;gap:15px}.pagination .btn{width:100%}.page-info{font-size:.95em}}.whatsapp-connect-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.connect-container{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:600px;padding:50px;text-align:center;width:100%}.connect-header h1{color:#667eea;font-size:2.5em;margin-bottom:10px}.connect-header p{color:#666;font-size:1.1em;margin-bottom:40px}.qrcode-container{align-items:center;display:flex;flex-direction:column;gap:30px}.qrcode-image{border:5px solid #667eea;border-radius:15px;box-shadow:0 10px 30px #667eea4d;max-width:400px;width:100%}.status-message{color:#667eea;font-size:1.2em;font-weight:600}.instructions{background:#f8f9fa;border-radius:12px;padding:25px;text-align:left;width:100%}.instructions h3{color:#667eea;font-size:1.3em;margin-bottom:15px}.instructions ol{line-height:2;padding-left:20px}.instructions li{color:#333;font-size:1.05em}.connected-status{padding:40px}.success-icon{font-size:5em;margin-bottom:20px}.connected-status h2{color:#28a745;font-size:2em;margin-bottom:15px}.connected-status p{color:#666;font-size:1.1em;margin-bottom:30px}.btn{border:none;border-radius:8px;cursor:pointer;font-size:1.1em;font-weight:600;padding:15px 40px;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{box-shadow:0 10px 25px #667eea66;transform:translateY(-2px)}.loading-status{padding:60px}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:60px;margin:0 auto 20px;width:60px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-status p{color:#667eea;font-size:1.2em;font-weight:600}@media (max-width:768px){.connect-container{padding:30px 20px}.connect-header h1{font-size:1.8em}.qrcode-image{max-width:100%}.instructions{padding:20px}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.App{min-height:100vh}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#667eea;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#764ba2}
/*# sourceMappingURL=main.eef905ba.css.map*/