@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');

:root {
--primary-color: #ff416c;
--primary-rgb: 255, 65, 108;
--secondary-color: #ff4b2b;
--secondary-rgb: 255, 75, 43;
--accent-color: #ff416c;
--accent-rgb: 255, 65, 108;
--dark-bg: #0f0f1a;
--darker-bg: #0a0a12;
--card-bg: rgba(26, 26, 46, 0.7);
--card-hover-bg: rgba(40, 40, 70, 0.8);
--text-color: #e6e6e6;
--text-muted: #8a8a8a;
--border-color: rgba(255, 255, 255, 0.1);
--success-color: #28a745;
--warning-color: #ffc107;
--danger-color: #dc3545;
--info-color: #17a2b8;
}

* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

body {
font-family: 'Poppins', sans-serif;
min-height: 100vh;
background: linear-gradient(135deg, #0f0f1a 0%, #1a1a2e 50%, #16213e 100%);
background-attachment: fixed;
transition: background 0.7s cubic-bezier(.4, 0, .2, 1);
color: var(--text-color);
line-height: 1.6;
margin: 0;
padding: 0;
position: relative;
overflow-x: hidden;
}

/* Temas */
body.theme-dark {
background: linear-gradient(135deg, #0f0f1a 0%, #1a1a2e 50%, #16213e 100%);
}

body.theme-light {
background: linear-gradient(135deg, #f5f5f5 0%, #e8e8e8 50%, #f0f0f0 100%);
color: #333;
}

body.theme-blue {
background: linear-gradient(135deg, #0a1628 0%, #1a3a52 50%, #0d2d4a 100%);
}

body.theme-green {
background: linear-gradient(135deg, #0f1f1a 0%, #1a3a2e 50%, #0d2d1f 100%);
}

body.theme-purple {
	background: linear-gradient(135deg, #1a0f2e 0%, #2a1a4a 50%, #1f0f3a 100%);
}

body.theme-light {
--primary-color: #ff416c;
--text-color: #333;
--card-bg: rgba(255, 255, 255, 0.9);
--border-color: rgba(0, 0, 0, 0.1);
}

body.theme-blue {
--primary-color: #00d2ff;
--secondary-color: #3a7bd5;
background: linear-gradient(135deg, #061161 0%, #780206 100%); /* Exemplo de gradiente azul profundo */
}

body.theme-green {
--primary-color: #00b09b;
--secondary-color: #96c93d;
background: linear-gradient(135deg, #1D976C 0%, #93F9B9 100%);
}

body.theme-purple {
--primary-color: #8e2de2;
--secondary-color: #4a00e0;
background: linear-gradient(135deg, #302b63 0%, #24243e 100%);
}

/* Animações */
@keyframes slideDown {
from {
opacity: 0;
transform: translateY(-30px);
}
to {
opacity: 1;
transform: translateY(0);
}
}

@keyframes float {
0%, 100% {
transform: translateY(0px);
}
50% {
transform: translateY(-15px);
}
}

@keyframes pulse {
0% {
opacity: 0.5;
transform: scale(0.95);
}
100% {
opacity: 0.8;
transform: scale(1.05);
}
}

@keyframes shine {
100% {
left: 100%;
}
}

@keyframes cloudFloat {
0%, 100% {
transform: translateY(0px);
}
50% {
transform: translateY(-20px);
}
}

@keyframes cloudAppear {
0% {
opacity: 0;
transform: scale(0.5) translateY(30px);
}
50% {
opacity: 1;
transform: scale(1.1) translateY(0px);
}
100% {
opacity: 1;
transform: scale(1) translateY(0px);
}
}

@keyframes checkmarkPulse {
0% {
transform: scale(0);
}
50% {
transform: scale(1.2);
}
100% {
transform: scale(1);
}
}

@keyframes fadeOut {
0% {
opacity: 1;
transform: scale(1);
}
100% {
opacity: 0;
transform: scale(0.8);
}
}

/* Animação de Nuvem de Sucesso */
.success-cloud-container {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
display: flex;
align-items: center;
justify-content: center;
z-index: 10000;
background: rgba(0, 0, 0, 0.5);
backdrop-filter: blur(4px);
animation: fadeIn 0.3s ease-out;
}

.success-cloud-container.d-none {
display: none !important;
}

@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}

.cloud-wrapper {
text-align: center;
animation: cloudAppear 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.cloud {
position: relative;
width: 120px;
height: 80px;
margin: 0 auto 20px;
}

.cloud-circle {
position: absolute;
background: linear-gradient(135deg, #ff416c, #ff4b2b);
border-radius: 50%;
opacity: 0.9;
}

.cloud-circle-1 {
width: 50px;
height: 50px;
bottom: 0;
left: 10px;
}

.cloud-circle-2 {
width: 60px;
height: 60px;
bottom: 5px;
left: 40px;
}

.cloud-circle-3 {
width: 50px;
height: 50px;
bottom: 0;
right: 10px;
}

.cloud-checkmark {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 80px;
height: 80px;
background: rgba(255, 255, 255, 0.95);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 3rem;
color: #28a745;
animation: checkmarkPulse 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 0 10px 40px rgba(40, 167, 69, 0.3);
}

.cloud-text {
font-size: 1.5rem;
font-weight: 600;
color: #fff;
margin-top: 20px;
animation: slideDown 0.6s ease-out 0.3s both;
}

/* Header */
.header-modern {
position: relative;
z-index: 10;
background: rgba(15, 15, 26, 0.8);
backdrop-filter: blur(10px);
border-bottom: 1px solid rgba(255, 65, 108, 0.2);
}

.logo-header {
width: clamp(35px, 8vw, 50px);
height: clamp(35px, 8vw, 50px);
border-radius: 8px;
box-shadow: 0 2px 12px rgba(255, 65, 108, 0.3);
transition: all 0.3s ease;
}

.logo-header:hover {
transform: scale(1.05);
box-shadow: 0 4px 20px rgba(255, 65, 108, 0.5);
}

/* Destaque de texto */
.highlight {
background: linear-gradient(45deg, #ff416c, #ff4b2b);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
font-weight: 700;
position: relative;
display: inline-block;
}

.text-gradient {
background: linear-gradient(90deg, var(--primary-color), var(--secondary-color));
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

/* Glass Card - Login */
.login-card {
background: linear-gradient(135deg, rgba(255, 65, 108, 0.1) 0%, rgba(255, 75, 43, 0.05) 100%);
border: 1px solid rgba(255, 65, 108, 0.2);
backdrop-filter: blur(10px);
border-radius: 20px;
box-shadow: 0 8px 32px rgba(255, 65, 108, 0.15);
animation: slideDown 0.6s ease-out;
padding: clamp(1.5rem, 4vw, 3rem);
width: 100%;
position: relative;
overflow: hidden;
}

.login-card-decoration {
position: absolute;
top: -50%;
right: -10%;
width: 200px;
height: 200px;
background: radial-gradient(circle, rgba(255, 65, 108, 0.1) 0%, transparent 70%);
border-radius: 50%;
pointer-events: none;
}

.login-icon-wrapper {
margin-bottom: clamp(1.5rem, 3vw, 2rem);
}

.login-icon-wrapper i {
font-size: clamp(2rem, 10vw, 4.5rem);
background: linear-gradient(135deg, #ff416c, #ff4b2b);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
animation: float 3s ease-in-out infinite;
display: inline-block;
}

.login-title {
font-size: clamp(1.3rem, 5vw, 2.2rem);
background: linear-gradient(135deg, #ff416c, #ff4b2b);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

/* Input de Senha */
.password-input-group {
box-shadow: 0 4px 15px rgba(255, 65, 108, 0.1);
height: auto;
border-bottom: 2px solid rgba(255, 65, 108, 0.2);
border-radius: 10px;
overflow: hidden;
}

.password-input-group .input-group-text {
color: #ff416c;
font-size: clamp(0.9rem, 4vw, 1.2rem);
padding: clamp(0.5rem, 2vw, 0.8rem);
}

.password-input-group .form-control {
font-size: clamp(0.9rem, 3vw, 1.05rem);
color: #e6e6e6 !important;
padding: clamp(0.7rem, 2vw, 1rem) !important;
letter-spacing: 0.5px;
background: transparent !important;
border: none !important;
}

.password-input-group .form-control::placeholder {
color: rgba(230, 230, 230, 0.5);
}

.password-toggle {
cursor: pointer;
transition: all 0.3s ease;
}

.password-toggle:hover {
color: #ff4b2b !important;
}

/* Botão de Login */
.login-btn {
padding: clamp(0.8rem, 2.5vw, 1rem);
font-size: clamp(0.9rem, 3vw, 1.1rem);
border: none;
background: linear-gradient(135deg, #ff416c, #ff4b2b);
color: white;
border-radius: 10px;
transition: all 0.3s ease;
box-shadow: 0 4px 15px rgba(255, 65, 108, 0.3);
position: relative;
overflow: hidden;
letter-spacing: 0.5px;
font-weight: 600;
}

.login-btn:hover {
transform: translateY(-2px);
box-shadow: 0 6px 20px rgba(255, 65, 108, 0.4);
}

.login-btn:active {
transform: translateY(0);
}

.login-btn:disabled {
opacity: 0.7;
cursor: not-allowed;
}

/* Cards de Estatísticas */
.stats-card {
transition: all 0.3s ease;
background: linear-gradient(145deg, rgba(20, 20, 40, 0.8), rgba(10, 10, 25, 0.9));
border: 1px solid rgba(255, 65, 108, 0.15);
border-radius: 16px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
-webkit-backdrop-filter: blur(15px);
backdrop-filter: blur(15px);
overflow: hidden;
position: relative;
z-index: 3;
transform: translateY(0);
border-top: 1px solid rgba(255, 65, 108, 0.2);
border-left: 1px solid rgba(255, 65, 108, 0.1);
}

.stats-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
background: linear-gradient(90deg, #ff416c, #ff4b2b);
opacity: 0.8;
transition: all 0.3s ease;
}

.stats-card:hover {
transform: translateY(-8px) scale(1.01);
box-shadow: 0 15px 45px rgba(255, 65, 108, 0.2);
border-color: rgba(255, 65, 108, 0.3);
}

.stats-card:hover::before {
height: 6px;
opacity: 1;
}

/* Botões de Ação */
.action-btn {
padding: 0.75rem 1.5rem;
font-weight: 600;
border-radius: 10px;
transition: all 0.3s ease;
border: 2px solid;
}

.action-btn:hover {
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(255, 65, 108, 0.2);
}

/* Botão Gradiente */
.btn-gradient {
position: relative;
overflow: hidden;
z-index: 1;
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
border: none;
background: linear-gradient(135deg, #ff416c, #ff4b2b) !important;
color: white !important;
font-weight: 600;
}

.btn-gradient::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(135deg, #ff4b2b, #ff416c);
z-index: -1;
opacity: 0;
transition: opacity 0.4s ease;
}

.btn-gradient:hover::before {
opacity: 1;
}

.btn-gradient:hover {
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(255, 65, 108, 0.3) !important;
}

/* Modais */
.glass-modal {
background: linear-gradient(145deg, rgba(20, 20, 40, 0.95), rgba(10, 10, 25, 0.95));
border: 1px solid rgba(255, 65, 108, 0.2);
border-radius: 16px;
box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5);
-webkit-backdrop-filter: blur(15px);
backdrop-filter: blur(15px);
}

.modal-header {
border-bottom: 1px solid rgba(255, 65, 108, 0.1);
background: transparent;
padding: 1.5rem;
}

.modal-header .modal-title {
color: #fff;
font-weight: 600;
font-size: clamp(1rem, 3vw, 1.3rem);
}

.modal-header .modal-title i {
color: #ff416c;
}

.modal-body {
background: transparent;
padding: 1.5rem;
}

.modal-footer {
border-top: 1px solid rgba(255, 65, 108, 0.1);
background: transparent;
padding: 1rem 1.5rem;
}

/* Formulários */
.form-control {
background-color: rgba(30, 30, 50, 0.8) !important;
color: white !important;
border: 1px solid rgba(255, 65, 108, 0.3) !important;
border-radius: 8px;
transition: all 0.3s ease;
font-size: clamp(0.85rem, 2vw, 1rem);
}

.form-control:focus {
box-shadow: 0 0 0 0.25rem rgba(255, 65, 108, 0.25) !important;
border-color: #ff416c !important;
background-color: rgba(40, 40, 70, 0.9) !important;
}

.form-control::placeholder {
color: rgba(230, 230, 230, 0.5);
}

.form-label {
color: #e6e6e6;
font-weight: 500;
margin-bottom: 0.5rem;
font-size: clamp(0.85rem, 2vw, 0.95rem);
}

/* Tabela */
.table {
font-size: clamp(0.8rem, 2vw, 0.95rem);
}

.table thead th {
border-bottom: 2px solid rgba(255, 65, 108, 0.2);
color: #ff416c;
font-weight: 600;
padding: 1rem 0.5rem;
}

.table tbody tr {
border-bottom: 1px solid rgba(255, 65, 108, 0.1);
transition: all 0.3s ease;
}

.table tbody tr:hover {
background-color: rgba(255, 65, 108, 0.1);
transform: scale(1.01);
}

.table tbody td {
padding: 1rem 0.5rem;
vertical-align: middle;
color: #e6e6e6;
}

/* Badges */
.badge {
padding: 0.5rem 0.75rem;
border-radius: 6px;
font-weight: 600;
font-size: clamp(0.7rem, 2vw, 0.85rem);
}

/* Botão de Copiar */
.copy-btn {
padding: 0.4rem 0.8rem;
font-size: 0.85rem;
border-radius: 6px;
transition: all 0.3s ease;
border: 1px solid rgba(255, 65, 108, 0.3);
background: transparent;
color: #ff416c;
cursor: pointer;
}

.copy-btn:hover {
background: rgba(255, 65, 108, 0.1);
border-color: #ff416c;
transform: scale(1.05);
}

.copy-btn.copied {
background: rgba(40, 167, 69, 0.2);
border-color: #28a745;
color: #28a745;
}

/* Logs */
.logs-container {
max-height: 400px;
overflow-y: auto;
padding: 1rem;
background: rgba(0, 0, 0, 0.2);
border-radius: 8px;
}

.log-entry {
padding: 0.75rem 1rem;
margin-bottom: 0.5rem;
background: rgba(255, 65, 108, 0.05);
border-left: 3px solid #ff416c;
border-radius: 4px;
font-size: clamp(0.8rem, 2vw, 0.9rem);
animation: slideDown 0.3s ease-out;
}

.log-entry.success {
border-left-color: #28a745;
background: rgba(40, 167, 69, 0.05);
}

.log-entry.warning {
border-left-color: #ffc107;
background: rgba(255, 193, 7, 0.05);
}

.log-entry.danger {
border-left-color: #dc3545;
background: rgba(220, 53, 69, 0.05);
}

.log-timestamp {
color: #8a8a8a;
font-size: 0.75rem;
}

/* Toast */
.toast-container {
position: fixed;
top: 1rem;
right: 1rem;
z-index: 9999;
max-width: 400px;
}

.toast-message {
background: linear-gradient(145deg, rgba(20, 20, 40, 0.95), rgba(10, 10, 25, 0.95));
border: 1px solid rgba(255, 65, 108, 0.2);
border-radius: 10px;
padding: 1rem 1.5rem;
margin-bottom: 0.5rem;
color: #e6e6e6;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
animation: slideDown 0.3s ease-out;
font-size: clamp(0.85rem, 2vw, 0.95rem);
display: flex;
align-items: center;
gap: 0.75rem;
}

.toast-message.success {
border-left: 3px solid #28a745;
}

.toast-message.warning {
border-left: 3px solid #ffc107;
}

.toast-message.danger {
border-left: 3px solid #dc3545;
}

.toast-message.info {
border-left: 3px solid #17a2b8;
}

.toast-message i {
font-size: 1.2rem;
}

/* Responsividade */
@media (max-width: 768px) {
.login-card {
padding: 1.5rem;
}

.modal-body {
padding: 1rem;
}

.table {
font-size: 0.75rem;
}

.action-btn {
padding: 0.6rem 1rem;
font-size: 0.9rem;
}

.toast-container {
max-width: 90vw;
left: 1rem;
right: 1rem;
}
}

@media (max-width: 480px) {
.login-card {
padding: 1.25rem;
}

.login-icon-wrapper i {
font-size: 2.5rem;
}

.login-title {
font-size: 1.3rem;
}

.stats-card {
margin-bottom: 1rem;
}

.action-btn {
padding: 0.5rem 0.75rem;
font-size: 0.85rem;
}

.table {
font-size: 0.7rem;
}

.table thead th,
.table tbody td {
padding: 0.5rem 0.25rem;
}
}

/* Scrollbar customizado */
::-webkit-scrollbar {
width: 8px;
height: 8px;
}

::-webkit-scrollbar-track {
background: rgba(255, 65, 108, 0.05);
border-radius: 10px;
}

::-webkit-scrollbar-thumb {
background: linear-gradient(135deg, #ff416c, #ff4b2b);
border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
background: linear-gradient(135deg, #ff4b2b, #ff416c);
}

/* Utilitários */
.glass-card {
background: linear-gradient(145deg, rgba(20, 20, 40, 0.8), rgba(10, 10, 25, 0.9));
border: 1px solid rgba(255, 65, 108, 0.15);
border-radius: 16px;
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
-webkit-backdrop-filter: blur(15px);
backdrop-filter: blur(15px);
overflow: hidden;
position: relative;
z-index: 3;
}

.btn-close-white {
filter: invert(1) grayscale(100%) brightness(200%);
opacity: 0.8;
transition: opacity 0.2s ease;
}

.btn-close-white:hover {
opacity: 1;
}

/* Espaçamento */
.content-wrapper {
position: relative;
z-index: 2;
}

/* Footer Moderno */
.footer-modern {
position: relative;
z-index: 3;
background: rgba(15, 15, 30, 0.95);
border-top: 1px solid rgba(255, 65, 108, 0.2);
padding: 3rem 0;
margin-top: 5rem;
}

.footer-modern::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, transparent, #ff416c, #ff4b2b, #ff416c, transparent);
box-shadow: 0 0 20px 3px rgba(255, 65, 108, 0.4);
z-index: 2;
}

.footer-divider {
height: 2px;
width: 100px;
margin: 0 auto;
background: linear-gradient(90deg, transparent, #ff416c, transparent);
}

.footer-social {
display: flex;
justify-content: center;
gap: 1.5rem;
flex-wrap: wrap;
}

.social-link {
display: inline-flex;
align-items: center;
justify-content: center;
width: 45px;
height: 45px;
border-radius: 50%;
background: rgba(255, 65, 108, 0.1);
color: #ff416c;
font-size: 1.3rem;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
text-decoration: none;
position: relative;
border: 1px solid rgba(255, 65, 108, 0.2);
}

.social-link:hover {
background: linear-gradient(135deg, #ff416c, #ff4b2b);
color: white;
transform: translateY(-5px) scale(1.1);
box-shadow: 0 10px 25px rgba(255, 65, 108, 0.3);
border-color: rgba(255, 65, 108, 0.5);
}

.social-link::before {
content: '';
position: absolute;
inset: 0;
border-radius: 50%;
background: linear-gradient(135deg, #ff416c, #ff4b2b);
z-index: -1;
opacity: 0;
transition: opacity 0.3s ease;
}

.social-link:hover::before {
opacity: 0.2;
}

/* Animação de entrada */
.fade-in {
animation: slideDown 0.6s ease-out;
}

/* Tema Light */
body.theme-light {
color: #333;
}

body.theme-light .login-card {
background: linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(240, 240, 240, 0.95));
border: 1px solid rgba(255, 65, 108, 0.3);
}

body.theme-light .login-title,
body.theme-light .text-gradient {
background: linear-gradient(90deg, #ff416c, #ff4b2b);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

body.theme-light .form-control {
background-color: rgba(255, 255, 255, 0.9) !important;
color: #333 !important;
border: 1px solid rgba(255, 65, 108, 0.3) !important;
}

body.theme-light .form-control:focus {
background-color: rgba(255, 255, 255, 1) !important;
}

body.theme-light .form-label {
color: #333;
}

body.theme-light .table {
color: #333;
}

body.theme-light .table thead th {
color: #ff416c;
}

body.theme-light .table tbody tr:hover {
background-color: rgba(255, 65, 108, 0.1);
}

body.theme-light .glass-card {
background: linear-gradient(145deg, rgba(255, 255, 255, 0.9), rgba(240, 240, 240, 0.95));
border: 1px solid rgba(255, 65, 108, 0.2);
}

body.theme-light .stats-card {
background: linear-gradient(145deg, rgba(255, 255, 255, 0.9), rgba(240, 240, 240, 0.95));
border: 1px solid rgba(255, 65, 108, 0.2);
}

body.theme-light .modal-content {
background: linear-gradient(145deg, rgba(255, 255, 255, 0.95), rgba(240, 240, 240, 0.95));
}

body.theme-light .modal-header,
body.theme-light .modal-body,
body.theme-light .modal-footer {
background: transparent;
color: #333;
}

body.theme-light .modal-title {
color: #333;
}

body.theme-light .toast-message {
background: linear-gradient(145deg, rgba(255, 255, 255, 0.95), rgba(240, 240, 240, 0.95));
color: #333;
}

body.theme-light .log-entry {
background: rgba(255, 65, 108, 0.08);
color: #333;
}

body.theme-light .logs-container {
background: rgba(0, 0, 0, 0.05);
}


/* Footer Tema Light */
body.theme-light .footer-modern {
background: rgba(245, 245, 245, 0.95);
border-top: 1px solid rgba(255, 65, 108, 0.2);
}

body.theme-light .footer-modern::before {
background: linear-gradient(90deg, transparent, #ff416c, #ff4b2b, #ff416c, transparent);
}

body.theme-light .footer-divider {
background: linear-gradient(90deg, transparent, #ff416c, transparent);
}

body.theme-light .social-link {
background: rgba(255, 65, 108, 0.1);
color: #ff416c;
border: 1px solid rgba(255, 65, 108, 0.2);
}

body.theme-light .social-link:hover {
background: linear-gradient(135deg, #ff416c, #ff4b2b);
color: white;
}

/* Responsividade Footer */
@media (max-width: 768px) {
.footer-modern {
padding: 2rem 0;
margin-top: 3rem;
}

.footer-social {
gap: 1rem;
}

.social-link {
width: 40px;
height: 40px;
font-size: 1.1rem;
}
}

@media (max-width: 480px) {
.footer-modern {
padding: 1.5rem 0;
margin-top: 2rem;
}

.footer-divider {
width: 80px;
}

.footer-social {
gap: 0.75rem;
}

.social-link {
width: 38px;
height: 38px;
font-size: 1rem;
}
}

/* Novos Estilos do Footer com Redes Sociais */
.footer-modern {
padding: 3rem 0;
margin-top: 4rem;
position: relative;
z-index: 10;
}

.footer-divider {
width: 120px;
height: 3px;
background: linear-gradient(90deg, transparent, var(--primary-color), transparent);
margin: 0 auto;
border-radius: 10px;
opacity: 0.6;
}

.footer-social {
display: flex;
justify-content: center;
align-items: center;
gap: 1.25rem;
flex-wrap: wrap;
}

.footer-svg-icon {
display: flex;
align-items: center;
justify-content: center;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.2));
}

.footer-svg-icon:hover {
transform: translateY(-5px) scale(1.15);
filter: drop-shadow(0 8px 15px rgba(255, 65, 108, 0.4));
}

.footer-svg-icon svg {
width: 38px;
height: 38px;
border-radius: 50%;
}
