﻿/* Marflix - Estilos Consolidados (COM FUNDO VIVO)
   Tema: Dark Mode Profundo com Elementos de Metal Cromado Animados
   Formato: Perfis Circulares com Glow
*/

:root {
  /* Variáveis para consistência visual */
  --bg-deep: #080808; /* Um preto ainda mais profundo para contraste */
  --panel: rgba(40, 40, 40, 0.4); 
  --text: #ffffff; 
  --muted: #a0a0a0; /* Um cinza médio para textos secundários */
  --accent: #e50914; /* Vermelho Assinatura */
  --metal-shine: rgba(255, 255, 255, 0.2); /* Brilho de metal */
  --chrome-base: rgba(180, 180, 190, 0.1); /* Base de cromo suave */
}

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

html, body {
  min-height: 100vh; /* Garante que o fundo ocupe toda a altura da tela */
  color: var(--text);
  font-family: 'Helvetica Neue', Arial, sans-serif;
  line-height: 1.4;
  text-rendering: optimizeLegibility;
  position: fixed
  overflow-x: hidden;
}

/* ========== FUNDO VIVO E DINÂMICO (NOVO) ========== */

body {
  padding: 3rem 1.5rem;
  background-color: var(--bg-deep);
}

/* Pseudo-elementos para as faixas de cromo e metal */
body::before,
body::after {
  content: '';
  position: fixed
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 250vw; /* Muito largo para cobrir todo o fundo */
  height: 200vh;
  z-index: -2; /* Atrás de tudo */
  pointer-events: none; /* Não interfere nos cliques */
}

/* Primeira faixa: Efeito de Cromo e Faixas Empilhadas */
body::before {
  background: 
    /* Simulação das faixas empilhadas da imagem */
    linear-gradient(110deg,
      transparent 0%,
      var(--chrome-base) 10%,
      transparent 20%,
      var(--metal-shine) 25%,
      transparent 30%,
      rgba(150, 150, 160, 0.15) 35%,
      transparent 45%
    );
  background-size: 200% 200%;
  opacity: 0.6;
  animation: metalFlow 18s ease-in-out infinite alternate;
}

/* Segunda faixa: Efeito de Faixa Única e Brilhante */
body::after {
  background: 
    /* Simulação da faixa principal cromada */
    radial-gradient(ellipse at center,
      rgba(200, 200, 210, 0.2) 0%,
      rgba(150, 150, 160, 0.1) 40%,
      transparent 80%
    );
  background-size: 200% 200%;
  filter: blur(5px);
  opacity: 0.4;
  animation: chromePulse 12s ease-in-out infinite alternate;
}

/* ========== CABEÇALHO ========== */

header {
  max-width: 1000px;
  margin: 0 auto 4rem;
  text-align: center;
  position: relative; /* Para o z-index */
  z-index: 2;
}

header h1 {
  font-size: clamp(2.8rem, 7vw, 5rem);
  letter-spacing: 2.5px;
  font-weight: 900;
  text-transform: uppercase;
  background: linear-gradient(120deg,
    #d4145a 0%, 
    #e50914 20%, 
    #ff4e00 40%, 
    #db1f1f 60%, 
    #d96a3a 80%, 
    #bf1515 100%
  );
  background-size: 250% 250%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 4px 30px rgba(0, 0, 0, 0.8), 0 0 5px rgba(255, 255, 255, 0.1);
  position: relative;
  display: inline-block;
  animation: steelGradient 6s ease-in-out infinite, titlePulse 6s ease-in-out infinite;
}

/* Efeito de brilho abaixo do título */
header h1::after {
  content: '';
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  width: 120%;
  height: 25px;
  background: radial-gradient(ellipse at center, rgba(229, 9, 20, 0.4) 0%, transparent 75%);
  z-index: -1;
  filter: blur(2px);
}

header p {
  margin-top: 1.2rem;
  color: var(--muted);
  font-size: clamp(1.2rem, 2.5vw, 1.7rem);
  font-weight: 300;
  letter-spacing: 0.5px;
}

/* ========== GRID DE PERFIS ========== */

main {
  max-width: 1100px; /* Aumentado levemente para acomodar o gap */
  margin: 0 auto;
  position: relative; /* Para o z-index */
  z-index: 2;
}

