.agf-public-form,
.agf-links-publicos {
  max-width: 960px;
  margin: 0 auto;
  padding: 28px;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, .10);
  border-radius: 9px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, .06);
}
.agf-public-form * { box-sizing: border-box; }
.agf-public-form h1 { margin: 0 0 12px; line-height: 1.08; }
.agf-public-form p { margin: 0 0 24px; color: #475569; }
.agf-grid { display: grid; gap: 18px 22px; }
.agf-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.agf-public-form label { display: block; margin: 0 0 18px; font-weight: 700; color: #1e293b; }
.agf-public-form input,
.agf-public-form select,
.agf-public-form textarea {
  width: 100%;
  min-height: 48px;
  margin-top: 8px;
  border: 1px solid #d8e0ea;
  border-radius: 9px !important;
  padding: 10px 14px;
  font: inherit;
  background: #fff;
  color: #0f172a;
}
.agf-public-form input[type="file"] { padding: 12px; }
.agf-public-form textarea { min-height: 120px; resize: vertical; }
.agf-check { display: flex !important; align-items: flex-start; gap: 10px; font-weight: 500 !important; }
.agf-check input { width: auto; min-height: auto; margin-top: 4px; }
.agf-button,
.agf-link-actions button,
.agf-link-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 18px;
  border: 0;
  border-radius: 9px;
  text-decoration: none;
  font-weight: 800;
  cursor: pointer;
  background: #430c6a;
  color: #fff;
}
.agf-alert { margin: 0 0 18px; padding: 12px 14px; border-radius: 9px; font-weight: 700; }
.agf-alert-success { background: #dcfce7; color: #166534; border: 1px solid #bbf7d0; }
.agf-alert-error { background: #fee2e2; color: #991b1b; border: 1px solid #fecaca; }
.agf-links-publicos { display: grid; gap: 14px; }
.agf-link-card { padding: 16px; border: 1px solid #e2e8f0; border-radius: 9px; background: #fff; }
.agf-link-card strong { display:block; margin-bottom: 8px; }
.agf-link-card > a { display:block; overflow-wrap: anywhere; color: #2563eb; margin-bottom: 12px; }
.agf-link-actions { display:flex; gap:8px; flex-wrap:wrap; }
.agf-link-actions a, .agf-link-actions button { min-height: 38px; font-size: 14px; background: #f8fafc; color: #111827; border: 1px solid #d8e0ea; }
@media (max-width: 720px) {
  .agf-public-form, .agf-links-publicos { padding: 20px; }
  .agf-grid-2 { grid-template-columns: 1fr; }
}
