/* Variáveis de tema */
:root {
  --ffc-bg: #fff;
  --ffc-accent: #1e73be;        /* cor principal (pode ajustar) */
  --ffc-accent-hover: #155d8a;  /* versão escura para hover */
  --ffc-text-dark: #222;
  --ffc-text-light: #555;
  --ffc-border: #e1e1e1;
  --ffc-radius: 8px;
  --ffc-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
#ffc_mb p{margin-bottom:1em;}
    #ffc_mb label{font-weight:bold;}
    #ffc_list li{margin:4px 0;}
    #ffc_pass{width:200px;}
/* Container e card */
.ffc-container {
  max-width: 800px;
  margin: 3rem auto;
  padding: 0 1rem;
}
.ffc-card {
  background: var(--ffc-bg);
  border-left: 4px solid var(--ffc-accent);
  border-radius: var(--ffc-radius);
  box-shadow: var(--ffc-shadow);
  margin-bottom: 2rem;
  padding: 2rem;
  transition: transform .2s;
}
.ffc-card:hover {
  transform: translateY(-4px);
}

/* Título */
.ffc-card h1 {
  font-family: system-ui, sans-serif;
  font-size: 2rem;
  color: var(--ffc-text-dark);
  margin-bottom: 1rem;
}

/* Info grid */
.ffc-info {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2rem;
  margin-bottom: 2rem;
  font-size: .95rem;
}
.ffc-info li {
  flex: 1 1 200px;
}
.ffc-info li strong {
  font-weight: 600;
  color: var(--ffc-text-dark);
}

/* Botão solicitar novo */
#ffc_new_btn {
  background: var(--ffc-accent);
  color: #fff;
  border: none;
  padding: .75rem 1.5rem;
  border-radius: var(--ffc-radius);
  cursor: pointer;
  font-size: 1rem;
  transition: background .2s, transform .1s;
}
#ffc_new_btn:hover {
  background: var(--ffc-accent-hover);
  transform: translateY(-2px);
}

/* Seção de arquivos */
.ffc-files h2 {
  font-size: 1.5rem;
  margin-bottom: 1rem;
  color: var(--ffc-text-dark);
}
.ffc-files ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.ffc-files li {
  position: relative;
  padding-left: 2.5rem;
  margin-bottom: 1rem;
}
.ffc-files li::before {
  content: "\f1c1";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 0;
  color: var(--ffc-accent);
  font-size: 1.2rem;
}
.ffc-files a {
  color: var(--ffc-accent);
  text-decoration: none;
  transition: color .2s;
}
.ffc-files a:hover {
  color: var(--ffc-accent-hover);
  text-decoration: underline;
}

/* Box senha */
.ffc-box {
  max-width: 380px;
  margin: 4rem auto;
  background: var(--ffc-bg);
  border: 1px solid var(--ffc-border);
  border-radius: var(--ffc-radius);
  box-shadow: var(--ffc-shadow);
  padding: 2rem;
  text-align: center;
}
.ffc-box input[type=password] {
  width: 100%;
  padding: .75rem;
  margin-bottom: 1rem;
  border: 1px solid var(--ffc-border);
  border-radius: var(--ffc-radius);
  font-size: 1rem;
}
.ffc-box button {
  background: var(--ffc-accent);
  color: #fff;
  border: none;
  padding: .75rem 1.5rem;
  border-radius: var(--ffc-radius);
  cursor: pointer;
  transition: background .2s;
}
.ffc-box button:hover {
  background: var(--ffc-accent-hover);
}

/* Expirado */
.ffc-expired {
  background: #fff4f4;
  border: 1px solid #f5c2c2;
  border-radius: var(--ffc-radius);
  padding: 1.5rem;
  text-align: center;
  margin-bottom: 2rem;
  color: #a00;
  font-weight: 600;
}

/* Responsivo */
@media (max-width: 600px) {
  .ffc-map, .ffc-info { flex-direction: column; }
  .ffc-card { padding: 1.5rem; }
  #ffc_new_btn, .ffc-box button { width: 100%; }
}