.container {
  list-style: none;
  display: grid;
  /* Grid responsivo que centraliza os itens */
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 3.5rem; /* Aumentado para destacar os círculos */
  padding: 30px 0;
  justify-items: center;
}

/* ========== CARDS DE PERFIL (CIRCULARES) ========== */

.profile {
  position: relative;
  width: 170px; /* Tamanho fixo para garantir o círculo */
  cursor: pointer;
  text-align: center;
  transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275); /* Animação mais suave e elástica */
}

.profile figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
}

.profile img {
  width: 160px;
  height: 160px;
  border-radius: 50%; /* TRANSFORMA EM CÍRCULO */
  object-fit: cover;
  border: 4px solid transparent;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.6);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Efeito Hover no Perfil */
.profile:hover {
  transform: translateY(-5px); /* Leve elevação */
}

.profile:hover img {
  transform: scale(1.1); /* Zoom levemente maior */
  border-color: #fff;
  box-shadow: 0 0 30px rgba(255, 255, 255, 0.3), 0 0 50px rgba(229, 9, 20, 0.5);
}

.profile figcaption {
  color: var(--muted);
  font-size: 1.2rem;
  font-weight: 500;
  transition: color 0.3s ease;
  letter-spacing: 0.5px;
}

.profile:hover figcaption {
  color: #fff;
}

/* ========== PERFIL DE CRIAÇÃO (+) ========== */

.create-profile {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.create-icon-container {
  width: 160px;
  height: 160px;
  border-radius: 50%;
  border: 4px dashed var(--muted);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  background-color: rgba(255, 255, 255, 0.02);
}

.create-icon {
  font-size: 4rem;
  color: var(--muted);
  font-weight: 200;
  line-height: 1;
}

.create-profile:hover .create-icon-container {
  border-color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
  transform: scale(1.1);
}

.create-profile:hover .create-icon {
  color: #fff;
}

/* ========== BOTÃO DELETAR ========== */

.profile .delete-button {
  position: absolute;
  top: 8px;
  right: 18px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 2px solid #fff;
  background: rgba(0, 0, 0, 0.9);
  color: #fff;
  font-weight: bold;
  font-size: 1.1rem;
  cursor: pointer;
  opacity: 0;
  transform: scale(0.5);
  transition: all 0.2s ease;
  z-index: 10;
  line-height: 28px;
  text-align: center;
}

.profile:hover .delete-button {
  opacity: 1;
  transform: scale(1);
}

.profile .delete-button:hover {
  background: var(--accent);
  border-color: var(--accent);
}

/* ========== ANIMAÇÕES ========== */

/* Novas animações de fundo */
@keyframes metalFlow {
  0% { background-position: 0% 50%; transform: translate(-50%, -50%) rotate(0deg); }
  100% { background-position: 100% 50%; transform: translate(-48%, -52%) rotate(2deg); }
}

@keyframes chromePulse {
  0% { background-position: 0% 50%; opacity: 0.3; }
  100% { background-position: 100% 50%; opacity: 0.5; }
}

/* Animações existentes ajustadas */
@keyframes steelGradient {
  0%, 100% { background-position: 0% 50%; filter: brightness(1); }
  50% { background-position: 100% 50%; filter: brightness(1.25); }
}

@keyframes titlePulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.025); }
}

@keyframes splashRipple {
  0% { transform: scale(0); opacity: 1; }
  100% { transform: scale(5); opacity: 0; }
}

.splash-effect {
  position: absolute;
  width: 35px;
  height: 35px;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.9) 0%, transparent 75%);
  border-radius: 50%;
  pointer-events: none;
  animation: splashRipple 0.6s ease-out forwards;
  z-index: 5;
}

/* ========== RODAPÉ ========== */

footer {
  margin-top: 5rem;
  text-align: center;
  color: #666;
  font-size: 0.95rem;
  padding-bottom: 3rem;
  position: relative; /* Para o z-index */
  z-index: 2;
}

/* ========== RESPONSIVIDADE ========== */

@media (max-width: 600px) {

  /* Media query para dispositivos móveis */

  body {

    padding: 1rem; /* Padding reduzido em telas pequenas */

  }



  .profile {

    border-radius: 0; /* Bordas não arredondadas em mobile */

  }

}