body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
background-color: #f0f2f5;
color: #333;
margin: 0;
padding: 20px;
transition: background-color 0.3s ease; /*contato.calculojudicialpro.com.br Transição suave no background */
}
.container {
max-width: 800px;
margin: 30px auto; /* Aumentei um pouco a margem superior /
padding: 30px;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 8px;
box-shadow: 0 6px 12px rgba(0,0,0,0.08); / Sombra suave /
transition: box-shadow 0.3s ease; / Transição suave na sombra */
}

.container:hover {
box-shadow: 0 8px 16px rgba(0,0,0,0.1); /* Efeito sutil ao passar o mouse */
}

h1, h2 {
text-align: center;
color: #333;
font-weight: 500;
transition: color 0.3s ease; /* Transição suave na cor do texto */
}

h1 { font-size: 1.8em; margin-bottom: 20px; } /* Aumentei um pouco a fonte /
h2 { font-size: 1.3em; color: #555; margin-bottom: 35px; } / Aumentei um pouco a margem inferior */

.form-group {
margin-bottom: 25px; /* Aumentei o espaçamento entre os campos */
}

label {
display: block;
margin-bottom: 8px;
font-weight: 600;
color: #444; /* Cor um pouco mais escura */
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
color: #aaa;
}
input:-moz-placeholder,
textarea:-moz-placeholder {
color: #aaa;
}
input::-moz-placeholder,
textarea::-moz-placeholder {
color: #aaa;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
color: #aaa;
}

input::placeholder,
textarea::placeholder {
color: #aaa;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}

input,
select,
textarea {
width: 100%;
padding: 12px;
border: 1px solid #ccc;
border-radius: 6px;
box-sizing: border-box;
font-size: 1em;
transition: border-color 0.3s ease, box-shadow 0.3s ease; /* Transição suave na borda e sombra */
}

input:focus,
select:focus,
textarea:focus {
border-color: #007bff;
outline: none;
box-shadow: 0 0 8px rgba(0, 123, 255, 0.3); /* Sombra ao receber foco */
}

.form-row {
display: flex;
gap: 20px;
}

.form-row .form-group {
flex: 1;
}

.button-group {
display: flex;
justify-content: space-between;
align-items: center;
margin-top: 35px; /* Aumentei a margem superior */
}

.btn {
padding: 14px 30px; /* Aumentei o tamanho dos botões /
border: none;
border-radius: 8px; / Bordas mais arredondadas /
font-size: 1.1em; / Aumentei a fonte dos botões /
font-weight: 600;
cursor: pointer;
text-decoration: none;
text-align: center;
display: inline-block;
transition: background-color 0.3s ease, transform 0.2s ease-in-out, box-shadow 0.3s ease; / Transições suaves /
box-shadow: 0 2px 4px rgba(0,0,0,0.08); / Sombra nos botões */
}

.btn:hover {
transform: translateY(-2px); /* Leve efeito de levantar ao passar o mouse /
box-shadow: 0 4px 8px rgba(0,0,0,0.1); / Sombra mais forte no hover */
}

.btn-primary {
background-color: #007bff;
color: white;
}
.btn-primary:hover {
background-color: #0056b3;
}

.btn-secondary {
background-color: #6c757d;
color: white;
}
.btn-secondary:hover {
background-color: #5a6268;
}

.btn-success {
background-color: #28a745;
color: white;
}
.btn-success:hover {
background-color: #1e7e34;
}

.btn-danger {
background-color: #dc3545;
color: white;
}
.btn-danger:hover {
background-color: #c82333;
}

.generated-document {
background-color: #fdfdfd;
border: 1px solid #eee;
padding: 30px;
margin-top: 30px; /* Aumentei a margem superior /
line-height: 1.7; / Aumentei o espaçamento entre linhas /
white-space: pre-wrap; / Mantém as quebras de linha /
font-family: 'Times New Roman', Times, serif;
box-shadow: 0 4px 8px rgba(0,0,0,0.05); / Sombra suave no documento */
border-radius: 4px;
}

.note {
font-size: 0.9em;
color: #777; /* Cor mais clara para a nota /
margin-top: 10px;
}
.alert {
padding: 15px;
margin-bottom: 25px; / Aumentei a margem inferior dos alertas /
border-radius: 6px;
box-shadow: 0 2px 4px rgba(0,0,0,0.05); / Sombra nos alertas */
}
.alert-success {
color: #155724;
background-color: #d4edda;
border: 1px solid #c3e6cb;
}
.alert-danger {
color: #721c24;
background-color: #f8d7da;
border: 1px solid #f5c6cb;
}

/* Tabela Admin /
.admin-table {
width: 100%;
border-collapse: collapse;
margin-top: 30px; / Aumentei a margem superior da tabela /
box-shadow: 0 2px 4px rgba(0,0,0,0.05); / Sombra na tabela /
border-radius: 8px;
overflow: hidden; / Para garantir que a borda arredondada funcione com o background /
}
.admin-table th, .admin-table td {
border: 1px solid #ddd;
padding: 14px; / Aumentei o padding das células /
text-align: left;
transition: background-color 0.3s ease; / Transição suave no background da célula /
}
.admin-table th {
background-color: #f8f9fa; / Cor de fundo mais clara para o cabeçalho /
font-weight: bold;
color: #555;
}
.admin-table tbody tr:hover td {
background-color: #f5f5f5; / Efeito hover nas linhas da tabela */
}
.admin-table td a.btn {
margin-right: 5px;
}