/* Importa estilos base para consistência */
@import url('style.css');
small { color: #777; font-size: 12px; margin-top: 4px; }
button { padding: 10px 16px; font-size: 14px; color: white; border: none; border-radius: 6px; cursor: pointer; }
.header-card { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; background-color: white; width: 100%; box-shadow: 0 2px 5px rgba(0,0,0,0.1); display: flex; align-items: center; justify-content: space-between; padding: 10px 20px; box-sizing: border-box; }
.header-card button { background-color: teal; }
.botao-verde { background-color: #198754; }
.container { max-width: 800px; margin: 20px auto; padding: 20px; background-color: white; border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.1); }
form { display: flex; flex-direction: column; gap: 15px; }
form label { display: flex; flex-direction: column; font-weight: bold; font-size: 14px; color: #333; }
form input, form textarea { font-size: 14px; border: 1px solid #ddd; border-radius: 6px; padding: 10px; margin-top: 5px; background-color: #fdfdfd; box-shadow: inset 0 1px 2px rgba(0,0,0,0.07); }
form textarea { resize: vertical; }

/* Loading Overlay */
#loadingOverlay { display: none; /* Começa escondido */ position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background: rgba(255, 255, 255, 0.8); z-index: 1002; flex-direction: column; align-items: center; justify-content: center; }
.spinner { border: 6px solid #f3f3f3; border-top: 6px solid #007bff; border-radius: 50%; width: 40px; height: 40px; animation: spin 1s linear infinite; margin-bottom: 15px; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }