.lgpd-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.lgpd-modal-content{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.lgpd-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--color-gray-200)}.lgpd-modal-header h2{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0}.lgpd-modal-close{background:none;border:none;font-size:2rem;color:var(--color-text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:background .2s}.lgpd-modal-close:hover:not(:disabled){background:var(--color-gray-100)}.lgpd-modal-close:disabled{opacity:.5;cursor:not-allowed}.lgpd-modal-body{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.lgpd-text-container{margin-bottom:var(--spacing-lg)}.lgpd-text-container h3{font-size:1.25rem;font-weight:600;color:var(--color-primary-700);margin-bottom:var(--spacing-md)}.lgpd-text-container p{font-size:.9375rem;line-height:1.6;color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.lgpd-text-container ul{margin-left:var(--spacing-lg);margin-bottom:var(--spacing-md)}.lgpd-text-container li{font-size:.9375rem;line-height:1.6;color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.lgpd-acceptance{padding:var(--spacing-md);background:var(--color-primary-50);border-radius:var(--radius-md);border:1px solid var(--color-primary-200)}.lgpd-checkbox-label{display:flex;align-items:flex-start;gap:var(--spacing-sm);cursor:pointer}.lgpd-checkbox-label input[type=checkbox]{margin-top:4px;width:20px;height:20px;cursor:pointer;flex-shrink:0}.lgpd-checkbox-label span{font-size:.9375rem;line-height:1.5;color:var(--color-text-primary)}.lgpd-modal-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-gray-200);display:flex;justify-content:flex-end}.lgpd-button-accept{padding:var(--spacing-sm) var(--spacing-xl);background:var(--color-primary-600);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.lgpd-button-accept:hover:not(:disabled){background:var(--color-primary-700)}.lgpd-button-accept:disabled{background:var(--color-gray-400);cursor:not-allowed}@media (max-width: 768px){.lgpd-modal-content{max-height:95vh}.lgpd-modal-header,.lgpd-modal-body,.lgpd-modal-footer{padding:var(--spacing-md)}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6b3fa0f2,#4a1f7af2);padding:var(--spacing-lg)}.login-card{position:relative;background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-2xl);width:100%;max-width:420px;box-shadow:0 10px 40px #0000001a}.login-card{position:relative;background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-2xl);width:100%;max-width:420px;box-shadow:0 10px 40px #0000001a,0 0 0 1px #fcd77c4d inset}.login-title{font-size:2.5rem;font-weight:700;color:var(--color-primary-700);text-align:center;margin-bottom:var(--spacing-xs)}.login-illustration{width:100%;max-width:220px;margin:0 auto var(--spacing-md)}.login-illustration img{width:100%;border-radius:var(--radius-lg);object-fit:cover;box-shadow:0 8px 24px #5b2d8d33}.login-slogan{text-align:center;font-size:.95rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xl);line-height:1.5}.login-slogan span{display:block;font-weight:600;color:var(--color-primary-600)}.user-type-selection{margin-bottom:var(--spacing-xl)}.user-type-selection h3{font-size:1rem;color:var(--color-text-primary);margin-bottom:var(--spacing-md);text-align:center}.user-type-options{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center}.user-type-button{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-gray-300);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:all .2s;text-align:left;flex:1;min-width:180px}.user-type-button:hover{border-color:var(--color-primary-400);background:var(--color-primary-50)}.user-type-button.active{border-color:var(--color-primary-600);background:var(--color-primary-100)}.user-type-icon{font-size:1.5rem}.user-type-label{font-size:1rem;font-weight:500;color:var(--color-text-primary)}.login-form{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.form-group input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:1rem;transition:border-color .2s}.form-group input:focus{outline:none;border-color:var(--color-primary-600)}.form-group input:disabled{background:var(--color-gray-100);cursor:not-allowed}.password-input-container{position:relative}.password-input-container input{width:100%;padding-right:40px}.password-toggle{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;color:var(--color-gray-600);transition:color .2s}.password-toggle:hover{color:var(--color-primary-600)}.password-toggle:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px;border-radius:var(--radius-full)}.password-toggle svg{width:22px;height:22px}.login-button{padding:var(--spacing-md);background:var(--color-primary-600);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s;margin-top:var(--spacing-sm)}.login-button:hover:not(:disabled){background:var(--color-primary-700)}.login-button:disabled{background:var(--color-gray-400);cursor:not-allowed}.forgot-password-button{background:none;border:none;color:var(--color-primary-600);font-size:.875rem;cursor:pointer;text-decoration:underline;margin-top:var(--spacing-xs)}.forgot-password-button:hover{color:var(--color-primary-700)}.error-message{padding:var(--spacing-sm) var(--spacing-md);background:#fee2e2;color:var(--color-error);border-radius:var(--radius-md);font-size:.875rem;text-align:center}@media (max-width: 768px){.login-container{padding:var(--spacing-sm)}.login-card{padding:var(--spacing-lg);max-width:100%}.login-illustration{max-width:220px}.login-title{font-size:2rem}.login-slogan{font-size:.875rem;margin-bottom:var(--spacing-lg)}.user-type-selection{margin-bottom:var(--spacing-lg)}.user-type-selection h3{font-size:.875rem}.user-type-options{flex-direction:column;gap:var(--spacing-sm)}.user-type-button{padding:var(--spacing-sm) var(--spacing-md);min-height:var(--touch-target-min)}.user-type-icon{font-size:1.25rem}.user-type-label{font-size:.875rem}.form-group input{padding:var(--spacing-sm) var(--spacing-md);font-size:1rem;min-height:var(--touch-target-min)}.login-button{min-height:var(--touch-target-min);padding:var(--spacing-sm) var(--spacing-md)}.error-message{font-size:.8125rem}}@media (max-width: 360px){.login-title{font-size:1.75rem}.user-type-button{padding:var(--spacing-sm)}.user-type-label{font-size:.8125rem}}.impact-dashboard{min-height:100vh;display:flex;flex-direction:column;gap:var(--spacing-2xl);padding-bottom:var(--spacing-3xl)}.hero-section{background:linear-gradient(135deg,#6b3fa0,#4a1f7a);color:var(--color-text-inverse);padding:var(--spacing-3xl) var(--spacing-lg)}.hero-text{max-width:960px;margin:0 auto;text-align:center;word-break:break-word}.hero-text h1{font-size:clamp(2rem,3vw,2.6rem);margin-bottom:var(--spacing-md);line-height:1.2}.hero-text .subtitle{font-size:1.1rem;color:#ffffffd9}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-weight:600;font-size:.85rem;color:#fcd77c;margin-bottom:var(--spacing-sm)}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:center;margin-top:var(--spacing-xl)}.secondary{background:transparent;color:var(--color-text-inverse);border:1px solid rgba(255,255,255,.5)}.metrics-grid{margin-top:-80px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-md);padding:0 var(--spacing-lg)}.metric-card{background:#fff;border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:0 10px 25px #00000014}.metric-card.loading{text-align:center;color:var(--color-text-secondary)}.metric-label{font-size:.9rem;color:var(--color-text-secondary);display:block}.metric-helper{font-size:.8rem;font-weight:400;color:var(--color-text-secondary);opacity:.8}.metric-value{display:block;font-size:2.5rem;margin:var(--spacing-sm) 0;color:var(--color-primary-700)}.chart-section{padding:0 var(--spacing-lg)}.chart-header{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.chart-wrapper{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:0 10px 25px #00000014}.chart-loading{padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary)}.projects-section{padding:0 var(--spacing-lg)}.projects-card{background:var(--color-primary-50);border-radius:var(--radius-lg);padding:var(--spacing-xl)}.projects-card h3{color:var(--color-primary-700);margin-bottom:var(--spacing-md)}.projects-card ul{margin-top:var(--spacing-md);padding-left:var(--spacing-lg);color:var(--color-text-secondary)}@media (max-width: 768px){.metrics-grid{margin-top:-60px;padding:0 var(--spacing-md)}.chart-section,.projects-section{padding:0 var(--spacing-md)}.chart-header{flex-direction:column;align-items:flex-start}}.contact-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.contact-modal-content{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.contact-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--color-gray-200)}.contact-modal-header h2{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0}.contact-modal-close{background:none;border:none;font-size:2rem;color:var(--color-text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:background .2s}.contact-modal-close:hover:not(:disabled){background:var(--color-gray-100)}.contact-modal-close:disabled{opacity:.5;cursor:not-allowed}.contact-modal-form{flex:1;overflow-y:auto;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.contact-modal-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.contact-modal-form label{font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.contact-modal-form input,.contact-modal-form textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:1rem;font-family:inherit;transition:border-color .2s;width:100%}.contact-modal-form input:focus,.contact-modal-form textarea:focus{outline:none;border-color:var(--color-primary-600)}.contact-modal-form input:disabled,.contact-modal-form textarea:disabled{background:var(--color-gray-100);cursor:not-allowed}.contact-modal-form textarea{resize:vertical;min-height:100px}.contact-modal-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-gray-200);display:flex;justify-content:flex-end;gap:var(--spacing-md)}.btn-primary,.btn-secondary{padding:var(--spacing-sm) var(--spacing-xl);border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:var(--color-primary-600);color:var(--color-text-inverse)}.btn-primary:hover:not(:disabled){background:var(--color-primary-700)}.btn-primary:disabled{background:var(--color-gray-400);cursor:not-allowed}.btn-secondary{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-gray-300)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-400)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.contact-modal-content{max-height:95vh}.contact-modal-header,.contact-modal-form{padding:var(--spacing-md)}.contact-modal-footer{padding:var(--spacing-md);flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.initiative-page{position:relative;display:flex;flex-direction:column;gap:var(--spacing-2xl);padding-bottom:var(--spacing-3xl);background:var(--color-gray-50)}.initiative-hero{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);padding:var(--spacing-xl) var(--spacing-lg) calc(var(--spacing-xl)) var(--spacing-lg);background:linear-gradient(135deg,#6b3fa0,#4a1f7a);color:var(--color-text-inverse);align-items:stretch;z-index:1}.hero-left{display:flex;flex-direction:column;gap:var(--spacing-md)}.brasao-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);margin-left:var(--spacing-xl)}.initiative-brasao{width:90px;height:auto;border-radius:3px}.subtitleBrasao{font-size:.7rem;color:#ffffffe6;margin:0;padding:0;line-height:1.4;max-width:250px;text-align:center}.hero-text{max-width:540px;word-break:break-word;position:relative}.hero-text h1{font-size:clamp(1.85rem,2.5vw,2.2rem);margin-bottom:var(--spacing-xs);line-height:1.2}.hero-text p{color:#ffffffd9;line-height:1.45;margin-bottom:var(--spacing-sm)}.hero-media{display:flex;align-items:stretch;justify-content:flex-end;padding:0;margin:calc(-1 * var(--spacing-lg)) calc(-1 * var(--spacing-lg)) calc(-1 * var(--spacing-lg)) 0;min-height:390px}.hero-media img{width:110%;max-width:560px;height:100%;object-fit:cover;border-radius:var(--radius-lg);box-shadow:0 15px 35px #0000004d;clip-path:inset(0)}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.8rem;color:#fcd77c;margin-bottom:var(--spacing-sm);margin-top:0;padding-top:0}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.cta,.secondary{border:none;border-radius:var(--radius-full);padding:var(--spacing-sm) var(--spacing-xl);font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.cta{background:#fcd77c;color:#4a1f7a;box-shadow:0 10px 20px #0003}.cta:hover{transform:translateY(-2px)}.cta.ghost{background:transparent;color:var(--color-primary-700);border:1px solid var(--color-primary-300)}.secondary{background:transparent;color:var(--color-text-inverse);border:1px solid rgba(255,255,255,.6)}.stats-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--spacing-lg);padding:0 var(--spacing-lg);margin-top:-20px;position:relative;z-index:10}.stat-card{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:0 15px 35px #00000026;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #0003}.stat-card strong{display:block;color:var(--color-primary-700);font-size:1.3rem;margin-bottom:var(--spacing-sm)}.pillars-section{padding:0 var(--spacing-lg);margin-top:var(--spacing-3xl);max-width:1400px;margin-left:auto;margin-right:auto}.pillars-section header{max-width:900px;margin-bottom:var(--spacing-xl)}.pillars-section header h2{color:var(--color-primary-700);font-size:1.8rem;margin-bottom:var(--spacing-sm)}.pillars-section header p{color:var(--color-text-secondary);line-height:1.6}.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xl);max-width:100%}.pillar-card{background:var(--color-primary-50);border-radius:var(--radius-lg);padding:var(--spacing-xl);min-height:200px;display:flex;flex-direction:column}.pillar-card h3{color:var(--color-primary-700);font-size:1.3rem;margin-bottom:var(--spacing-md);font-weight:600}.pillar-card p{color:var(--color-text-secondary);line-height:1.7;margin:0;font-size:1.05rem;flex:1}.prefeitura-pillar-card{grid-column:1 / -1}.prefeitura-pillar-card strong{color:var(--color-primary-700);font-weight:600}.app-features-section{padding:0 var(--spacing-lg);margin-top:var(--spacing-3xl)}.app-features-section header{max-width:720px;margin-bottom:var(--spacing-lg)}.app-features-section header h2{color:var(--color-primary-700);font-size:1.8rem;margin-bottom:var(--spacing-sm)}.app-features-section header p{color:var(--color-text-secondary);line-height:1.6}.app-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--spacing-lg)}.app-feature-card{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:0 15px 30px #00000014;display:flex;flex-direction:column;gap:var(--spacing-sm);border-top:4px solid var(--color-primary-400)}.app-feature-card h3{color:var(--color-primary-700);font-size:1.2rem;margin:0}.app-feature-card p{color:var(--color-text-secondary);line-height:1.5;margin:0}.objective-section{padding:0 var(--spacing-lg);margin-top:var(--spacing-3xl)}.objective-card{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:0 15px 30px #00000014;max-width:900px;margin:0 auto}.objective-card h2{color:var(--color-primary-700);font-size:1.8rem;margin-bottom:var(--spacing-md)}.objective-card p{color:var(--color-text-secondary);line-height:1.6;font-size:1.05rem}.objective-card strong{color:var(--color-primary-700);font-weight:600}.results-section{padding:0 var(--spacing-lg);margin-top:var(--spacing-3xl)}.results-section header{max-width:720px;margin-bottom:var(--spacing-lg)}.results-section header h2{color:var(--color-primary-700);font-size:1.8rem;margin-bottom:var(--spacing-sm)}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--spacing-lg)}.result-card{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:0 15px 30px #00000014}.result-card h3{color:var(--color-primary-700);font-size:1.2rem;margin-bottom:var(--spacing-sm)}.result-card p{color:var(--color-text-secondary);line-height:1.6}.process-section{padding:0 var(--spacing-lg);margin-top:var(--spacing-3xl)}.process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg)}.process-card{background:var(--color-primary-50);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:0 10px 25px #00000014}.process-card h3{color:var(--color-primary-700);font-size:1.3rem;margin-bottom:var(--spacing-md)}.process-card ul{margin:0;padding-left:var(--spacing-lg);color:var(--color-text-secondary);line-height:1.8}.process-card li{margin-bottom:var(--spacing-sm)}.partners-section{padding:0 var(--spacing-lg);display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-lg);margin-top:var(--spacing-3xl)}.partners-card,.contact-card{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:0 10px 25px #00000014}.partners-card h3{color:var(--color-primary-700);font-size:1.4rem;margin-bottom:var(--spacing-md)}.partners-card p{color:var(--color-text-secondary);line-height:1.6}.partners-card ul{margin:var(--spacing-md) 0 var(--spacing-lg);padding-left:var(--spacing-lg);color:var(--color-text-secondary);line-height:1.8}.contact-card h4{color:var(--color-primary-700);font-size:1.2rem;margin-bottom:var(--spacing-sm)}.contact-card p{color:var(--color-text-secondary);line-height:1.6}.contact-card a{color:var(--color-primary-700);font-weight:600}.apk-downloads{margin:var(--spacing-md) 0;padding:var(--spacing-md);background:var(--color-primary-50);border-radius:var(--radius-md)}.apk-downloads h5{margin:0 0 var(--spacing-sm) 0;color:var(--color-primary-700);font-size:1rem}.apk-links{display:flex;flex-direction:column;gap:var(--spacing-sm)}.apk-link{display:inline-block;padding:var(--spacing-sm) var(--spacing-md);background:#fff;border:1px solid var(--color-primary-300);border-radius:var(--radius-md);color:var(--color-primary-700);text-decoration:none;font-weight:600;transition:background .2s,transform .2s}.apk-link:hover{background:var(--color-primary-100);transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.apk-showcase{display:flex;gap:var(--spacing-lg);align-items:center;margin:var(--spacing-lg) 0}.apk-preview{flex:1;display:flex;justify-content:center;align-items:center}.apk-preview img{width:100%;max-width:220px;border-radius:var(--radius-lg);box-shadow:0 12px 30px #0000001f}.apk-showcase .apk-downloads{flex:1;margin:0}.prefeitura-support-section{padding:0 var(--spacing-lg);margin-top:var(--spacing-3xl);margin-bottom:var(--spacing-2xl)}.prefeitura-support-card{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:0 15px 30px #00000014;max-width:900px;margin:0 auto}.prefeitura-support-header{margin-bottom:var(--spacing-lg)}.prefeitura-support-header h2{color:var(--color-primary-700);font-size:1.8rem;margin:0;text-align:center}.prefeitura-support-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.prefeitura-support-intro{font-size:1.05rem;line-height:1.7;color:var(--color-text-secondary);text-align:center;margin:0}.prefeitura-support-highlight{background:var(--color-gray-50);border-left:4px solid var(--color-primary-600);border-radius:var(--radius-md);padding:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-md)}.prefeitura-support-highlight p{font-size:1.05rem;line-height:1.8;color:var(--color-text-secondary);margin:0}.prefeitura-support-highlight strong{color:var(--color-primary-700);font-weight:600}.partners-section-public{padding:0 var(--spacing-lg);margin-top:var(--spacing-3xl)}.partners-section-public header{text-align:center;max-width:800px;margin:0 auto var(--spacing-xl)}.partners-section-public header h2{color:var(--color-primary-700);font-size:2rem;margin-bottom:var(--spacing-sm)}.partners-section-public header p{color:var(--color-text-secondary);font-size:1.1rem;line-height:1.6}.partners-grid-public{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.partner-card-public{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:0 4px 12px #00000014;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid var(--color-gray-200)}.partner-card-public:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001f;border-color:var(--color-primary-200)}.partner-logo-container{width:100%;min-height:140px;display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-gray-50);border-radius:var(--radius-md);overflow:hidden}.partner-logo{max-width:100%;max-height:120px;width:auto;height:auto;object-fit:contain;display:block}.partner-card-fixed{border:2px solid var(--color-primary-300);background:linear-gradient(135deg,var(--color-primary-50) 0%,white 100%);box-shadow:0 6px 16px #6b3fa026;position:relative;overflow:hidden}.partner-card-fixed:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary-600),var(--color-primary-400))}.partner-card-fixed:hover{transform:translateY(-8px);box-shadow:0 12px 24px #6b3fa033;border-color:var(--color-primary-400)}.partner-logo-placeholder{font-size:4rem;color:var(--color-primary-400);display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:120px}.partner-card-fixed .partner-logo-container{background:#fff;border:1px solid var(--color-primary-100);border-radius:var(--radius-md);padding:var(--spacing-lg);min-height:160px;display:flex;align-items:center;justify-content:center}.partner-card-fixed .partner-logo{max-width:100%;max-height:140px;width:auto;height:auto;object-fit:contain;display:block;margin:0 auto}.prefeitura-logo-container{min-height:180px;padding:var(--spacing-xl)}.prefeitura-logo{max-width:100%;max-height:160px;width:auto;height:auto;object-fit:contain;object-position:center}.partner-card-fixed .partner-content h3{color:var(--color-primary-700);font-weight:700}.partner-card-fixed .partner-slogan-public{color:var(--color-primary-600);font-weight:500}.partner-content{width:100%}.partner-content h3{color:var(--color-primary-700);font-size:1.3rem;margin:0 0 var(--spacing-sm) 0}.partner-slogan-public{color:var(--color-text-secondary);font-size:1rem;line-height:1.6;margin:0 0 var(--spacing-md) 0}.partner-link{color:var(--color-primary-600);text-decoration:none;font-weight:600;font-size:.95rem;display:inline-block;margin-top:var(--spacing-xs);transition:color .2s}.partner-link:hover{color:var(--color-primary-700);text-decoration:underline}.initiative-footer{padding:0 var(--spacing-lg);color:var(--color-text-secondary);font-size:.85rem;margin-top:var(--spacing-3xl)}@media (max-width: 768px){.initiative-hero{padding:var(--spacing-2xl) var(--spacing-md);grid-template-columns:1fr;gap:var(--spacing-lg)}.hero-left{order:1}.hero-media{order:0;margin:0;justify-content:center;min-height:auto}.hero-media img{max-width:100%;max-height:360px;object-fit:cover}.brasao-container{align-items:center;text-align:center}.hero-text{text-align:center}.hero-actions{justify-content:center}.subtitleBrasao{text-align:center;max-width:100%}.stats-section{margin-top:-20px;padding:0 var(--spacing-md)}.initiative-hero{padding-bottom:calc(var(--spacing-lg) + 30px);padding-top:var(--spacing-xl)}.stats-section,.pillars-section,.app-features-section,.objective-section,.results-section,.process-section,.partners-section,.initiative-footer{padding:0 var(--spacing-md)}.pillars-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.pillar-card{min-height:auto;padding:var(--spacing-lg)}.partners-section{grid-template-columns:1fr}.apk-links{gap:var(--spacing-xs)}.apk-link{font-size:.9rem;padding:var(--spacing-xs) var(--spacing-sm)}.apk-showcase{flex-direction:column;align-items:stretch}.apk-preview img{max-width:260px}.prefeitura-support-section{padding:0 var(--spacing-md);margin-top:var(--spacing-2xl);margin-bottom:var(--spacing-xl)}.prefeitura-support-card{padding:var(--spacing-lg)}.prefeitura-support-header h2{font-size:1.5rem}.prefeitura-support-intro{font-size:1rem}.prefeitura-support-highlight{padding:var(--spacing-lg)}.prefeitura-support-highlight p{font-size:.95rem}.partners-section-public{padding:0 var(--spacing-md)}.partners-grid-public{grid-template-columns:1fr}}.unauthorized-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-background);padding:var(--spacing-lg)}.unauthorized-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-3xl);max-width:500px;width:100%;text-align:center;box-shadow:0 4px 12px #0000001a}.unauthorized-icon{font-size:4rem;margin-bottom:var(--spacing-lg)}.unauthorized-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-error);margin-bottom:var(--spacing-md)}.unauthorized-message{font-size:var(--font-size-md);color:var(--color-text-secondary);margin-bottom:var(--spacing-xl);line-height:1.6}.unauthorized-info{background:var(--color-gray-100);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-xl)}.unauthorized-info p{margin:0;color:var(--color-text-primary);font-size:var(--font-size-sm)}.unauthorized-button{padding:var(--spacing-md) var(--spacing-xl);background:var(--color-primary-600);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background .2s;min-height:var(--touch-target-min)}.unauthorized-button:hover{background:var(--color-primary-700)}@media (max-width: 768px){.unauthorized-container{padding:var(--spacing-md)}.unauthorized-card{padding:var(--spacing-xl)}.unauthorized-icon{font-size:3rem}.unauthorized-title{font-size:var(--font-size-2xl)}.unauthorized-message{font-size:var(--font-size-sm)}}.tabs-navigation{background:var(--color-surface);border-top:1px solid var(--color-gray-200);position:sticky;bottom:0;z-index:100;box-shadow:0 -2px 8px #0000001a}.tabs-container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-around;align-items:center;padding:var(--spacing-sm) 0}.tab-button{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);text-decoration:none;color:var(--color-text-secondary);transition:color .2s;border-radius:var(--radius-md);min-width:80px}.tab-button:hover{color:var(--color-primary-600);background:var(--color-primary-50)}.tab-button.active{color:var(--color-primary-600)}.tab-icon{font-size:1.5rem}.tab-label{font-size:.75rem;font-weight:500}@media (min-width: 1024px){.tabs-navigation{border-top:none;border-bottom:1px solid var(--color-gray-200);position:static;box-shadow:none}.tabs-container{justify-content:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg)}.tab-button{flex-direction:row;gap:var(--spacing-sm);min-width:auto;padding:var(--spacing-sm) var(--spacing-md)}.tab-icon{font-size:1.25rem}.tab-label{font-size:.875rem}}.main-layout{min-height:100vh;display:flex;flex-direction:column}.main-header{background:var(--color-primary-700);color:var(--color-text-inverse);padding:var(--spacing-md) var(--spacing-lg);box-shadow:0 2px 4px #0000001a}.header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-lg)}.header-brand{display:flex;flex-direction:column;gap:var(--spacing-xs)}.header-title{font-size:1.5rem;font-weight:700;margin:0}.header-slogan{font-size:.9rem;color:#ffffffd9;margin:0;line-height:1.4;max-width:420px}.header-slogan span{display:block;font-weight:600;color:#fcd77c}.header-actions{display:flex;align-items:center;gap:var(--spacing-md)}.header-email{font-size:.875rem;color:var(--color-text-inverse);opacity:.9}.logout-button{padding:var(--spacing-xs) var(--spacing-md);background:#fff3;color:var(--color-text-inverse);border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.logout-button:hover{background:#ffffff4d}.main-content{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:var(--spacing-lg)}@media (max-width: 768px){.header-content{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.header-title{font-size:1.25rem}.header-slogan{font-size:.85rem}.header-actions{width:100%;justify-content:space-between;gap:var(--spacing-sm)}.header-email{font-size:.75rem}.main-content{padding:var(--spacing-md);padding-bottom:calc(70px + var(--spacing-md))}.logout-button{padding:var(--spacing-xs) var(--spacing-sm);font-size:.75rem}}@media (min-width: 769px) and (max-width: 1024px){.header-email{font-size:.75rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-content{padding:var(--spacing-lg)}}.hamburger-menu{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:var(--spacing-xs)}.hamburger-menu span{width:24px;height:2px;background:var(--color-text-inverse);border-radius:2px;transition:all .3s}@media (max-width: 768px){.hamburger-menu{display:flex}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-xs);min-height:160px}.stat-icon{font-size:clamp(2rem,6vw,2.5rem);margin-bottom:var(--spacing-sm)}.stat-number{font-size:clamp(1.75rem,8vw,2.25rem);font-weight:700;color:var(--color-primary-600);margin-bottom:var(--spacing-xs);line-height:1.1;word-break:break-word}.chart-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:0 2px 8px #0000001a}@media (max-width: 768px){.dashboard-container{padding:var(--spacing-md)}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-sm)}.stat-card{padding:var(--spacing-md);min-height:140px}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}.stat-card{align-items:flex-start;text-align:left}}.search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:1rem;margin-bottom:var(--spacing-md)}.search-input:focus{outline:none;border-color:var(--color-primary-600)}.cities-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.city-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;transition:all .2s;text-align:left}.city-item:hover{background:var(--color-primary-50);border-color:var(--color-primary-400)}.city-item.selected{background:var(--color-primary-100);border-color:var(--color-primary-600)}.city-name{font-weight:500;color:var(--color-text-primary)}.city-state{font-size:.875rem;color:var(--color-text-secondary)}.empty-text{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}@media (max-width: 768px){.modal-content{max-height:90vh;max-width:95vw}.modal-header{padding:var(--spacing-md)}.modal-header h2{font-size:1.25rem}.modal-body{padding:var(--spacing-md)}.city-item{padding:var(--spacing-sm) var(--spacing-md)}}.consent-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.consent-modal-content{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.consent-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--color-gray-200)}.consent-modal-header h2{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0}.consent-modal-close{background:none;border:none;font-size:2rem;color:var(--color-text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:background .2s}.consent-modal-close:hover{background:var(--color-gray-100)}.consent-modal-body{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.consent-text-container{margin-bottom:var(--spacing-lg);background:var(--color-gray-50);border-radius:var(--radius-md);padding:var(--spacing-lg);border:1px solid var(--color-gray-200)}.consent-text{font-family:inherit;font-size:.9375rem;line-height:1.8;color:var(--color-text-primary);white-space:pre-wrap;word-wrap:break-word;margin:0;font-weight:500}.consent-acceptance{padding:var(--spacing-md);background:var(--color-primary-50);border-radius:var(--radius-md);border:1px solid var(--color-primary-200)}.consent-checkbox-label{display:flex;align-items:flex-start;gap:var(--spacing-sm);cursor:pointer}.consent-checkbox-label input[type=checkbox]{margin-top:4px;width:20px;height:20px;cursor:pointer;flex-shrink:0}.consent-checkbox-label span{font-size:.9375rem;line-height:1.5;color:var(--color-text-primary)}.consent-modal-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-gray-200);display:flex;justify-content:space-between;gap:var(--spacing-md)}.consent-button-reject{padding:var(--spacing-sm) var(--spacing-xl);background:var(--color-gray-200);color:var(--color-text-primary);border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.consent-button-reject:hover{background:var(--color-gray-300)}.consent-button-accept{padding:var(--spacing-sm) var(--spacing-xl);background:var(--color-primary-600);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.consent-button-accept:hover:not(:disabled){background:var(--color-primary-700)}.consent-button-accept:disabled{background:var(--color-gray-400);cursor:not-allowed}@media (max-width: 768px){.consent-modal-content{max-height:95vh}.consent-modal-header,.consent-modal-body{padding:var(--spacing-md)}.consent-modal-footer{padding:var(--spacing-md);flex-direction:column-reverse}.consent-button-reject,.consent-button-accept{width:100%}}.cadastro-container{padding:var(--spacing-lg);max-width:800px;margin:0 auto}.cadastro-title{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-xl)}.cadastro-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-section{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-label{font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.form-input,.form-textarea{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:1rem;font-family:inherit;transition:border-color .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary-600)}.form-textarea{resize:vertical;min-height:80px}.input-with-status{position:relative;display:flex;align-items:center}.input-with-status .form-input{flex:1;padding-right:40px}.status-icon{position:absolute;right:var(--spacing-sm);font-size:1.25rem}.status-icon.success{color:var(--color-success)}.status-icon.error{color:var(--color-error)}.cep-message{font-size:.875rem;padding:var(--spacing-sm);border-radius:var(--radius-sm);margin-top:var(--spacing-xs)}.cep-message.found{color:var(--color-success);background:#d1fae5;border:1px solid var(--color-success)}.cep-message.notFound{color:var(--color-error);background:#fee2e2;border:1px solid var(--color-error)}.cep-message.searching{color:var(--color-info);background:#dbeafe;border:1px solid var(--color-info)}.auto-filled-badge{font-size:.75rem;color:var(--color-success);font-weight:500;margin-left:var(--spacing-sm)}.address-input-group{display:flex;gap:var(--spacing-sm);align-items:flex-start}.address-input-group .form-textarea{flex:1}.search-address-button{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-600);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap;min-width:100px;display:flex;align-items:center;justify-content:center;height:fit-content;margin-top:0}.search-address-button:hover:not(:disabled){background:var(--color-primary-700)}.search-address-button:disabled{background:var(--color-gray-400);cursor:not-allowed;opacity:.7}.form-label{display:flex;align-items:center;flex-wrap:wrap}.city-selector-button{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;font-size:1rem;transition:border-color .2s}.city-selector-button:hover{border-color:var(--color-primary-600)}.city-selector-button .placeholder{color:var(--color-text-disabled)}.checkbox-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.submit-button{padding:var(--spacing-md) var(--spacing-xl);background:var(--color-primary-600);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s;margin-top:var(--spacing-md)}.submit-button:hover:not(:disabled){background:var(--color-primary-700)}.submit-button:disabled{background:var(--color-gray-400);cursor:not-allowed}.option-item{width:100%;padding:var(--spacing-md);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;text-align:left;transition:all .2s;margin-bottom:var(--spacing-xs)}.option-item:hover{background:var(--color-primary-50);border-color:var(--color-primary-400)}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.modal-content{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.modal-header h2{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0}.modal-close{background:none;border:none;font-size:2rem;color:var(--color-text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:background .2s}.modal-body{flex:1;overflow-y:auto;padding:var(--spacing-lg)}.address-search-modal{max-width:600px;max-height:80vh;display:flex;flex-direction:column}.address-search-modal .modal-body{display:flex;flex-direction:column;padding:var(--spacing-lg)}.address-search-input-container{position:relative;display:flex;align-items:center;margin-bottom:var(--spacing-md)}.address-search-input{flex:1;padding-right:40px}.clear-search-button{position:absolute;right:var(--spacing-sm);background:none;border:none;font-size:1.5rem;color:var(--color-gray-600);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.clear-search-button:hover{background:var(--color-gray-100)}.address-search-loading{padding:var(--spacing-lg);text-align:center;color:var(--color-gray-600)}.address-search-results{flex:1;overflow-y:auto;min-height:200px;max-height:400px}.address-results-list{list-style:none;padding:0;margin:0}.address-result-item{padding:var(--spacing-md);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);margin-bottom:var(--spacing-xs);cursor:pointer;transition:all .2s;background:var(--color-surface)}.address-result-item:hover{background:var(--color-primary-50);border-color:var(--color-primary-400);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.address-result-content{display:flex;align-items:flex-start;gap:var(--spacing-sm)}.address-result-icon{font-size:1.25rem;margin-top:2px}.address-result-text{flex:1}.address-result-main{font-weight:500;color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.address-result-cep{font-size:.875rem;color:var(--color-gray-600)}.address-search-empty{padding:var(--spacing-xl);text-align:center;color:var(--color-gray-600)}.address-search-empty-subtext{font-size:.875rem;margin-top:var(--spacing-sm);color:var(--color-gray-500)}@media (max-width: 768px){.cadastro-container{padding:var(--spacing-md)}.address-input-group{flex-direction:column}.search-address-button{width:100%;margin-top:var(--spacing-xs)}.address-search-modal{max-width:100%;max-height:90vh}}.candidatas-container{padding:2rem;max-width:1200px;margin:0 auto}.candidatas-header{margin-bottom:2rem}.candidatas-header h1{font-size:2rem;color:var(--color-text-primary);margin-bottom:.5rem}.candidatas-subtitle{color:var(--color-text-secondary);font-size:1rem}.candidatas-filters{margin-bottom:2rem;display:flex;flex-direction:column;gap:1rem}.search-box{width:100%}.filter-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.filter-btn.active{background:var(--color-primary-500);color:#fff;border-color:var(--color-primary-500)}.candidatas-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.candidate-card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:0 2px 4px #0000000d;transition:box-shadow .2s}.candidate-card:hover{box-shadow:0 4px 8px #0000001a}.candidate-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.candidate-header h3{font-size:1.25rem;color:var(--color-text-primary);margin:0;flex:1}.candidate-badges{display:flex;flex-wrap:wrap;gap:.5rem}.badge-viewed{background:var(--color-info);color:#fff}.candidate-info{margin-bottom:1rem}.info-label{font-weight:600;color:var(--color-text-secondary);min-width:140px}.candidate-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-gray-200)}.btn{padding:.5rem 1rem;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s;flex:1}.form-group input[type=text],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:1rem;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary-500)}.checkbox-group{display:flex;flex-direction:column;gap:.5rem}.checkbox-group label{display:flex;align-items:center;font-weight:400;cursor:pointer}.cep-message{margin-top:.5rem;font-size:.875rem;padding:.5rem;border-radius:var(--radius-md)}.cep-message.searching{background:var(--color-info);color:#fff}.cep-message.found{background:var(--color-success);color:#fff}.cep-message.notFound{background:var(--color-error);color:#fff}@media (max-width: 768px){.candidatas-container{padding:1rem}.candidatas-list{grid-template-columns:1fr}.candidate-header,.candidate-actions,.filter-buttons{flex-direction:column}.filter-btn{width:100%}}.empresa-container{padding:2rem;max-width:1200px;margin:0 auto}.empresa-header{margin-bottom:2rem}.empresa-header h1{font-size:2rem;color:var(--color-text-primary);margin-bottom:.5rem}.empresa-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--color-gray-200)}.tab-btn{padding:.75rem 1.5rem;border:none;background:transparent;border-bottom:3px solid transparent;cursor:pointer;font-size:1rem;font-weight:500;color:var(--color-text-secondary);transition:all .2s;margin-bottom:-2px}.tab-btn:hover{color:var(--color-primary-600)}.tab-btn.active{color:var(--color-primary-600);border-bottom-color:var(--color-primary-600)}.empresa-form{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:2rem;max-width:600px}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password]{width:100%;padding:.75rem;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:1rem;font-family:inherit;transition:border-color .2s}.company-type-options{display:flex;gap:1rem;flex-wrap:wrap}.type-btn{flex:1;min-width:200px;padding:1rem;border:2px solid var(--color-gray-300);background:#fff;border-radius:var(--radius-md);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.5rem;transition:all .2s}.type-icon{font-size:2rem}.type-btn span:not(.type-icon){font-weight:500;font-size:.875rem}.btn-primary{background:var(--color-primary-500);color:#fff;width:100%}.btn-edit{background:var(--color-primary-500);color:#fff}.btn-edit:hover:not(:disabled){background:var(--color-primary-600)}.btn-deactivate{background:var(--color-error);color:#fff}.btn-deactivate:hover:not(:disabled){background:#dc2626}.btn-activate{background:var(--color-success);color:#fff}.btn-activate:hover:not(:disabled){background:#16a34a}.empresa-list{margin-top:2rem}.loading-container,.empty-state{text-align:center;padding:3rem;color:var(--color-text-secondary)}.companies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.company-card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:0 2px 4px #0000000d;transition:box-shadow .2s}.company-card:hover{box-shadow:0 4px 8px #0000001a}.company-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.company-header h3{font-size:1.25rem;color:var(--color-text-primary);margin:0;flex:1}.company-badges{display:flex;flex-wrap:wrap;gap:.5rem}.badge{padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:500}.badge-disabled{background:var(--color-error);color:#fff}.badge-status{background:var(--color-info);color:#fff}.company-info{margin-bottom:1rem}.info-label{font-weight:600;color:var(--color-text-secondary);min-width:120px}.company-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-gray-200)}.company-actions .btn{flex:1}.modal-actions{display:flex;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-gray-200)}.modal-actions .btn{flex:1}@media (max-width: 768px){.empresa-container{padding:1rem}.empresa-tabs{flex-direction:column}.tab-btn{width:100%;text-align:left}.companies-grid{grid-template-columns:1fr}.company-header,.company-actions,.company-type-options{flex-direction:column}.type-btn{width:100%}}.vagas-container{padding:2rem;max-width:1200px;margin:0 auto}.vagas-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.vagas-header h1{font-size:2rem;color:var(--color-text-primary);margin:0}.vagas-content{display:flex;flex-direction:column;gap:3rem}.vagas-section{margin-bottom:2rem}.section-title{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin-bottom:1.5rem}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.item-card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:0 2px 4px #0000000d;transition:all .2s;cursor:pointer}.item-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px);border-color:var(--color-primary-300)}.card-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0;flex:1}.viewed-badge{padding:.25rem .75rem;background:var(--color-info);color:#fff;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;white-space:nowrap}.card-subtitle{font-size:1rem;color:var(--color-primary-600);margin:.5rem 0;font-weight:500}.card-info{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;color:var(--color-text-secondary)}@media (max-width: 768px){.vagas-container{padding:1rem}.vagas-header{flex-direction:column;align-items:flex-start;gap:1rem}.items-grid{grid-template-columns:1fr}}.notificacoes-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.notificacoes-header h1{font-size:2rem;color:var(--color-text-primary);margin:0}.refresh-btn{padding:.5rem 1rem;border:1px solid var(--color-gray-300);background:#fff;border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;transition:all .2s}.refresh-btn:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-primary-300)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.activities-list{display:flex;flex-direction:column;gap:1rem}.activity-item{display:flex;align-items:flex-start;gap:1rem;background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:1.5rem;transition:all .2s}.activity-item:hover{box-shadow:0 2px 8px #0000001a;border-color:var(--color-primary-300)}.activity-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.activity-content{flex:1}.activity-title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .5rem}.activity-description{font-size:.875rem;color:var(--color-text-secondary);margin:0 0 .5rem;line-height:1.5}.activity-time{font-size:.75rem;color:var(--color-gray-600)}.empty-text{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin:0}@media (max-width: 768px){.notificacoes-container{padding:1rem}.notificacoes-header{flex-direction:column;align-items:flex-start;gap:1rem}}.parceiros-container{padding:var(--spacing-lg);max-width:1200px;margin:0 auto}.parceiros-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.parceiros-header h1{color:var(--color-primary-700);font-size:1.8rem;margin:0}.parceiros-info{background:var(--color-primary-50);border-left:4px solid var(--color-primary-600);padding:var(--spacing-md);margin-bottom:var(--spacing-xl);border-radius:var(--radius-md)}.parceiros-info p{margin:0;color:var(--color-text-secondary);line-height:1.6}.parceiros-info code{background:#fff;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.9em;color:var(--color-primary-700)}.empty-state{text-align:center;padding:var(--spacing-3xl);background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a}.empty-state p{color:var(--color-text-secondary);margin-bottom:var(--spacing-lg);font-size:1.1rem}.partners-grid-admin{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.partner-card-admin{background:#fff;border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:transform .2s,box-shadow .2s}.partner-card-admin:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.partner-card-header{position:relative;background:var(--color-gray-50);padding:var(--spacing-md);display:flex;align-items:center;justify-content:center;min-height:120px}.partner-logo-preview{max-width:100%;max-height:100px;object-fit:contain}.partner-card-actions{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);display:flex;gap:var(--spacing-xs)}.btn-icon{background:#fff;border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);padding:4px 8px;cursor:pointer;font-size:.9rem;transition:background .2s,border-color .2s}.btn-icon:hover:not(:disabled){background:var(--color-primary-50);border-color:var(--color-primary-300)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.btn-icon.btn-edit:hover:not(:disabled){background:var(--color-info-50);border-color:var(--color-info-300)}.btn-icon.btn-delete:hover:not(:disabled){background:var(--color-error-50);border-color:var(--color-error-300)}.partner-card-body{padding:var(--spacing-md)}.partner-card-body h3{color:var(--color-primary-700);font-size:1.2rem;margin:0 0 var(--spacing-sm) 0}.partner-slogan{color:var(--color-text-secondary);font-size:.95rem;line-height:1.5;margin:0 0 var(--spacing-sm) 0}.partner-site-link{color:var(--color-primary-600);text-decoration:none;font-size:.9rem;font-weight:500;display:inline-block;margin-top:var(--spacing-xs)}.partner-site-link:hover{text-decoration:underline}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.modal-content{background:#fff;border-radius:var(--radius-lg);max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--color-gray-200)}.modal-header h2{color:var(--color-primary-700);font-size:1.5rem;margin:0}.modal-close{background:none;border:none;font-size:2rem;color:var(--color-text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background .2s}.modal-body{padding:var(--spacing-lg)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;color:var(--color-text-primary);font-weight:500;margin-bottom:var(--spacing-xs)}.form-group .required{color:var(--color-error-600)}.form-input{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:1rem;font-family:inherit;transition:border-color .2s}.form-input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px #6b3fa01a}.form-input[type=url]{font-family:Courier New,monospace;font-size:.9rem}.form-help{display:block;color:var(--color-text-secondary);font-size:.85rem;margin-top:var(--spacing-xs)}.form-help code{background:var(--color-gray-100);padding:2px 4px;border-radius:3px;font-family:Courier New,monospace}.logo-preview{max-width:100%;max-height:150px;object-fit:contain;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);padding:var(--spacing-sm);background:var(--color-gray-50);margin-top:var(--spacing-xs)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--color-gray-200)}.btn{padding:var(--spacing-sm) var(--spacing-xl);border:none;border-radius:var(--radius-full);font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;font-size:1rem}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary-600);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #6b3fa04d}.loading-container{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-secondary)}@media (max-width: 768px){.parceiros-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.partners-grid-admin{grid-template-columns:1fr}.modal-content{max-width:100%;margin:var(--spacing-md)}}.dashboard-container{padding:var(--spacing-lg)}.dashboard-title{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-xl)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;align-items:center;text-align:center}.stat-icon{font-size:2.5rem;margin-bottom:var(--spacing-sm)}.stat-number{font-size:2rem;font-weight:700;color:var(--color-primary-600);margin-bottom:var(--spacing-xs)}.stat-label{font-size:.875rem;color:var(--color-text-secondary)}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-lg)}.chart-card,.recent-interests-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:0 2px 8px #0000001a}.chart-title{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-lg)}.loading-text,.empty-text{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}.interests-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.interest-item{padding:var(--spacing-md);background:var(--color-gray-50);border-radius:var(--radius-md);border-left:4px solid var(--color-primary-500)}.interest-candidate-name{font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-xs)}.interest-status{margin-bottom:var(--spacing-xs)}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);color:#fff;font-size:.75rem;font-weight:600}.interest-offer{font-size:.875rem;color:var(--color-text-secondary)}@media (max-width: 768px){.dashboard-container{padding:var(--spacing-md)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.charts-grid{grid-template-columns:1fr}.chart-card,.recent-interests-card{padding:var(--spacing-md)}}.mural-container{padding:2rem;max-width:1200px;margin:0 auto}.mural-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.mural-header h1{font-size:2rem;color:var(--color-text-primary);margin:0}.mural-form{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:2rem;margin-bottom:2rem}.edit-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--color-primary-500)}.edit-header h2{font-size:1.5rem;color:var(--color-primary-600);margin:0}.type-section{margin-bottom:2rem}.type-section h3{font-size:1.25rem;color:var(--color-text-primary);margin-bottom:1rem}.type-badge{padding:1rem;background:var(--color-primary-100);border:2px solid var(--color-primary-500);border-radius:var(--radius-md);text-align:center;font-weight:600;color:var(--color-primary-700)}.type-buttons{display:flex;gap:1rem}.type-btn{flex:1;padding:1rem;border:2px solid var(--color-gray-300);background:#fff;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s}.type-btn:hover{border-color:var(--color-primary-300);background:var(--color-primary-50)}.type-btn.active{border-color:var(--color-primary-500);background:var(--color-primary-100);color:var(--color-primary-700)}.form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--color-gray-200)}.form-section:last-of-type{border-bottom:none}.form-section h3{font-size:1.125rem;color:var(--color-text-primary);margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.form-group input[type=text],.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:1rem;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary-500)}.form-group input[type=checkbox]{width:auto;margin-right:.5rem}.form-group label:has(input[type=checkbox]){display:flex;align-items:center;font-weight:400;cursor:pointer}.helper-text{margin-top:.5rem;font-size:.875rem;color:var(--color-info)}.city-selector-btn{width:100%;padding:.75rem;border:1px solid var(--color-gray-300);background:#fff;border-radius:var(--radius-md);cursor:pointer;text-align:left;font-size:1rem;transition:border-color .2s}.city-selector-btn:hover{border-color:var(--color-primary-500)}.btn-submit{width:100%;margin-top:1rem}.btn-icon{background:none;border:none;cursor:pointer;font-size:1.25rem;padding:.5rem;border-radius:var(--radius-md);transition:background .2s}.btn-icon:hover{background:var(--color-gray-100)}.btn-delete:hover{background:var(--color-error);color:#fff}.mural-list{margin-top:2rem}.mural-list h2{font-size:1.5rem;color:var(--color-text-primary);margin-bottom:1.5rem}.offer-card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 2px 4px #0000000d;transition:box-shadow .2s}.offer-card:hover{box-shadow:0 4px 8px #0000001a}.card-header-left{display:flex;align-items:flex-start;gap:1rem;flex:1}.card-icon{font-size:2rem}.card-title{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem}.card-subtitle{font-size:1rem;color:var(--color-text-secondary);margin:0}.card-actions{display:flex;gap:.5rem}.card-actions-bottom{display:flex;gap:.75rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.interest-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-primary-100);color:var(--color-primary-700);border-radius:var(--radius-full);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.interest-badge:hover{background:var(--color-primary-200)}.btn-cadastrar-candidata{padding:.75rem 1rem;background:var(--color-success);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-cadastrar-candidata:hover{background:#16a34a}.card-info{margin-bottom:1rem}.info-row{display:flex;gap:.5rem;margin-bottom:.5rem;font-size:.875rem}.info-label{font-weight:600;color:var(--color-text-secondary);min-width:100px}.card-description{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-gray-200)}.description-label{font-size:.875rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}.description-text{font-size:.875rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.empty-state{text-align:center;padding:3rem;color:var(--color-text-secondary)}@media (max-width: 768px){.mural-container{padding:1rem}.mural-header{flex-direction:column;align-items:flex-start;gap:1rem}.type-buttons,.card-header{flex-direction:column}.card-actions{align-self:flex-end}}.perfis-container{padding:2rem;max-width:1400px;margin:0 auto}.perfis-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.perfis-header h1{font-size:2rem;color:var(--color-text-primary);margin:0}.perfis-filters{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:2rem}.search-box{margin-bottom:1rem}.search-input{width:100%;padding:.75rem 1rem;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:1rem;transition:border-color .2s}.search-input:focus{outline:none;border-color:var(--color-primary-500)}.filter-row{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.filter-btn{padding:.5rem 1rem;border:1px solid var(--color-gray-300);background:#fff;border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;transition:all .2s}.filter-btn:hover{background:var(--color-gray-50);border-color:var(--color-primary-300)}.filter-select{flex:1;padding:.5rem 1rem;border:1px solid var(--color-gray-300);background:#fff;border-radius:var(--radius-md);font-size:.875rem;cursor:pointer}.shift-filters{display:flex;gap:1rem;margin-bottom:1rem}.shift-filters label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem}.shift-filters input[type=checkbox]{width:auto}.perfis-list{margin-top:2rem}.results-count{color:var(--color-text-secondary);font-size:.875rem;margin-bottom:1rem}.profiles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.profile-card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:0 2px 4px #0000000d;transition:all .2s;cursor:pointer}.profile-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px);border-color:var(--color-primary-300)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.card-header h3{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0;flex:1}.card-badges{display:flex;flex-direction:column;gap:.25rem;align-items:flex-end}.badge{padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;white-space:nowrap}.badge-hired{background:var(--color-success);color:#fff}.badge-interested{background:var(--color-info);color:#fff}.badge-viewed{background:var(--color-gray-300);color:var(--color-text-primary)}.btn-hire-card{width:100%;padding:.5rem;margin-bottom:1rem;background:var(--color-success);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;font-weight:500;transition:background .2s}.btn-hire-card:hover{background:#16a34a}.card-info{display:flex;flex-direction:column;gap:.75rem}.info-row{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--color-text-secondary)}.info-icon{font-size:1rem}.info-label{font-weight:600;min-width:100px}.shifts{display:flex;flex-wrap:wrap;gap:.5rem}.shift-badge{padding:.25rem .75rem;background:var(--color-primary-100);color:var(--color-primary-700);border-radius:var(--radius-full);font-size:.75rem;font-weight:500}.skills{display:flex;flex-wrap:wrap;gap:.5rem}.skill-tag{padding:.25rem .75rem;background:var(--color-gray-100);color:var(--color-text-primary);border-radius:var(--radius-full);font-size:.75rem}.more-skills{padding:.25rem .75rem;color:var(--color-text-secondary);font-size:.75rem}.empty-state,.loading-container{text-align:center;padding:3rem;color:var(--color-text-secondary)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:var(--radius-lg);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-large{max-width:700px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-gray-200)}.modal-header h2{margin:0;font-size:1.5rem;color:var(--color-text-primary)}.modal-close{background:none;border:none;font-size:2rem;cursor:pointer;color:var(--color-text-secondary);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:background .2s}.modal-close:hover{background:var(--color-gray-100)}.modal-body{padding:1.5rem}.profile-details{margin-bottom:1.5rem}.detail-row{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-gray-200)}.detail-row:last-child{border-bottom:none}.detail-label{display:block;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}.phone-revealed{background:var(--color-success);color:#fff;padding:1rem;border-radius:var(--radius-md)}.phone-revealed .detail-label{color:#fff}.phone-number{font-size:1.25rem;font-weight:600;display:block;margin-bottom:.25rem}.phone-expiry{font-size:.875rem;opacity:.9}.modal-actions{display:flex;flex-direction:column;gap:.5rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-gray-200)}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background:#16a34a}.btn-secondary{background:var(--color-gray-200);color:var(--color-text-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-300)}.hired-badge-large{padding:1rem;background:var(--color-success);color:#fff;border-radius:var(--radius-md);text-align:center;font-weight:600}.options-list{display:flex;flex-direction:column;gap:.5rem}.option-btn{padding:.75rem 1rem;border:1px solid var(--color-gray-300);background:#fff;border-radius:var(--radius-md);cursor:pointer;text-align:left;font-size:.875rem;transition:all .2s}.option-btn:hover{background:var(--color-gray-50);border-color:var(--color-primary-300)}.option-btn.active{background:var(--color-primary-500);color:#fff;border-color:var(--color-primary-500)}@media (max-width: 768px){.perfis-container{padding:1rem}.perfis-header{flex-direction:column;align-items:flex-start;gap:1rem}.profiles-grid{grid-template-columns:1fr}.filter-row{flex-direction:column}.filter-btn,.filter-select{width:100%}}.perfil-container{padding:2rem;max-width:800px;margin:0 auto}.perfil-header{margin-bottom:2rem}.perfil-header h1{font-size:2rem;color:var(--color-text-primary);margin:0}.perfil-subtitle{color:var(--color-text-secondary);font-size:1rem;margin-bottom:2rem;line-height:1.5}.first-access-banner{display:flex;align-items:flex-start;gap:1rem;background:var(--color-secondary-50);padding:1rem;border-radius:var(--radius-md);margin-bottom:1.5rem;border-left:4px solid var(--color-secondary-600)}.banner-icon{font-size:1.5rem;flex-shrink:0}.banner-text{flex:1;font-size:.875rem;color:var(--color-text-primary);line-height:1.5;margin:0}.perfil-form{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text-primary)}.form-group input[type=text],.form-group input[type=password]{width:100%;padding:.75rem;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:1rem;font-family:inherit;transition:border-color .2s}.form-group input:focus{outline:none;border-color:var(--color-primary-500)}.type-container{display:flex;align-items:center;gap:.5rem;padding:1rem;background:var(--color-primary-50);border-radius:var(--radius-md);margin-bottom:1.5rem}.type-icon{font-size:1.25rem}.type-text{font-size:1rem;color:var(--color-text-secondary);font-weight:500}.city-input-container{display:flex;gap:.5rem;margin-bottom:1rem}.city-input-container input{flex:1}.btn{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-add-city{background:var(--color-primary-500);color:#fff;padding:.75rem 1.5rem;min-width:48px}.btn-add-city:hover:not(:disabled){background:var(--color-primary-600)}.cities-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.city-tag{display:flex;align-items:center;gap:.5rem;background:var(--color-primary-100);border-radius:var(--radius-md);padding:.5rem 1rem}.city-tag span{font-size:.875rem;color:var(--color-primary-700);font-weight:500}.btn-remove-city{background:none;border:none;cursor:pointer;font-size:1.25rem;color:var(--color-text-secondary);padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:background .2s}.btn-remove-city:hover{background:var(--color-gray-200)}.btn-primary{background:var(--color-primary-500);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-600)}.btn-secondary{background:var(--color-secondary-600);color:#fff}.btn-secondary:hover:not(:disabled){background:var(--color-secondary-700)}.btn-save{width:100%;margin-top:1rem}.password-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-gray-200)}.password-section-header{display:flex;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;padding:.5rem;width:100%;text-align:left;font-size:1.125rem;font-weight:600;color:var(--color-text-primary);transition:background .2s;border-radius:var(--radius-md)}.password-section-header:hover{background:var(--color-gray-50)}.password-icon{font-size:1.25rem}.password-section-title{flex:1}.password-toggle-icon{font-size:.875rem;color:var(--color-text-secondary)}.password-form{margin-top:1rem}.password-info{font-size:.875rem;color:var(--color-text-secondary);margin-bottom:1.5rem;line-height:1.5}.password-input-container{position:relative;display:flex;align-items:center}.password-input-container input{padding-right:3rem}.password-toggle{position:absolute;right:.75rem;background:none;border:none;cursor:pointer;font-size:1.25rem;padding:.25rem;display:flex;align-items:center;justify-content:center}.btn-change-password{width:100%;margin-top:1rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center}.loading-container p{color:var(--color-text-secondary);margin-top:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.perfil-container{padding:1rem}.city-input-container{flex-direction:column}.btn-add-city{width:100%}}.notificacoes-container{padding:2rem;max-width:1000px;margin:0 auto}.notificacoes-header{margin-bottom:2rem}.notificacoes-header h1{font-size:2rem;color:var(--color-text-primary);margin:0 0 .25rem}.notificacoes-subtitle{font-size:.875rem;color:var(--color-text-secondary);margin:0}.notifications-list{display:flex;flex-direction:column;gap:1rem}.notification-item{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:1.5rem;cursor:pointer;transition:all .2s}.notification-item:hover{box-shadow:0 2px 8px #0000001a;border-color:var(--color-primary-300)}.notification-item.unread{background:var(--color-primary-50);border-color:var(--color-primary-200)}.notification-content{flex:1}.notification-header{display:flex;align-items:flex-start;gap:1rem}.icon-container{position:relative;flex-shrink:0}.notification-icon{font-size:1.5rem;display:block}.unread-dot{position:absolute;top:-4px;right:-4px;width:12px;height:12px;border-radius:50%;background:var(--color-error);border:2px solid white}.notification-text-container{flex:1}.notification-title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .5rem}.notification-title.unread{font-weight:700}.notification-message{font-size:.875rem;color:var(--color-text-secondary);margin:0 0 .5rem;line-height:1.5}.notification-date{font-size:.75rem;color:var(--color-gray-600)}.empty-state{text-align:center;padding:4rem 2rem}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-text{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .5rem}.empty-subtext{font-size:.875rem;color:var(--color-text-secondary);margin:0}.loading-container{text-align:center;padding:3rem;color:var(--color-text-secondary)}@media (max-width: 768px){.notificacoes-container{padding:1rem}}*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary-50: #F5F0FA;--color-primary-100: #E9DDF5;--color-primary-200: #D3BBEB;--color-primary-300: #BD99E1;--color-primary-400: #A777D7;--color-primary-500: #9155CD;--color-primary-600: #6B3FA0;--color-primary-700: #5B2D8D;--color-primary-800: #4A1F7A;--color-primary-900: #391167;--color-secondary-50: #FFF9E6;--color-secondary-100: #FFF2CC;--color-secondary-200: #FFE599;--color-secondary-300: #FFD866;--color-secondary-400: #FFCB33;--color-secondary-500: #F0A000;--color-secondary-600: #F2B23A;--color-secondary-700: #CC8800;--color-secondary-800: #996600;--color-secondary-900: #664400;--color-gray-50: #F7F5FA;--color-gray-100: #F0EDF5;--color-gray-200: #E1DBEB;--color-gray-300: #D2C9E1;--color-gray-400: #C3B7D7;--color-gray-500: #B4A5CD;--color-gray-600: #8A7A9A;--color-gray-700: #6B5F7A;--color-gray-800: #4A4455;--color-gray-900: #2A2530;--color-success: #22C55E;--color-error: #EF4444;--color-warning: #F59E0B;--color-info: #3B82F6;--color-background: #F7F5FA;--color-surface: #FFFFFF;--color-text-primary: #2A2530;--color-text-secondary: #6B5F7A;--color-text-disabled: #B4A5CD;--color-text-inverse: #FFFFFF;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--font-family-regular: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family-medium: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family-bold: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 30px;--font-size-4xl: 36px;--line-height-xs: 16px;--line-height-sm: 20px;--line-height-md: 24px;--line-height-lg: 28px;--line-height-xl: 32px;--line-height-2xl: 36px;--line-height-3xl: 44px;--line-height-4xl: 52px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700}body{font-family:var(--font-family-regular);font-size:var(--font-size-md);line-height:var(--line-height-md);font-weight:var(--font-weight-regular);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-background);color:var(--color-text-primary);margin:0;padding:0}#root{min-height:100vh;width:100%}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit}:root{--breakpoint-mobile: 768px;--breakpoint-tablet: 1024px;--breakpoint-desktop: 1400px}:root{--touch-target-min: 44px}.container{width:100%;max-width:var(--breakpoint-desktop);margin:0 auto;padding:0 var(--spacing-md)}@media (min-width: 768px){.container{padding:0 var(--spacing-lg)}}@media (min-width: 1024px){.container{padding:0 var(--spacing-xl)}}@media (max-width: 768px){:root{--font-size-xs: 11px;--font-size-sm: 13px;--font-size-md: 15px;--font-size-lg: 17px;--font-size-xl: 19px;--font-size-2xl: 22px;--font-size-3xl: 26px;--font-size-4xl: 30px}}.mobile-only{display:none}.desktop-only{display:block}@media (max-width: 768px){.mobile-only{display:block}.desktop-only{display:none}}.grid{display:grid;gap:var(--spacing-md)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(1,1fr)}.grid-cols-2.mobile\:grid-cols-2{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){button,.button,a.button{min-height:var(--touch-target-min);min-width:var(--touch-target-min);padding:var(--spacing-sm) var(--spacing-md)}}.bottom-navigation{display:none}@media (max-width: 768px){.bottom-navigation{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--color-surface);border-top:1px solid var(--color-gray-200);box-shadow:0 -2px 8px #0000001a;z-index:100;padding:var(--spacing-xs) 0}.bottom-navigation-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xs);text-decoration:none;color:var(--color-text-secondary);transition:color .2s;min-height:var(--touch-target-min)}.bottom-navigation-item.active{color:var(--color-primary-600)}.bottom-navigation-icon{font-size:1.5rem;margin-bottom:2px}.bottom-navigation-label{font-size:.75rem;font-weight:500}}@media (max-width: 768px){.main-content{padding-bottom:calc(60px + var(--spacing-md))}}
