.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:#f0f2f5;padding:1rem}.login-card{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:450px;overflow:hidden;animation:slide-up .4s ease-out forwards}@keyframes slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.login-header{text-align:center;padding:2rem 1rem;border-bottom:1px solid #eee}.login-logo{max-width:150px;margin-bottom:1rem}.login-title{font-size:1.5rem;font-weight:600;color:#333}.login-body{padding:2rem}.p-field{margin-bottom:1.5rem}.p-inputtext{width:100%;padding:.75rem 1rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;transition:border-color .2s}.p-inputtext:focus{outline:none;border-color:#0ea5e9;box-shadow:0 0 0 2px #0ea5e933}.p-button{width:100%;padding:.75rem 1rem;border:none;border-radius:4px;background-color:#0284c7;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;display:flex;align-items:center;justify-content:center}.p-button:hover:not(:disabled){background-color:#0369a1}.p-button:disabled{background-color:#a0aec0;cursor:not-allowed}.error-message{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb;padding:.75rem 1.25rem;border-radius:4px;margin-top:1rem;text-align:center}.login-footer{background-color:#f8f9fa;padding:1rem;text-align:center;font-size:.8rem;color:#6c757d}.pi-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tab-content{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.section-header h3{font-size:1.125rem;font-weight:600;margin-bottom:12px}.loading-state{padding:16px;color:#374151}.nova-observacao-form .form-group{margin-bottom:12px}.nova-observacao-form textarea{width:100%;min-height:80px;padding:8px;border:1px solid #d1d5db;border-radius:6px;resize:vertical}.nova-observacao-form select{padding:6px 8px;border:1px solid #d1d5db;border-radius:6px}.nova-observacao-form button[type=submit]{padding:8px 12px;background:#111827;color:#fff;border:none;border-radius:6px;cursor:pointer}.nova-observacao-form button[disabled]{opacity:.6;cursor:not-allowed}.observacoes-list{display:flex;flex-direction:column;gap:12px}.observacao-card{border:1px solid #e5e7eb;border-radius:8px;padding:12px;background:#fff}.observacao-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.prioridade-badge{display:inline-block;padding:4px 8px;border-radius:9999px;font-size:12px;font-weight:600}.prioridade-badge.normal{background:#e5e7eb;color:#111827}.prioridade-badge.baixa{background:#dbeafe;color:#1e3a8a}.prioridade-badge.media{background:#ffedd5;color:#9a3412}.prioridade-badge.alta{background:#fee2e2;color:#991b1b}.data-observacao{font-size:12px;color:#6b7280}.observacao-conteudo p{margin:0;white-space:pre-wrap}.observacao-footer{margin-top:8px;font-size:12px;color:#6b7280}.empty-state{text-align:center;color:#6b7280;padding:16px}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;overflow-x:hidden;overflow-y:auto}body{background-color:#f5f5f5;font-family:Arial,sans-serif;min-height:100vh}.app-container{min-height:100vh;overflow-y:auto;overflow-x:hidden;padding:0;margin:0}.formulario-container{max-width:900px;margin:20px auto 40px;padding:30px;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;font-family:Arial,sans-serif;min-height:auto;overflow:visible;position:relative}.header-formulario{text-align:center;margin-bottom:40px;border-bottom:3px solid #007bff;padding-bottom:25px}.header-formulario h2{color:#2c3e50;font-size:26px;margin-bottom:20px;font-weight:700}.aviso-importante{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:1px solid #ffeaa7;border-radius:8px;padding:20px;margin:20px 0;color:#856404;font-size:15px;line-height:1.5;box-shadow:0 2px 10px #ffc10733}.formulario{display:flex;flex-direction:column;gap:30px;overflow:visible;min-height:auto}.secao-formulario{background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:10px;padding:30px;border-left:5px solid #007bff;overflow:visible;min-height:auto;box-shadow:0 2px 15px #0000000d}.secao-formulario h3{color:#2c3e50;font-size:20px;margin-bottom:25px;font-weight:700;border-bottom:2px solid #dee2e6;padding-bottom:10px}.linha-campos-fluida{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.campo-completo{display:flex;flex-direction:column;margin-bottom:20px}.campo{display:flex;flex-direction:column}label{font-weight:600;color:#495057;margin-bottom:8px;font-size:15px}input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],textarea,select{padding:12px 15px;border:2px solid #ced4da;border-radius:6px;font-size:15px;transition:all .3s ease;background-color:#fff;box-shadow:0 1px 3px #0000001a}input[type=text]:focus,input[type=email]:focus,input[type=tel]:focus,input[type=date]:focus,input[type=number]:focus,textarea:focus,select:focus{outline:0;border-color:#007bff;box-shadow:0 0 0 .3rem #007bff40;transform:translateY(-1px)}input:read-only,textarea:read-only,select:disabled{background-color:#e9ecef;opacity:.7;cursor:not-allowed}textarea{resize:vertical;min-height:100px}.erro-input{border-color:#dc3545!important;box-shadow:0 0 0 .3rem #dc354526!important}.pergunta-radio{margin-bottom:25px;padding:20px;background:#fff;border-radius:8px;border:2px solid #e9ecef;box-shadow:0 2px 10px #0000000d;transition:all .3s ease}.pergunta-radio:hover{border-color:#007bff;box-shadow:0 4px 15px #007bff1a}.pergunta{font-weight:600;color:#2c3e50;margin-bottom:15px;display:block;font-size:16px}.opcoes-radio{display:flex;gap:25px;margin-bottom:15px}.opcoes-radio label{display:flex;align-items:center;font-weight:400;cursor:pointer;font-size:15px;padding:8px 12px;border-radius:5px;transition:all .3s ease}.opcoes-radio label:hover{background-color:#f8f9fa}.opcoes-radio input[type=radio]{margin-right:10px;transform:scale(1.2)}.sub-pergunta{margin-top:20px;margin-left:25px;padding-left:20px;border-left:3px solid #dee2e6}.destaque{color:#dc3545;font-weight:700;display:block;margin-top:8px;font-size:14px}.info-imc{background:linear-gradient(135deg,#e7f3ff,#cce7ff);border:2px solid #b8daff;border-radius:8px;padding:20px;margin:20px 0;box-shadow:0 2px 10px #007bff1a}.info-imc p{margin:8px 0;font-size:15px}.aviso-cirurgia{color:#856404;background:linear-gradient(135deg,#fff3cd,#ffeaa7);padding:12px;border-radius:5px;border-left:4px solid #ffc107;margin-top:15px}.consentimento{background:linear-gradient(135deg,#f8f9fa,#e8f5e8);border-left-color:#28a745}.checkbox-consentimento{display:flex;align-items:flex-start;cursor:pointer;line-height:1.6;font-size:15px;margin-bottom:20px;padding:15px;background:#fff;border-radius:8px;border:2px solid #dee2e6;transition:all .3s ease}.checkbox-consentimento:hover{border-color:#28a745;box-shadow:0 2px 10px #28a7451a}.checkbox-consentimento input[type=checkbox]{margin-right:15px;margin-top:5px;transform:scale(1.3);cursor:pointer}.declaracao{background:#fff;border:2px solid #dee2e6;border-radius:8px;padding:20px;margin-top:20px;box-shadow:0 2px 10px #0000000d}.declaracao p{margin:0;font-size:15px;line-height:1.6;color:#495057}.btn{padding:15px 40px;border:none;border-radius:8px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:30px;align-self:center;min-width:250px;box-shadow:0 4px 15px #0000001a}.btn-primary{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-2px);box-shadow:0 6px 20px #007bff66}.btn:disabled{background:linear-gradient(135deg,#6c757d,#5a6268);cursor:not-allowed;opacity:.6}.mensagem{padding:15px 20px;border-radius:8px;margin:20px 0;font-weight:500;text-align:center;font-size:16px}.mensagem.erro{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24;border:2px solid #f5c6cb}.mensagem.sucesso{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724;border:2px solid #c3e6cb}.text-center{text-align:center}@media (max-width: 768px){.formulario-container{margin:10px;padding:20px;min-height:auto;max-height:none}.header-formulario h2{font-size:22px}.linha-campos-fluida{grid-template-columns:1fr;gap:15px}.opcoes-radio{flex-direction:column;gap:15px}.secao-formulario{padding:20px}.sub-pergunta{margin-left:15px;padding-left:15px}}@media (max-width: 480px){body{padding:0;margin:0}.formulario-container{margin:5px;padding:15px;border-radius:8px;min-height:auto;max-height:none;overflow:visible}.aviso-importante{padding:15px;font-size:14px}.btn{width:100%;min-width:auto}.linha-campos-fluida{grid-template-columns:1fr}}.secao-formulario{animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}input:invalid:not(:focus):not(:placeholder-shown){border-color:#dc3545;box-shadow:0 0 0 .3rem #dc354540}input:valid:not(:focus):not(:placeholder-shown){border-color:#28a745}input::placeholder,textarea::placeholder{color:#6c757d;opacity:.8;font-style:italic}input:focus,textarea:focus,select:focus{outline:3px solid #007bff;outline-offset:2px}@media print{.formulario-container{box-shadow:none}.btn{display:none}.secao-formulario{break-inside:avoid}}@tailwind base;@tailwind components;@tailwind utilities;@layer base{:root{--background: 0 0% 100%;--foreground: 222.2 47.4% 11.2%;--card: 0 0% 100%;--card-foreground: 222.2 47.4% 11.2%;--popover: 0 0% 100%;--popover-foreground: 222.2 47.4% 11.2%;--primary: 222.2 47.4% 11.2%;--primary-foreground: 210 40% 98%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215.4 16.3% 46.9%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 100% 50%;--destructive-foreground: 210 40% 98%;--border: 214.3 31.8% 91.4%;--input: 214.3 31.8% 91.4%;--ring: 222.2 47.4% 11.2%;--radius: .5rem}.dark{--background: 224 71% 4%;--foreground: 213 31% 91%}}.fc .fc-timegrid-col{border-right:4px solid #111827}.fc .fc-timegrid-cols{border-left:4px solid #111827}.fc-theme-standard td,.fc-theme-standard th{border-color:#6b7280}.fc .fc-timegrid-slot{border-top:1px solid #9ca3af}.fc .fc-timegrid-now-indicator-arrow,.fc .fc-timegrid-now-indicator-line{border-color:#ef4444}
