body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.navbar{background:transparent;padding:10px;display:flex;gap:20px;align-items:center}.navbar a,.navbar-logout-btn{text-decoration:none;color:#333;background:none;border:none;font:inherit;cursor:pointer;padding:0;margin:0;transition:color .3s ease;display:inline;font-weight:700}.navbar a:hover,.navbar-logout-btn:hover{color:#007bff}body{background:linear-gradient(135deg,#e3f2fd,#f1f8e9)}.landing-container{display:flex;flex-direction:column;min-height:95vh;align-items:center;justify-content:space-between}.landing-header{margin-top:48px;text-align:center}.logo{font-size:2.5rem;margin-bottom:12px;font-weight:700;color:#1976d2;letter-spacing:2px}h1{font-size:2rem;text-align:center;margin-top:16px;color:#333}.landing-header h1{font-size:1.7rem;color:#333;margin-bottom:0}.landing-main{display:flex;flex-direction:column;gap:24px;align-items:center;margin-top:40px}.landing-btn{padding:18px 40px;font-size:1.15rem;border:none;border-radius:8px;background:#1976d2;color:#fff;cursor:pointer;margin:10px 0;font-weight:500;box-shadow:0 2px 8px #0001;transition:background .2s,transform .1s}.landing-btn.highlight{background:#43a047}.landing-btn:hover{background:#1565c0;transform:translateY(-2px) scale(1.03)}.landing-btn.highlight:hover{background:#388e3c}.landing-footer{margin-bottom:32px;font-size:1rem;color:#888;text-align:center}.landing-footer a{color:#1976d2;text-decoration:none;margin:0 10px;transition:text-decoration .2s}.landing-footer a:hover{text-decoration:underline}.privacy-policy-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:40px 20px}.privacy-policy-page .container{max-width:900px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000001a;overflow:hidden}.privacy-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:60px 40px;text-align:center}.privacy-header h1{font-size:2.5rem;margin:0 0 10px;font-weight:700}.privacy-header .last-updated{font-size:.95rem;opacity:.9;margin:0}.privacy-content{padding:60px 40px;line-height:1.8;color:#333}.privacy-section{margin-bottom:50px}.privacy-section h2{font-size:1.8rem;color:#667eea;margin-bottom:20px;border-bottom:3px solid #667eea;padding-bottom:10px;font-weight:600}.privacy-section h3{font-size:1.2rem;color:#555;margin-top:20px;margin-bottom:10px;font-weight:600}.privacy-section p{margin-bottom:15px;font-size:1rem;text-align:justify}.privacy-section ul{margin-left:20px;margin-bottom:15px}.privacy-section li{margin-bottom:10px;padding-left:10px;list-style-position:outside}.privacy-section strong{color:#667eea;font-weight:600}.privacy-section a{color:#667eea;text-decoration:none;font-weight:500;border-bottom:2px solid #667eea;transition:all .3s ease}.privacy-section a:hover{background-color:#f0f4ff;padding:2px 4px}.note{background-color:#f0f4ff;border-left:4px solid #667eea;padding:15px;margin:20px 0;border-radius:4px;font-style:italic}.privacy-contact .contact-box{background:#f9f9f9;border:2px solid #667eea;border-radius:8px;padding:25px;margin-top:20px}.privacy-contact .contact-box p{margin-bottom:12px}.privacy-contact .contact-box strong{color:#333}.privacy-contact .contact-box a{color:#667eea;text-decoration:none;border-bottom:2px solid #667eea}.privacy-footer{background:#f5f7fa;padding:30px 40px;text-align:center;border-top:1px solid #e0e0e0;color:#666;font-size:.95rem}.privacy-footer p{margin:5px 0}@media(max-width:768px){.privacy-policy-page{padding:20px 10px}.privacy-policy-page .container{border-radius:0}.privacy-header{padding:40px 20px}.privacy-header h1{font-size:1.8rem}.privacy-content{padding:30px 20px}.privacy-section h2{font-size:1.4rem}.privacy-section h3{font-size:1.1rem}.privacy-section p{font-size:.95rem}.privacy-footer{padding:20px;font-size:.9rem}}@media(max-width:480px){.privacy-header{padding:30px 15px}.privacy-header h1{font-size:1.5rem}.privacy-content{padding:20px 15px}.privacy-section h2{font-size:1.2rem}.privacy-section ul{margin-left:15px}.note{padding:12px;font-size:.95rem}.privacy-contact .contact-box{padding:15px}}@media print{.privacy-policy-page{background:#fff;padding:0}.privacy-header{background:#333;color:#fff}.privacy-section a{color:#000;border:none}}.contact-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:40px 20px}.contact-container{max-width:1200px;margin:0 auto}.contact-header{text-align:center;color:#fff;margin-bottom:50px;animation:fadeInDown .6s ease}.contact-header h1{font-size:2.5rem;margin:0 0 15px;font-weight:700}.contact-header p{font-size:1.1rem;margin:0;opacity:.95}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:40px}.contact-form-section{background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a;animation:fadeInLeft .6s ease}.contact-form{display:flex;flex-direction:column;gap:20px}.field-error{color:#e74c3c;font-size:.9rem;font-weight:500}.char-count{font-size:.85rem;color:#999;text-align:right;margin-top:-5px}.form-group textarea{resize:vertical;min-height:150px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.submit-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:14px 28px;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:10px}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px #667eea66}.submit-button:active:not(:disabled){transform:translateY(0)}.form-note{font-size:.9rem;color:#999;text-align:center;margin-top:10px}.success-message{background:#f0fff4;border:2px solid #27ae60;border-radius:12px;padding:40px;text-align:center;animation:slideDown .5s ease}.success-icon{font-size:3rem;color:#27ae60;margin-bottom:15px;display:inline-block;width:60px;height:60px;line-height:60px;background:#e8f8f5;border-radius:50%}.success-message h3{color:#27ae60;margin:15px 0;font-size:1.5rem}.success-message p{color:#333;margin:10px 0}.confirmation-text{font-size:.95rem;color:#666}.contact-info-section{display:flex;flex-direction:column;gap:25px;animation:fadeInRight .6s ease}.info-box{background:#fff;padding:30px;border-radius:12px;box-shadow:0 10px 40px #0000001a}.info-box h3{color:#667eea;font-size:1.3rem;margin-top:0;margin-bottom:20px;border-bottom:2px solid #667eea;padding-bottom:10px}.info-item{display:flex;gap:15px;margin-bottom:20px;align-items:flex-start}.info-item:last-child{margin-bottom:0}.info-icon{font-size:1.5rem;min-width:40px;text-align:center}.info-item strong{color:#333;display:block;margin-bottom:5px}.info-item p{margin:0;color:#666}.info-item a{color:#667eea;text-decoration:none;font-weight:500;transition:all .3s ease}.info-item a:hover{color:#764ba2;text-decoration:underline}.faq-box ul{list-style:none;padding:0;margin:0}.faq-box li{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #e0e0e0}.faq-box li:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.faq-box li strong{color:#333;display:block;margin-bottom:8px}.faq-box li p{margin:0;color:#666;font-size:.95rem}.privacy-box{background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.privacy-box p{margin:10px 0;color:#333;line-height:1.6}.privacy-box a{color:#667eea;text-decoration:none;font-weight:600;border-bottom:2px solid #667eea}.privacy-box a:hover{background-color:#667eea1a;padding:2px 4px}.small-text{font-size:.9rem;color:#666!important}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.contact-content{gap:30px}.contact-form-section,.info-box{padding:30px}}@media(max-width:768px){.contact-page{padding:20px 10px}.contact-header h1{font-size:2rem}.contact-header p{font-size:1rem}.contact-content{grid-template-columns:1fr;gap:25px}.contact-form-section{padding:25px}.contact-info-section{gap:20px}.info-box{padding:20px}.info-box h3{font-size:1.2rem}.submit-button{padding:12px 24px;font-size:.95rem}}@media(max-width:480px){.contact-header h1{font-size:1.5rem}.contact-header p{font-size:.95rem}.contact-form-section{padding:20px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;font-size:16px}.info-box{padding:15px}.info-box h3{font-size:1.1rem;margin-bottom:15px}.info-item{gap:10px}.success-message{padding:25px}.success-icon{width:50px;height:50px;line-height:50px;font-size:2.5rem}}@media print{.contact-page{background:#fff;padding:0}.contact-form-section{box-shadow:none;border:1px solid #ddd}.submit-button{display:none}}.login-container{display:flex;justify-content:center;align-items:center;min-height:80vh}.login-form{background:#fff;padding:2rem 2.5rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:1rem;width:320px}.login-form h2{margin-bottom:1rem;text-align:center}.login-form input{padding:.75rem;border:1px solid #ddd;border-radius:4px}.login-form button{padding:.75rem;border:none;border-radius:4px;font-weight:700;cursor:pointer}.button-container-login{display:flex;gap:.75rem}.submit-button{flex:1;background:#1976d2;color:#fff}.submit-button:disabled{opacity:.7;cursor:not-allowed}.voltar-btn{flex:1;background:#e0e7ff;color:#1e3a8a}.voltar-btn:hover{background:#c7d2fe}.login-error{color:#d32f2f;text-align:center;margin-bottom:.5rem}.sessions-manager{max-width:800px;margin:2rem auto;padding:1rem}.sessions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.sessions-header h2{margin:0;color:#333}.btn-logout-all{background-color:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:500}.btn-logout-all:hover:not(:disabled){background-color:#c82333}.btn-logout-all:disabled{background-color:#ccc;cursor:not-allowed}.sessions-loading,.sessions-empty,.sessions-error{text-align:center;padding:2rem;color:#666}.sessions-error{color:#dc3545;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px}.sessions-list{display:flex;flex-direction:column;gap:1rem}.session-card{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px #0000001a}.session-info{flex:1}.session-browser{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.badge-current{background-color:#28a745;color:#fff;padding:.2rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500}.session-details p{margin:.25rem 0;font-size:.9rem;color:#666}.btn-logout-session{background-color:#6c757d;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-weight:500}.btn-logout-session:hover{background-color:#5a6268}.email-verification-input-container{display:flex;flex-direction:column;gap:1.5rem;margin:1.5rem 0}.verification-code-label{display:flex;flex-direction:column;gap:.5rem}.verification-code-label label{font-size:1rem;font-weight:600;color:#333;margin:0}.verification-hint{font-size:.875rem;color:#666;margin:0;font-weight:400}.verification-inputs{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;padding:1rem;background:#f5f5f5;border-radius:12px}.verification-input{width:50px;height:50px;text-align:center;font-size:1.5rem;font-weight:600;border:2px solid #ddd;border-radius:8px;transition:all .2s ease;background:#fff;color:#333;cursor:text}.verification-input:hover:not(:disabled){border-color:#6c63ff;box-shadow:0 0 0 3px #6c63ff1a}.verification-input:focus{outline:none;border-color:#6c63ff;box-shadow:0 0 0 3px #6c63ff33;background:#f9f7ff}.verification-input.filled{border-color:#6c63ff;background:#f0ebff;font-weight:700}.verification-input.filled:focus{border-color:#5a52e6;box-shadow:0 0 0 3px #6c63ff4d}.verification-input.error{border-color:#d32f2f;background:#ffebee}.verification-input.error:focus{border-color:#c62828;box-shadow:0 0 0 3px #d32f2f33}.verification-input:disabled{background:#f0f0f0;color:#999;cursor:not-allowed;border-color:#ccc}.verification-input.disabled{opacity:.6}.verification-error-message{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#ffebee;border-left:4px solid #d32f2f;border-radius:4px;color:#c62828;font-size:.875rem;animation:slideIn .3s ease}.error-icon{font-size:1.1rem}.verification-info{text-align:center;font-size:.875rem;color:#999}.code-length{margin:0;padding:.5rem;background:#f9f9f9;border-radius:6px}@media(max-width:600px){.verification-inputs{gap:.5rem;padding:.75rem}.verification-input{width:45px;height:45px;font-size:1.25rem}.verification-code-label label{font-size:.95rem}.verification-hint{font-size:.8rem}}@media(max-width:400px){.verification-inputs{gap:.4rem;padding:.5rem}.verification-input{width:40px;height:40px;font-size:1.1rem;border-radius:6px}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.verification-input:focus-visible{outline:2px solid #6c63ff;outline-offset:2px}.resend-code-button-container{display:flex;flex-direction:column;gap:.75rem;width:100%}.resend-code-button{padding:.75rem 1.25rem;font-size:.95rem;font-weight:500;background:#fff;border:2px solid #6c63ff;border-radius:8px;color:#6c63ff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px}.resend-code-button:hover:not(:disabled){background:#f0ebff;box-shadow:0 2px 8px #6c63ff33}.resend-code-button:active:not(:disabled){transform:scale(.98)}.resend-code-button:disabled{opacity:.7;cursor:not-allowed}.resend-code-button.cooldown{border-color:#ccc;color:#999;background:#f9f9f9}.resend-code-button.cooldown:hover{box-shadow:none;background:#f9f9f9}.resend-code-button.loading{background:#f0ebff}.resend-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(108,99,255,.3);border-radius:50%;border-top-color:#6c63ff;animation:spin .8s linear infinite}.resend-attempts{font-size:.8rem;color:#999;text-align:center;margin:0;padding:0 .5rem}.resend-error{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:#ffebee;border-left:3px solid #d32f2f;border-radius:4px;font-size:.825rem;color:#c62828;animation:slideDown .3s ease}.error-icon{font-size:1rem;flex-shrink:0}.resend-success{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:#e8f5e9;border-left:3px solid #4caf50;border-radius:4px;font-size:.825rem;color:#2e7d32;animation:slideDown .3s ease}.success-icon{font-size:1rem;flex-shrink:0}.resend-hint{font-size:.8rem;color:#999;text-align:center;margin:0;padding:0 .5rem}.resend-hint strong{color:#666}@media(max-width:600px){.resend-code-button{padding:.65rem 1rem;font-size:.9rem}.resend-attempts,.resend-hint{font-size:.75rem}.resend-error,.resend-success{font-size:.75rem;padding:.5rem .75rem}}@media(max-width:400px){.resend-code-button{padding:.6rem .875rem;font-size:.85rem;min-height:40px}.resend-spinner{width:14px;height:14px}}.resend-code-button:focus-visible{outline:2px solid #6c63ff;outline-offset:2px}.email-verification-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:1rem}.verification-container{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;padding:2rem;max-width:500px;width:100%;animation:slideUp .5s ease}.verification-header{text-align:center;margin-bottom:2rem}.verification-header h1{font-size:1.75rem;color:#333;margin:0 0 .5rem;font-weight:700}.verification-header p{color:#666;font-size:1rem;margin:0}.email-display{background:#f5f5f5;border-left:4px solid #6c63ff;padding:1rem;border-radius:8px;margin-bottom:2rem}.email-label{font-size:.875rem;color:#666;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.5px}.email-address{font-size:1.1rem;color:#333;font-weight:600;margin:0 0 .5rem;word-break:break-all}.email-info{font-size:.875rem;color:#999;margin:0}.verification-form{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.verify-button{padding:.875rem 1.5rem;font-size:1rem;font-weight:600;border:none;border-radius:8px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px}.verify-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #667eea66}.verify-button:active:not(:disabled){transform:translateY(0)}.verify-button:disabled{opacity:.6;cursor:not-allowed}.button-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .8s linear infinite}.resend-section{text-align:center;padding:1.5rem;background:#f9f9f9;border-radius:8px;margin-bottom:1.5rem}.resend-label{font-size:.875rem;color:#666;margin:0 0 1rem}.verification-help{background:#fffbea;border-left:4px solid #ffc107;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.verification-help h3{font-size:.95rem;color:#333;margin:0 0 .75rem}.verification-help ul{list-style:none;padding:0;margin:0}.verification-help li{font-size:.875rem;color:#666;margin:0;padding:.25rem 0 .25rem 1.5rem;position:relative}.verification-help li:before{content:"✓";position:absolute;left:0;color:#ffc107;font-weight:700}.back-button{width:100%;padding:.75rem 1rem;font-size:.95rem;background:transparent;border:1px solid #ddd;border-radius:8px;color:#666;cursor:pointer;transition:all .3s ease}.back-button:hover{border-color:#999;color:#333;background:#f9f9f9}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem}.loading-spinner.small{padding:1rem}.spinner{width:50px;height:50px;border:3px solid rgba(102,126,234,.2);border-radius:50%;border-top-color:#667eea;animation:spin .8s linear infinite}.spinner.small{width:30px;height:30px;border-width:2px}.loading-spinner p{color:#666;font-size:.95rem;margin:0}.success-state{text-align:center;padding:2rem}.success-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background:#4caf50;color:#fff;border-radius:50%;font-size:3rem;margin-bottom:1rem;animation:scaleIn .5s ease}.success-state h2{font-size:1.5rem;color:#333;margin:1rem 0 .5rem}.success-state p{color:#666;margin:.5rem 0}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:600px){.verification-container{padding:1.5rem;border-radius:12px}.verification-header h1{font-size:1.5rem}.verification-header p,.email-address{font-size:.95rem}.verify-button{padding:.75rem 1rem;font-size:.95rem}.verification-help h3{font-size:.9rem}.verification-help li{font-size:.8rem}}@media(max-width:400px){.email-verification-page{padding:.5rem}.verification-container{padding:1rem;border-radius:10px}.verification-header h1{font-size:1.25rem}.verify-button{padding:.65rem .75rem;font-size:.9rem}}.verify-button:focus-visible{outline:2px solid #667eea;outline-offset:2px}.back-button:focus-visible{outline:2px solid #667eea;outline-offset:2px}.cadastro-container{max-width:800px;margin:0 auto;padding:20px}.form-section{background-color:#f5f5f5;padding:20px;margin-bottom:20px;border-radius:8px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:700}.form-group input,.form-group select{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px}.button-container{display:flex;gap:20px;justify-content:center;margin-top:30px;padding:20px 0}.submit-button,.voltar-btn{padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;transition:all .3s ease;min-width:140px;box-shadow:0 2px 4px #0000001a}.submit-button{background-color:#4caf50;color:#fff;border:none}.submit-button:hover:not(:disabled){background-color:#45a049;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.submit-button:disabled{background-color:#ccc;cursor:not-allowed;opacity:.7}.voltar-btn{background-color:#f44336;color:#fff;border:none}.voltar-btn:hover{background-color:#da190b;transform:translateY(-2px);box-shadow:0 4px 8px #0003}.error-message{color:red;padding:10px;margin-bottom:20px;background-color:#ffe6e6;border-radius:4px}.success-message{color:green;padding:10px;margin-bottom:20px;background-color:#e6ffe6;border-radius:4px}.required-asterisk{color:#d32f2f;margin-left:2px;font-weight:700}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.field-error{color:#d32f2f;font-size:.9rem;margin-top:4px}.registration-complete-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.registration-complete-content{background:#fff;border-radius:12px;padding:60px 40px;max-width:600px;width:100%;box-shadow:0 20px 60px #0000004d;text-align:center;animation:slideIn .6s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.success-icon{width:80px;height:80px;background:#4caf50;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;color:#fff;margin:0 auto 30px;animation:scaleIn .6s ease-out}@keyframes scaleIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}h1{color:#333;font-size:28px;font-weight:600;margin:0 0 20px;line-height:1.4}.success-message{color:#666;font-size:16px;line-height:1.6;margin:0 0 30px}.info-box{background:#f5f5f5;border-left:4px solid #667eea;padding:20px;border-radius:6px;text-align:left;margin:30px 0}.info-box h2{color:#333;font-size:18px;font-weight:600;margin:0 0 15px}.info-box ul{list-style:none;padding:0;margin:0}.info-box li{color:#555;font-size:15px;padding:8px 0 8px 30px;position:relative;line-height:1.5}.info-box li:before{content:"→";position:absolute;left:0;color:#667eea;font-weight:700}.button-group{display:flex;gap:12px;justify-content:center;margin:30px 0;flex-wrap:wrap}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:12px 32px;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;text-transform:uppercase;letter-spacing:.5px}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.btn-primary:active{transform:translateY(0);box-shadow:0 4px 10px #667eea4d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.closing-note{color:#999;font-size:14px;margin:20px 0 0;font-style:italic}@media(max-width:768px){.registration-complete-content{padding:40px 24px}h1{font-size:24px}.success-message{font-size:15px}.info-box{padding:16px}.info-box h2{font-size:16px}.info-box li{font-size:14px;padding:6px 0 6px 25px}.btn-primary{padding:11px 24px;font-size:14px}.closing-note{font-size:12px}}@media(max-width:480px){.registration-complete-container{padding:16px}.registration-complete-content{padding:30px 16px}.success-icon{width:64px;height:64px;font-size:36px;margin-bottom:20px}h1{font-size:20px;margin-bottom:16px}.success-message{font-size:14px;margin-bottom:24px}.info-box{margin:20px 0;padding:12px}.info-box h2{font-size:14px;margin-bottom:10px}.info-box li{font-size:13px;padding:5px 0 5px 20px}.btn-primary{padding:10px 16px;font-size:13px}}.cadastro-publico-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:40px 20px}.cadastro-publico-container{max-width:800px;margin:0 auto}.profissional-banner{background:#fff;padding:25px;border-radius:12px;margin-bottom:30px;box-shadow:0 10px 40px #0000001a;animation:slideDown .5s ease}.profissional-banner h2{margin:0 0 15px;color:#333;font-size:1.5rem}.profissional-info{display:flex;flex-direction:column;gap:10px;color:#666;font-size:.95rem}.profissional-info-item{display:flex;align-items:center;gap:10px}.profissional-info-item strong{min-width:100px}.progress-indicator{display:flex;justify-content:space-around;margin-bottom:40px;gap:10px}.progress-step{display:flex;flex-direction:column;align-items:center;flex:1}.step-circle{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;margin-bottom:10px;transition:all .3s ease;background:#fff;color:#999;border:3px solid #ddd}.step-circle.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:#667eea;transform:scale(1.1)}.step-circle.completed{background:#27ae60;color:#fff;border-color:#27ae60}.step-label{font-size:.85rem;color:#fff;text-align:center;font-weight:500}.progress-step.completed .step-label{color:#27ae60}.progress-line{position:relative;height:3px;background:#ffffff4d;margin:25px 0}.progress-line.filled{background:#27ae60}.form-container{background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a;animation:fadeIn .6s ease}.form-container h3{color:#333;margin-top:0;margin-bottom:30px;font-size:1.4rem;border-bottom:2px solid #667eea;padding-bottom:15px}.form-wrapper{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:#333;font-size:1rem}.required-asterisk{color:#e74c3c;margin-left:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.form-group input,.form-group select,.form-group textarea{padding:12px 15px;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;font-family:inherit;transition:all .3s ease;background:#f9f9f9}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;background:#fff;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f0f0f0;cursor:not-allowed;opacity:.7}.form-group input.input-error,.form-group select.input-error,.form-group textarea.input-error{border-color:#e74c3c;background:#fff5f5}.form-group input.input-error:focus,.form-group select.input-error:focus,.form-group textarea.input-error:focus{box-shadow:0 0 0 3px #e74c3c1a}.field-error{color:#e74c3c;font-size:.9rem;font-weight:500;margin-top:-5px}.mask-info{font-size:.85rem;color:#999;margin-top:-5px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-row.full{grid-template-columns:1fr}.form-group-radio,.form-group-checkbox{display:flex;gap:15px;margin:10px 0;flex-wrap:wrap}.radio-option,.checkbox-option{display:flex;align-items:center;gap:6px;cursor:pointer}.radio-option input,.checkbox-option input{cursor:pointer;width:20px;height:20px}.radio-option label,.checkbox-option label{cursor:pointer;margin:0;font-weight:400}.conditional-fields{background:#f9f9f9;padding:15px;border-left:4px solid #667eea;border-radius:6px;margin-top:10px;display:flex;flex-direction:column;gap:15px;animation:slideDown .3s ease}.cep-lookup{display:flex;gap:10px;align-items:flex-end}.cep-input-group{flex:1}.cep-button{background:#667eea;color:#fff;padding:12px 20px;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:all .3s ease}.cep-button:hover:not(:disabled){background:#764ba2;transform:translateY(-2px)}.cep-button:disabled{opacity:.6;cursor:not-allowed}.cep-status{font-size:.85rem;margin-top:-5px}.cep-status.loading{color:#3498db}.cep-status.success{color:#27ae60}.cep-status.error{color:#e74c3c}.button-group{display:flex;gap:15px;margin-top:30px}.btn-back,.btn-next,.btn-submit{flex:1;padding:14px 28px;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-back{background:#e0e0e0;color:#333}.btn-back:hover{background:#d0d0d0;transform:translateY(-2px)}.btn-next,.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-next:hover:not(:disabled),.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 25px #667eea66}.btn-next:disabled,.btn-submit:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#ffebee;border-left:4px solid #e74c3c;color:#c0392b;padding:15px;border-radius:6px;margin-bottom:20px;font-weight:500}.warning-message{background:#fff3cd;border-left:4px solid #f39c12;color:#856404;padding:15px;border-radius:6px;margin-bottom:20px;font-weight:500}.info-message{background:#d1ecf1;border-left:4px solid #17a2b8;color:#0c5460;padding:15px;border-radius:6px;margin-bottom:20px;font-weight:500}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid #f3f3f3;border-top:2px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-right:8px}@media(max-width:768px){.cadastro-publico-page{padding:20px 10px}.cadastro-publico-container{max-width:100%}.form-container{padding:25px}.form-row{grid-template-columns:1fr;gap:15px}.progress-indicator{gap:5px}.step-circle{width:40px;height:40px;font-size:.9rem}.step-label{font-size:.75rem}.button-group{gap:10px}.btn-back,.btn-next,.btn-submit{padding:12px 20px;font-size:.95rem}.profissional-banner{padding:20px}.profissional-banner h2{font-size:1.3rem;margin-bottom:12px}.profissional-info-item{flex-direction:column;gap:5px}.profissional-info-item strong{min-width:auto}}@media(max-width:480px){.form-container{padding:20px}.form-container h3{font-size:1.2rem;margin-bottom:20px}.form-group-radio,.form-group-checkbox{flex-direction:column;gap:10px}.radio-option,.checkbox-option{width:fit-content}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;font-size:16px}.progress-step{gap:5px}.progress-indicator{margin-bottom:20px}.step-circle{width:35px;height:35px;font-size:.8rem;margin-bottom:5px}.step-label{font-size:.7rem}.button-group{flex-direction:column;gap:10px}.btn-back,.btn-next,.btn-submit{padding:12px 16px;font-size:.9rem}.form-row{gap:12px}.form-group{gap:6px}.cep-lookup{flex-direction:column;gap:8px}.cep-button{width:100%}.profissional-banner{padding:15px;margin-bottom:20px}.profissional-banner h2{font-size:1.2rem;margin-bottom:10px}.profissional-info{gap:8px;font-size:.9rem}.conditional-fields{padding:12px;border-left-width:3px;gap:12px}}.dashboard-container{background:transparent;min-height:100vh;padding:24px;font-family:Segoe UI,Arial,sans-serif}.dashboard-title{color:#7e9abf;font-weight:700;letter-spacing:.5px;margin-bottom:16px}.dashboard-card{min-height:200px;border-radius:12px;box-shadow:0 4px 12px #00000014;border:1px solid #e5e7eb;display:flex;flex-direction:column}.dashboard-card .MuiCardContent-root{display:flex;flex-direction:column;flex:1}.card-content-body{flex:1}.dashboard-card .section-title{color:#7e9abf;font-weight:700}.section-divider{margin:8px 0 12px;border:0;height:1px;background:#ebe7e5}.appointment-item{margin-bottom:8px}.dashboard-btn{align-self:flex-start;margin-top:auto;border:none;padding:8px 14px;border-radius:6px;cursor:pointer;font-weight:600;font-size:14px;background:#7e9abf;color:#fff}.dashboard-btn:hover{background:#5f80a6}.resumo-item{color:#374151;font-size:14px;margin:4px 0}.saldo{font-weight:700}.saldo.positivo{color:#16a34a}.saldo.negativo{color:#dc2626}.appointment-modal{border-radius:12px!important;overflow:hidden;max-width:580px!important;width:95%!important;max-height:90vh!important;display:flex;flex-direction:column;--appt-font-size: 15px;font-size:var(--appt-font-size);line-height:1.35}.appointment-form{display:flex;flex-direction:column;height:100%}.appointment-content{flex:1;padding:10px!important;overflow:auto;box-sizing:border-box;max-height:calc(90vh - 120px)}.appointment-actions{border-top:1px solid #eee;padding:8px 12px!important;display:flex;justify-content:flex-end;gap:8px}.appointment-modal .MuiTextField-root,.appointment-modal .MuiFormControl-root{margin-bottom:8px}.appointment-modal .MuiInputBase-input{font-size:.95rem;padding:8px 10px!important}.appointment-modal .MuiDialogTitle-root{font-size:1.15rem;font-weight:600}.appointment-modal .MuiInputLabel-root,.appointment-modal .MuiSelect-root{font-size:.95rem}.appointment-modal .MuiButton-root{font-size:.95rem;text-transform:none}.appointment-modal .MuiFormHelperText-root{font-size:.85rem}html,body,#root{min-height:100%;height:auto;margin:0;overflow:auto}.no-scroll{overflow:hidden!important;height:100vh!important}.calendar-fullscreen{height:100vh;overflow-y:hidden;overflow-x:hidden;display:flex;flex-direction:column}.calendar-wrapper{display:flex;gap:24px;position:relative;height:100%;overflow:hidden}.calendar-container{flex:1;margin-left:0;transition:margin-left .4s cubic-bezier(.4,0,.2,1);height:100%;overflow-y:auto;overflow-x:hidden}.mini-calendar-wrapper{position:relative;padding:40px 8px 8px;flex-shrink:0;width:auto;transition:all .4s cubic-bezier(.4,0,.2,1);transform-origin:left center;opacity:1;max-width:350px;height:100vh;box-sizing:border-box;scrollbar-width:thin;-ms-overflow-style:auto;overflow-y:auto;overflow-x:hidden}.mini-calendar-wrapper::-webkit-scrollbar-thumb{background:#f1f1f1;border-radius:3px;transition:background-color .3s ease}.mini-calendar-wrapper:hover::-webkit-scrollbar-thumb{background:#888}.mini-calendar-wrapper:hover::-webkit-scrollbar-thumb:hover{background:#555}.mini-calendar-wrapper{scrollbar-color:#f4f6fb #f4f6fb;transition:scrollbar-color .3s ease}.mini-calendar-wrapper:hover{scrollbar-color:#888 #f1f1f1}.mini-calendar-wrapper::-webkit-scrollbar{width:6px}.mini-calendar-wrapper::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.mini-calendar-wrapper::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.mini-calendar-wrapper::-webkit-scrollbar-thumb:hover{background:#555}.mini-calendar-wrapper.hidden{max-width:0;opacity:0;padding-left:0;padding-right:0;margin-right:-24px;overflow:hidden}.mini-calendar-wrapper.hidden~.calendar-container{margin-left:60px}.sidebar-content{display:flex;flex-direction:column;gap:12px;padding-bottom:20px}.sidebar-toggle-btn{position:fixed;top:30px;left:10px;z-index:1001;padding:6px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:6px;font-size:14px;color:#374151;box-shadow:0 2px 4px #0000001a;transition:all .2s cubic-bezier(.4,0,.2,1)}.sidebar-toggle-btn:hover{background:#f9fafb;box-shadow:0 4px 6px #00000026;transform:translateY(-1px)}.sidebar-toggle-btn:active{transform:translateY(0)}.calendar-container .fc{height:100%!important}.event-content{display:flex;flex-direction:column;align-items:flex-start}.event-title{font-weight:700}.event-time{font-size:.9em;color:#fff}.day-header-container{display:flex;flex-direction:column;align-items:center}.day-header{font-size:.9em;text-transform:capitalize;color:#333}.day-header-today{color:#1976d2;font-weight:700}.day-number{font-size:1.2em;font-weight:700;display:inline-block;width:40px;line-height:40px;border-radius:50%;color:#333;text-align:center}.day-number-today{background:#1976d2;color:#fff;box-shadow:0 2px 8px #1976d226;transition:background .2s,color .2s}.fc-timegrid-now-indicator-line{border-color:#e53935!important;border-width:2px!important}.fc-timegrid-now-indicator-arrow{border-top-color:#e53935!important;border-bottom-color:#e53935!important}.week-summary-card{margin-top:0;margin-bottom:30px;padding:8px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;box-shadow:0 1px 2px #0000000a}.week-summary-title{font-weight:600;color:#374151;margin-bottom:8px}.week-summary-row{display:flex;justify-content:space-between;padding:4px 0;color:#4b5563}.week-summary-toggle{margin-top:4px;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#374151;cursor:pointer;font-size:13px;transition:all .2s ease}.week-summary-toggle:hover{background:#f9fafb;transform:translateY(-1px)}.calendar-legend{background:#fff;border-radius:8px;padding:12px;margin:8px 0;box-shadow:0 2px 4px #0000001a;max-width:100%;box-sizing:border-box;transition:scrollbar-color .3s ease;scrollbar-color:white white}.calendar-legend:hover{scrollbar-color:#888 #f1f1f1}.legend-title{font-weight:600;font-size:14px;margin-bottom:12px;color:#333}.legend-items{max-height:180px;overflow-y:visible;overflow-x:hidden;padding-right:4px}.legend-section{margin-bottom:16px}.legend-section:last-child{margin-bottom:0}.legend-section-title{font-weight:600;font-size:12px;color:#666;margin-bottom:8px;text-transform:uppercase}.legend-item{display:flex;align-items:center;gap:8px;margin-bottom:6px}.legend-color{width:16px;height:16px;border-radius:3px;flex-shrink:0}.legend-label{font-size:13px;color:#555;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fc-scrollgrid-sync-table,.fc-timegrid-slots table,.fc-timegrid-cols table{width:100%!important}.fc-timegrid-slot,.fc-timegrid-col{border-right:1px solid #e5e7eb!important}.fc-timegrid-col:last-child{border-right:1px solid #e5e7eb!important}.fc-scrollgrid-section-body>td{padding-right:0!important}.fc-timegrid-axis-chunk,.fc-timegrid-slots,.fc-timegrid-cols{width:100%!important}.mini-calendar-wrapper .MuiPickersLayout-root{max-height:220px}.mini-calendar-wrapper .MuiDateCalendar-root{height:auto;max-height:280px}.mini-calendar-wrapper .MuiPickersCalendarHeader-root{padding-top:5px;padding-bottom:4px;margin-top:0;margin-bottom:4px}.mini-calendar-wrapper .MuiDayCalendar-header{padding-bottom:4px}.mini-calendar-wrapper .MuiPickersDay-root{width:32px;height:32px;font-size:.875rem}.mini-calendar-wrapper .MuiDayCalendar-weekContainer{margin:2px 0}.mini-calendar-wrapper .MuiPickersSlideTransition-root{min-height:200px}body{background:#f4f6fb}.calendar-container{height:calc(100vh - 40px);max-height:calc(100vh - 40px);background:#fff;border-radius:16px;box-shadow:0 4px 24px #3c485814;padding-left:20px;margin-right:10px;min-height:unset;display:flex;flex-direction:column;overflow:hidden}.fc-scroller-harness,.fc-scroller{overflow-y:auto!important;max-height:100%!important}.fc{height:100%!important}body,.calendar-container,.fc{font-family:Inter,Roboto,Arial,sans-serif}.fc-event{display:flex;flex-direction:column;justify-content:center;border-radius:8px!important;box-shadow:0 2px 8px #3c485814;border:none!important;padding:6px 10px!important;color:#222!important;font-weight:600;transition:box-shadow .2s;text-align:center}.fc-event:hover{box-shadow:0 4px 16px #3c485829;opacity:1}.fc-event-time{font-size:.9em;font-weight:700}.fc-event-title{font-size:.85em}.fc-event,.fc-event-title,.fc-event-time{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fc-toolbar-title{font-size:1.2em!important;text-transform:capitalize}.fc-button{background:#f4f6fb!important;color:#1976d2!important;border:none!important;border-radius:8px!important;font-weight:500!important;box-shadow:none!important;transition:background .2s}.fc-button:hover,.fc-button-active{background:#e3f0ff!important;color:#1976d2!important}.fc .fc-daygrid-day:hover,.fc .fc-timegrid-col:hover{background:#f4f6fb!important;border-radius:12px;cursor:pointer}.fc .fc-col-header-cell.fc-day-today{border-radius:12px;color:#1976d2!important;font-weight:700}.fc-today-button{text-transform:capitalize!important}.fc-timegrid-slot{height:40px!important}.fc-timegrid-slot-label{font-size:.85em}.fc .fc-col-header-cell{text-align:center;font-weight:500;font-size:1.1em}.fc .fc-day-today,.fc .fc-timegrid-col.fc-day-today,.fc .fc-daygrid-day.fc-day-today{background:transparent!important}.fc .fc-col-header-cell{padding:8px 0}.fc .fc-col-header-cell-cushion{display:flex;flex-direction:column;align-items:center}.fc-theme-standard .fc-scrollgrid{border:none}.mini-calendar-wrapper .MuiPickersLayout-root,.mini-calendar-wrapper .MuiPickersStaticWrapper-root,.mini-calendar-wrapper .MuiPaper-root.MuiPaper-elevation{min-width:0!important;border-radius:16px;height:250px;width:300px!important;max-width:300px!important}.MuiPickersDay-root{font-size:.9rem!important;margin:0 2px!important;height:20px!important;align-items:center}.mini-calendar-wrapper .MuiPaper-root{border-radius:16px!important;box-shadow:0 2px 8px #3c485814!important;background:#fff!important}.atendimentos-container{background:#fff;padding:32px;border-radius:16px;box-shadow:0 4px 12px #00000014;font-family:Segoe UI,Arial,sans-serif;max-width:1300px;margin:0 auto;font-size:16px;font-weight:700}.atendimentos-container h2{color:#7e9abf;margin-bottom:24px;font-weight:700;font-size:30px;letter-spacing:1px}.filtros{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:12px;background:#fff;border-radius:8px;border:1px solid #e5e7eb;align-items:flex-end}.filtro-group{display:flex;flex-direction:column;gap:6px;min-width:160px;flex:1 1 160px;place-self:flex-start}.filtro-group label{font-weight:600;color:#374151;font-size:14px;font-weight:700}.filtro-group select{padding:10px 12px;border-radius:4px;border:1px solid #d1d5db;background:#fff;color:#374151;height:40px;width:100%;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:550;font-size:9px}.filtro-group select option{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#374151}.filtro-actions{display:flex;gap:12px;align-items:center;flex:0 0 auto;margin-left:clamp(12px,4vw,40px)}.filtro-actions .btn{min-width:100px;padding:5px 12px;border-radius:4px;font-size:12px;font-weight:700;height:28px}.btn-outline{background:#edf2fb;color:#4c6b9f}.btn-outline:hover{background:#d7e3f6}@media(max-width:820px){.filtro-actions{margin-left:0;width:100%;justify-content:flex-start}}.profissional-header{background:#7e9abf;font-weight:700;text-align:center}.atendimentos-tabela{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 4px #0000000d}.atendimentos-tabela th{background:#f3f4f6;color:#374151;font-weight:600;text-align:left;border-bottom:2px solid #e5e7eb}.atendimentos-tabela tr:nth-child(2n){background:#fafafa}.paciente-link{color:#000;font-weight:600;cursor:pointer;text-decoration:none;position:relative;transition:color .2s ease}.paciente-link:after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:currentColor;transition:width .2s ease}.paciente-link:hover{color:#1e4fa0}.paciente-link:hover:after{width:100%}.resumo-atendimentos{display:flex;gap:16px;margin-top:20px;margin-bottom:20px}.resumo-atendimentos .card{flex:1;padding:14px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;font-weight:600;text-align:center;box-shadow:0 1px 3px #0000000d}.resumo-atendimentos .card-recebido{flex:1;padding:14px;background:#f9fafb;color:#166534;border-radius:8px;border:1px solid #e5e7eb;font-weight:600;text-align:center;box-shadow:0 1px 3px #0000000d}.resumo-atendimentos .card-aberto{flex:1;padding:14px;background:#f9fafb;color:#991b1b;border-radius:8px;border:1px solid #e5e7eb;font-weight:600;text-align:center;box-shadow:0 1px 3px #0000000d}.btn,.btn-primary,.btn-danger{border:none;padding:8px 14px;border-radius:6px;cursor:pointer}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.valor-pago-input{display:flex;align-items:center;gap:4px;width:100%;max-width:120px;border:1px solid #d1d5db;border-radius:6px;background:#fff;padding:4px 6px;box-sizing:border-box;min-width:0}.valor-pago-input .prefixo{font-weight:600;color:#374151;font-size:12px;flex-shrink:0;white-space:nowrap}.valor-pago-input input{flex:1;min-width:0;border:none;outline:none;font-weight:700;font-size:13px;text-align:right;background:transparent;padding:0}.valor-pago-input input::-webkit-outer-spin-button,.valor-pago-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.valor-pago-input input[type=number]{appearance:textfield;-moz-appearance:textfield}.situacao-pago,.situacao-parcial,.situacao-aberto,.situacao-pendente{display:inline-flex;align-items:center;justify-content:center;min-width:96px;line-height:1;padding:6px 10px;border-radius:6px;font-weight:600}.situacao-pago{background:#dcfce7;color:#166534}.situacao-parcial{background:#fef9c3;color:#92400e}.situacao-aberto,.situacao-pendente{background:#fee2e2;color:#991b1b}.situacao-cell{display:flex;align-items:center;justify-content:center;padding:12px;border-top:1px solid #e5e7eb;background:transparent}.situacao-badge{display:inline-flex;align-items:center;justify-content:center;min-width:96px;line-height:1;padding:6px 10px;border-radius:6px;font-weight:600}.situacao-pago .situacao-badge{background:#dcfce7;color:#166534}.situacao-parcial .situacao-badge{background:#fef9c3;color:#92400e}.situacao-aberto .situacao-badge,.situacao-pendente .situacao-badge{background:#fee2e2;color:#991b1b}.filtro-group input::placeholder{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:12px;font-weight:600;color:#7d7b7b;font-style:italic}.filtro-group input{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#374151;padding:10px 12px;border-radius:4px;border:1px solid #d1d5db;font-size:8px;height:40px;width:100%;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.atendimentos-tabela{width:100%;table-layout:auto;min-width:720px}.atendimentos-tabela td{box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;padding:12px;border-top:1px solid #e5e7eb;color:#374151;font-size:14px;vertical-align:middle}.atendimentos-tabela th{box-sizing:border-box;position:relative;padding:12px}.column-header{display:flex;align-items:center;justify-content:space-between;position:relative;height:100%;width:100%}.column-header span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:break-word}.column-resizer{position:absolute;right:-4px;top:0;bottom:0;cursor:col-resize;-webkit-user-select:none;user-select:none;padding:0 4px;background-color:transparent;opacity:.15;transition:opacity .2s ease}.column-resizer:hover{opacity:.7;width:1px;background-color:#7e9abf}.column-resizer:active{opacity:1;width:1px;background-color:#7e9abf}body.resizing-column{cursor:col-resize;-webkit-user-select:none;user-select:none}.atendimentos-tabela th:nth-child(4),.atendimentos-tabela td:nth-child(4){text-align:center}.situacao-badge{min-width:72px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.resumo-atendimentos{display:flex;gap:16px;flex-wrap:wrap;margin-top:20px;margin-bottom:20px}.resumo-atendimentos .card,.resumo-atendimentos .card-recebido,.resumo-atendimentos .card-aberto{flex:1 1 160px;min-width:0;text-align:center}@media(max-width:820px){.atendimentos-container{padding:18px}.atendimentos-tabela{min-width:640px}.atendimentos-tabela th,.atendimentos-tabela td{font-size:13px;padding:8px}.valor-pago-input{width:80px}.situacao-badge{min-width:64px;font-size:12px;padding:4px 8px}}@media(max-width:420px){.atendimentos-tabela th:nth-child(1),.atendimentos-tabela td:nth-child(1){white-space:normal;word-break:break-word}}.despesas-container{background:#fff;padding:32px;border-radius:16px;box-shadow:0 4px 12px #00000014;font-family:Segoe UI,Arial,sans-serif;max-width:1200px;margin:0 auto;font-size:large}.filtros{display:flex;gap:16px;margin-bottom:20px;padding:12px;background:#fff;border-radius:8px;border:1px solid #e5e7eb}.filtros select,.filtros input{padding:8px 12px;border-radius:6px;border:1px solid #d1d5db;background:#fff;font-size:18px;color:#374151}.filtro-botoes{display:flex;gap:10px;align-items:flex-end;font-size:18px}.resumo-financeiro{display:flex;gap:16px;margin:20px 0}.resumo-financeiro .card{flex:1;padding:14px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;font-weight:600;box-shadow:0 1px 3px #0000000d}.resumo-financeiro .card-recebido{flex:1;padding:14px;background:#f9fafb;color:#166534;border-radius:8px;border:1px solid #e5e7eb;font-weight:600;box-shadow:0 1px 3px #0000000d}.resumo-financeiro .card-receber{flex:1;padding:14px;background:#f9fafb;color:#991b1b;border-radius:8px;border:1px solid #e5e7eb;font-weight:600;box-shadow:0 1px 3px #0000000d}.resumo-financeiro .card span,.resumo-financeiro .card-recebido span,.resumo-financeiro .card-receber span{display:block;font-size:18px}.resumo-financeiro .card.saldo span{color:#16a34a}.resumo-financeiro .card.saldo.negativo span{color:#dc2626}.despesas-tabela{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 4px #0000000d}.despesas-tabela th{background:#f3f4f6;color:#374151;font-weight:600;padding:12px 10px;text-align:left}.despesas-tabela td{padding:12px 10px;border-top:1px solid #e5e7eb;color:#374151;font-weight:700}.despesas-tabela tr:nth-child(2n){background:#fafafa}.tag-recorrente{background:#dbeafe;color:#1e3a8a;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:600}.tag-unica{background:#f3f4f6;color:#6b7280;padding:4px 8px;border-radius:6px;font-size:12px;font-weight:600}.btn,.btn-primary,.btn-danger{border:none;padding:8px 14px;border-radius:6px;cursor:pointer;font-weight:600;font-size:14px}.btn{background:#7e9abf;color:#fff}.btn:hover{background:#5f80a6}.btn-primary{background:#7e9abf;color:#fff}.btn-primary:hover{background:#5f80a6}.btn-danger{background:#853535;color:#fff}.btn-danger:hover{background:#d17878}.modal-overlay{position:fixed;inset:0;background:#0000004d;display:flex;justify-content:center;align-items:center}.modal{background:#fff;padding:20px;border-radius:12px;width:400px;display:flex;flex-direction:column;gap:10px}.modal input,.modal select{padding:8px;border:1px solid #d1d5db;border-radius:6px}.acoes-tabela{display:flex;gap:10px;align-items:center}@media(max-width:540px){.acoes-tabela{flex-wrap:wrap}}.despesas-container h3{font-weight:600}.despesas-titulo{margin-top:16px;margin-bottom:8px;display:flex;justify-content:center;color:#374151}.despesas-tabela{width:100%;table-layout:fixed;min-width:600px}.despesas-tabela th,.despesas-tabela td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;box-sizing:border-box}.despesas-tabela th:nth-child(1){width:30%}.despesas-tabela th:nth-child(2){width:15%}.despesas-tabela th:nth-child(3){width:15%}.despesas-tabela th:nth-child(4){width:20%}.despesas-tabela th:nth-child(5){width:20%}.tag-recorrente,.tag-unica{display:inline-block;min-width:72px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.resumo-financeiro{display:flex;gap:16px;flex-wrap:wrap;margin:20px 0}.resumo-financeiro .card,.resumo-financeiro .card-recebido,.resumo-financeiro .card-receber{flex:1 1 160px;min-width:0;text-align:center}@media(max-width:820px){.despesas-container{padding:18px}.despesas-tabela{min-width:500px}.despesas-tabela th,.despesas-tabela td{font-size:13px;padding:8px}.tag-recorrente,.tag-unica{min-width:64px;font-size:12px;padding:4px 8px}}@media(max-width:420px){.despesas-tabela th:nth-child(1),.despesas-tabela td:nth-child(1){white-space:normal;word-break:break-word}}.registration-link-manager{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 20px #00000014;margin:20px 0}.registration-link-manager h2{color:#333;margin-top:0;margin-bottom:25px;font-size:1.8rem;border-bottom:2px solid #667eea;padding-bottom:15px}.registration-link-manager h3{color:#333;margin-top:25px;margin-bottom:15px;font-size:1.2rem;font-weight:600}.registration-link-manager h4{color:#333;margin-top:0;margin-bottom:10px;font-size:1.1rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:15px}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.alert{padding:15px;border-radius:8px;margin-bottom:20px;font-weight:500;animation:slideDown .3s ease}.alert-error{background:#ffebee;color:#c0392b;border-left:4px solid #e74c3c}.alert-success{background:#f0fff4;color:#27ae60;border-left:4px solid #27ae60}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.link-container{display:flex;flex-direction:column;gap:25px}.status-badge{display:inline-block;padding:8px 16px;border-radius:20px;font-weight:600;font-size:.95rem;width:fit-content}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.link-section{background:#f9f9f9;padding:20px;border-radius:8px;border:1px solid #e0e0e0}.link-display{display:flex;gap:10px;margin-bottom:12px}.link-input{flex:1;padding:12px 15px;border:2px solid #e0e0e0;border-radius:6px;font-family:Courier New,monospace;font-size:.9rem;background:#fff;color:#333;word-break:break-all}.link-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.btn-copy{padding:12px 20px;background:#667eea;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.btn-copy:hover:not(:disabled){background:#764ba2;transform:translateY(-2px);box-shadow:0 5px 15px #667eea4d}.btn-copy:disabled{opacity:.6;cursor:not-allowed}.link-hint{color:#666;font-size:.9rem;margin:0}.qr-section{background:#f9f9f9;padding:20px;border-radius:8px;border:1px solid #e0e0e0}.qr-toggle{margin-bottom:15px}.btn-toggle-qr{padding:10px 20px;background:#f0f0f0;color:#333;border:2px solid #e0e0e0;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-toggle-qr:hover{background:#e0e0e0;border-color:#667eea}.qr-display{display:flex;flex-direction:column;align-items:center;padding:20px;background:#fff;border-radius:8px;border:1px solid #e0e0e0;animation:fadeIn .3s ease}.qr-code{max-width:250px;height:auto;margin-bottom:15px;border:2px solid #e0e0e0;padding:10px;border-radius:8px;background:#fff}.qr-hint{color:#666;font-size:.9rem;margin:0;text-align:center}.statistics-section{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:20px;border-radius:8px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-top:15px}.stat-card{background:#fff;padding:20px;border-radius:8px;text-align:center;box-shadow:0 2px 8px #00000014;transition:all .3s ease}.stat-card:hover{transform:translateY(-3px);box-shadow:0 5px 15px #0000001f}.stat-number{font-size:2rem;font-weight:700;color:#667eea;margin-bottom:10px}.stat-date{font-size:1.1rem;font-weight:600;color:#667eea;margin-bottom:10px}.stat-label{font-size:.9rem;color:#666;font-weight:500}.actions-section{background:#f9f9f9;padding:20px;border-radius:8px;border:1px solid #e0e0e0}.button-group{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:15px}.btn-action{padding:12px 20px;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.btn-action:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #00000026}.btn-action:disabled{opacity:.6;cursor:not-allowed}.btn-activate{background:#27ae60;color:#fff}.btn-activate:hover:not(:disabled){background:#229954}.btn-deactivate{background:#e74c3c;color:#fff}.btn-deactivate:hover:not(:disabled){background:#c0392b}.btn-regenerate{background:#f39c12;color:#fff}.btn-regenerate:hover:not(:disabled){background:#e67e22}.action-hint{color:#e67e22;font-size:.9rem;margin:0;font-weight:500}.info-box{background:#e8f4f8;border-left:4px solid #17a2b8;padding:20px;border-radius:8px}.info-box ul{margin:0;padding-left:20px;color:#0c5460}.info-box li{margin-bottom:10px;font-size:.95rem;line-height:1.5}.info-box li:last-child{margin-bottom:0}@media(max-width:768px){.registration-link-manager{padding:20px}.registration-link-manager h2{font-size:1.5rem;margin-bottom:20px}.link-display{flex-direction:column}.btn-copy{width:100%}.stats-grid{grid-template-columns:1fr}.button-group{flex-direction:column}.btn-action{width:100%;text-align:center}}@media(max-width:480px){.registration-link-manager{padding:15px}.registration-link-manager h2{font-size:1.3rem;margin-bottom:15px}.registration-link-manager h3{font-size:1.1rem;margin-top:20px;margin-bottom:12px}.link-section,.qr-section,.actions-section{padding:15px}.link-input{font-size:.85rem;padding:10px 12px}.btn-copy{padding:10px 15px;font-size:.9rem}.stat-number{font-size:1.5rem}.info-box{padding:15px}}.lista-container{padding:2rem;font-size:x-large;font-weight:700}.pacientes-header{display:flex;justify-content:flex-end;margin-bottom:1rem}.header-buttons{display:flex;gap:12px;align-items:center}.cadastrar-btn{padding:8px 16px;background:#28a745;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:large;font-weight:700;width:auto;height:auto}.cadastrar-btn:hover{background:#218838}.gerar-link-btn{padding:8px 16px;background:#667eea;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:large;font-weight:700;width:auto;height:auto}.gerar-link-btn:hover{background:#764ba2}.tabela-pacientes th,.tabela-pacientes td{border:1px solid #ddd;padding:10px;text-align:left}.tabela-pacientes th:nth-child(2),.tabela-pacientes td.cpf-cell{width:200px;text-align:left}.tabela-pacientes th{background-color:#f8f9fa;font-weight:700}.tabela-pacientes tr:nth-child(2n){background-color:#f2f2f2}.tabela-pacientes tr:hover{background-color:#e6f7ff}.error-text{color:red}.olhinho-btn{margin-left:8px;background:transparent;border:none;cursor:pointer;color:gray;flex-shrink:0}.olhinho-btn:hover{color:#000}.editar-btn{padding:6px 12px;background:#7e9abf;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:medium;font-weight:700}.editar-btn:hover{background:#5f80a6}.prontuario-btn{padding:6px 12px;background:#28a745;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:medium;font-weight:700}.prontuario-btn:hover{background:#218838}.cpf-cell{white-space:nowrap;padding:10px;border:1px solid #ddd}.cpf-container{display:flex;align-items:center;justify-content:space-between;width:100%}.cpf-text{flex:1;font-family:monospace;font-size:14px;overflow:hidden;text-overflow:ellipsis}.acoes-cell{padding:10px;border:1px solid #ddd;text-align:left;vertical-align:middle;white-space:nowrap}.acoes-container{display:flex;align-items:center;justify-content:flex-start;gap:8px}.deletar-btn{padding:6px 12px;background:#853535;color:#fff;border:none;border-radius:5px;cursor:pointer;font-size:medium;font-weight:700}.deletar-btn:hover{background:#d17878}.tabela-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.tabela-pacientes{width:100%;border-collapse:collapse;table-layout:fixed;font-size:large;font-weight:700}.tabela-pacientes th,.tabela-pacientes td{border:1px solid #ddd;padding:10px;text-align:left;overflow-wrap:anywhere;word-break:break-word;box-sizing:border-box}.cpf-container{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px}.cpf-text{flex:1 1 auto;min-width:0;font-family:monospace;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.olhinho-btn{margin-left:8px;background:transparent;border:none;cursor:pointer;color:gray;flex:0 0 auto}.acoes-container{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap}.editar-btn,.prontuario-btn,.deletar-btn,.cadastrar-btn{white-space:nowrap;flex:0 1 auto}@media(max-width:600px){.lista-container{padding:1rem;font-size:large}.tabela-pacientes th,.tabela-pacientes td{font-size:.95rem;padding:8px}.editar-btn,.prontuario-btn,.deletar-btn{padding:6px 8px;font-size:.85rem}.cadastrar-btn{padding:6px 10px;font-size:.9rem}.olhinho-btn svg{width:16px;height:16px}.header-buttons{gap:8px}.gerar-link-btn{padding:6px 10px;font-size:.9rem}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 4px 6px #0000001a;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:10px;right:10px;background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s ease,color .2s ease;z-index:1}.modal-close:hover{background:#f0f0f0;color:#333}.detalhes-container{padding:2rem;max-width:1000px;margin:0 auto}.detalhes-container h2{margin-bottom:20px}.form{display:flex;flex-direction:column;gap:1.5rem}label{font-weight:700}input,select{padding:8px;border:1px solid #ddd;border-radius:4px}button{padding:10px;margin-top:10px;background:#007bff;color:#fff;border:none;cursor:pointer;border-radius:4px}.botoes-container{display:flex;gap:10px;align-items:center}.btn-salvar{background:#7e9abf;width:150px}.btn-salvar:hover{background:#5f80a6}.btn-voltar{background:#853535;width:150px}.btn-voltar:hover{background:#d17878}button:hover{background:#0056b3}.error{color:red;margin-bottom:10px}.success{color:green;margin-bottom:10px}.tabs-container{display:flex;gap:0;margin-bottom:2rem;border-bottom:2px solid #ddd}.tab-button{padding:12px 20px;background:#f5f5f5;border:none;cursor:pointer;font-size:14px;font-weight:500;color:#555;border-bottom:3px solid transparent;transition:all .3s ease;margin-bottom:-2px}.tab-button:hover{background:#e9e9e9}.tab-button.active{background:#fff;color:#007bff;border-bottom-color:#007bff}.assessment-overview-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.card-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1rem}.card-row:last-child{margin-bottom:0}.card-item{display:flex;flex-direction:column;gap:.5rem}.card-item label{font-weight:600;font-size:13px;color:#666;text-transform:uppercase;letter-spacing:.5px}.card-item p{font-size:16px;color:#333;margin:0;padding:8px;background:#fff;border-radius:4px;border:1px solid #e0e0e0;min-height:38px;display:flex;align-items:center}textarea{padding:8px;border:1px solid #ddd;border-radius:4px;font-family:inherit;resize:vertical}.sessoes-table-container{overflow-x:auto;margin-bottom:2rem;border:1px solid #e0e0e0;border-radius:8px;width:100%}.sessoes-table{width:100%;min-width:1000px;border-collapse:collapse;background:#fff;table-layout:auto}.sessoes-table thead{background:#f5f5f5;border-bottom:2px solid #ddd;position:sticky;top:0}.sessoes-table th{padding:16px;text-align:left;font-weight:600;font-size:12px;color:#333;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.sessoes-table td{padding:16px;border-bottom:1px solid #e0e0e0;font-size:14px;color:#555;vertical-align:middle}.sessoes-table tbody tr{transition:background-color .2s ease}.sessoes-table tbody tr:hover{background:#fafafa}.sessoes-table td.truncate{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sessoes-table td.acoes-cell{display:flex;gap:10px;align-items:center;white-space:nowrap}.btn-editar-sm,.btn-deletar-sm,.btn-salvar-sm,.btn-cancelar-sm,.btn-novo-registro{padding:8px 12px;font-size:12px;border:none;border-radius:4px;cursor:pointer;transition:all .3s ease}.btn-novo-registro{background:#28a745;color:#fff;padding:10px 20px;font-size:14px}.btn-novo-registro:hover:not(:disabled){background:#218838}.btn-novo-registro:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.btn-editar-sm{background:#007bff;color:#fff}.btn-editar-sm:hover{background:#0056b3}.btn-deletar-sm{background:#dc3545;color:#fff}.btn-deletar-sm:hover{background:#c82333}.btn-salvar-sm{background:#28a745;color:#fff}.btn-salvar-sm:hover:not(:disabled){background:#218838}.btn-cancelar-sm{background:#6c757d;color:#fff}.btn-cancelar-sm:hover:not(:disabled){background:#5a6268}.sessao-form-container{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:2rem;margin-top:2rem}.sessao-form-container h4{margin-top:0;margin-bottom:2rem;color:#333;font-size:16px;font-weight:600}.sessao-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem 1.5rem;margin-bottom:2rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;font-size:14px;color:#333}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-group textarea{resize:vertical;min-height:60px}.form-group-full{grid-column:1 / -1}.form-buttons{display:flex;gap:10px;margin-top:0;padding-top:1.5rem;border-top:1px solid #e0e0e0}.sem-dados{text-align:center;color:#999;padding:2rem;background:#f9f9f9;border:1px dashed #ddd;border-radius:8px}.cpf-edit-container input{flex:1}.olhinho-btn{padding:8px 12px;background:#f5f5f5;border:1px solid #ddd;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center}.olhinho-btn:hover{background:#e9e9e9}.breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:14px;color:#666}.breadcrumb-link{color:#007bff;cursor:pointer;text-decoration:none;transition:color .2s ease}.breadcrumb-link:hover{color:#0056b3;text-decoration:underline}.breadcrumb-separator{color:#ccc;margin:0 .25rem}.breadcrumb-current{color:#333;font-weight:500}.avaliacao-selector{display:flex;align-items:flex-end;gap:1rem;margin-bottom:2rem;padding:1.5rem;background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px}.avaliacao-selector label{font-weight:600;font-size:14px;color:#333;margin-bottom:0;white-space:nowrap}.avaliacao-selector select{flex:1;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;min-width:250px}.avaliacao-selector select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.avaliacao-selector .btn-deletar-sm{flex-shrink:0;margin-bottom:0}.prontuario-container{padding:20px;max-width:1200px;margin:0 auto}.breadcrumb{display:flex;align-items:center;gap:10px;margin-bottom:20px;font-size:14px;color:#666}.breadcrumb a{color:#007bff;cursor:pointer;text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.alert{padding:12px 16px;margin-bottom:20px;border-radius:4px;font-size:14px}.alert-danger{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.alert-success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.loading{text-align:center;padding:40px;font-size:16px;color:#666}.error{text-align:center;padding:40px;font-size:16px;color:#d32f2f}.no-prontuario{text-align:center;padding:40px;background:#f5f5f5;border-radius:4px;margin-top:20px}.no-prontuario h3{margin-bottom:20px;color:#333}.btn{padding:10px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .3s ease}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.tabs-container{background:#fff;border-radius:4px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;width:100%}.tabs-header{display:flex;border-bottom:2px solid #e0e0e0;overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:wrap;width:100%}.tab-button{flex:0 1 auto;padding:14px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:14px;font-weight:500;color:#666;transition:all .3s ease;white-space:nowrap;min-width:auto}.tab-button:hover{color:#007bff;background-color:#f5f5f5}.tab-button.active{color:#007bff;border-bottom-color:#007bff}.tabs-content{padding:20px;min-height:400px;display:block;width:100%;flex:1}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:14px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.form-group textarea{resize:vertical;min-height:100px}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.dados-prontuario{max-width:800px}.info-section{margin-bottom:30px}.info-section h4{margin-bottom:16px;color:#333;font-size:16px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px}.info-item{padding:12px;background:#f9f9f9;border-radius:4px;border:1px solid #e0e0e0}.info-item label{display:block;font-weight:600;color:#666;font-size:12px;text-transform:uppercase;margin-bottom:4px}.info-item span{display:block;color:#333;font-size:14px}.sub-tabs{display:flex;gap:8px;border-bottom:1px solid #e0e0e0;margin:0 -20px 20px;padding:0 20px}.sub-tab-button{padding:12px 16px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:14px;color:#666;transition:all .3s ease}.sub-tab-button:hover{color:#007bff}.sub-tab-button.active{color:#007bff;border-bottom-color:#007bff}.sub-tab-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.sessions-table{width:100%;border-collapse:collapse;margin-top:16px}.sessions-table th,.sessions-table td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0;font-size:14px}.sessions-table th{background-color:#f5f5f5;font-weight:600;color:#333}.sessions-table tbody tr:hover{background-color:#fafafa}.timeline{position:relative;padding-left:20px}.timeline-item{margin-bottom:24px;padding-left:20px;position:relative}.timeline-item:before{content:"";position:absolute;left:-28px;top:8px;width:12px;height:12px;background-color:#007bff;border-radius:50%;border:2px solid white;box-shadow:0 0 0 2px #007bff}.timeline-item:after{content:"";position:absolute;left:-22px;top:20px;bottom:-24px;width:2px;background-color:#e0e0e0}.timeline-item:last-child:after{display:none}.timeline-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.tipo-anotacao{display:inline-block;padding:4px 8px;background-color:#e3f2fd;color:#1976d2;border-radius:3px;font-size:12px;font-weight:600}.timeline-header .data{font-size:12px;color:#999}.btn-delete{background:none;border:none;color:#d32f2f;cursor:pointer;font-size:20px;padding:0;margin-left:auto;transition:color .3s ease}.btn-delete:hover{color:#b71c1c}.timeline-content{background:#f9f9f9;padding:12px;border-radius:4px;border-left:3px solid #007bff}.timeline-content p{margin:4px 0;font-size:14px;color:#333}.timeline-content strong{color:#666}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:16px}.document-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:4px;padding:16px;transition:all .3s ease}.document-card:hover{box-shadow:0 2px 8px #0000001a;border-color:#007bff}.document-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tipo-doc{display:inline-block;padding:4px 8px;background-color:#f3e5f5;color:#7b1fa2;border-radius:3px;font-size:12px;font-weight:600}.document-card h5{margin:8px 0;color:#333;font-size:16px}.document-meta{color:#999;font-size:12px;margin-bottom:8px}.document-content{color:#666;font-size:14px;line-height:1.5;max-height:150px;overflow-y:auto}.evolucao-form,.documentacao-form{background:#f9f9f9;padding:16px;border-radius:4px;margin-bottom:20px;border:1px solid #e0e0e0}.evolucao-form h4,.documentacao-form h4{margin-bottom:16px;color:#333}@media(max-width:768px){.tabs-header{overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-button{min-width:120px;padding:12px;font-size:13px}.prontuario-container,.tabs-content{padding:12px}.form-row,.info-grid,.documents-grid{grid-template-columns:1fr}.sub-tabs{margin:0 -12px 20px;padding:0 12px}}.editar-perfil-layout{display:flex;gap:24px;max-width:1100px;margin:0 auto;padding:24px;align-items:flex-start}.editar-perfil-sidebar{width:220px;background:#f7f7f7;border-radius:8px;padding:16px;box-shadow:0 2px 6px #0000000d}.editar-perfil-sidebar h3{margin:0 0 12px;font-size:1.1rem}.editar-perfil-sidebar nav{display:flex;flex-direction:column;gap:8px}.editar-perfil-sidebar button{background:transparent;border:none;text-align:left;padding:10px 12px;border-radius:6px;cursor:pointer;color:#333;font-weight:600}.editar-perfil-sidebar button:hover{background:#e9eef8}.editar-perfil-sidebar button.active{background:#1976d2;color:#fff}.editar-perfil-content{flex:1;background:#fff;padding:18px;border-radius:8px;box-shadow:0 2px 6px #0000000a}.section-form h2{margin-top:0}.form-group{margin-bottom:14px}.form-group label{display:block;font-weight:600;margin-bottom:6px}.form-group input{width:95%;padding:8px 10px;border:1px solid #ddd;border-radius:6px}.form-group select{width:98%;padding:8px 10px;border:1px solid #ddd;border-radius:6px}.cpf-edit-container{display:flex;gap:8px;align-items:center}.olhinho-btn{background:transparent;border:none;cursor:pointer;padding-left:0;padding-bottom:20px;display:inline-flex;align-items:center;justify-content:center}.button-container{display:flex;gap:12px;margin-top:18px}.submit-button,.voltar-btn{padding:10px 18px;border-radius:8px;font-size:14px;font-weight:600;border:none;cursor:pointer}.submit-button{background-color:#1976d2;color:#fff}.submit-button:disabled{opacity:.6;cursor:not-allowed}.error-message{color:#b00020;background:#ffe6ea;padding:10px;border-radius:6px;margin-bottom:12px}.success-message{color:#155724;background:#e9f7ef;padding:10px;border-radius:6px;margin-bottom:12px}@media(max-width:900px){.editar-perfil-layout{flex-direction:column;padding:16px}.editar-perfil-sidebar{width:100%;display:flex;gap:8px;overflow-x:auto}.editar-perfil-sidebar nav{flex-direction:row}}
