/* GesMan HERMES — Registro */

    :root {
      --bg-1: #0b132b;
      --bg-2: #121c3f;
      --line: #3a2d0d;
      --gold: #f4b400;
      --gold-2: #ffd84d;
      --txt: #f8fafc;
      --muted: #cbd5e1;
      --ok: #86efac;
      --danger: #fda4af;
    }
    * { box-sizing: border-box; }
    body {
      margin: 0;
      min-height: 100vh;
      font-family: 'Segoe UI', Arial, sans-serif;
      color: var(--txt);
      background:
        radial-gradient(circle at 10% 0%, rgba(255,216,77,.22), transparent 40%),
        radial-gradient(circle at 90% 0%, rgba(244,180,0,.14), transparent 44%),
        linear-gradient(180deg, var(--bg-1), var(--bg-2));
      display: grid;
      place-items: center;
      padding: 1.2rem;
    }
    .wrap {
      width: min(760px, 100%);
      border: 1px solid var(--line);
      border-radius: 18px;
      background: rgba(17,24,39,.92);
      box-shadow: 0 28px 48px rgba(0,0,0,.35);
      padding: 1.4rem;
    }
    .header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: .8rem;
      margin-bottom: 1rem;
    }
    .header svg { width: min(240px, 90%); height: auto; }
    .back {
      border: 1px solid #475569;
      border-radius: 10px;
      background: #0f172a;
      color: #cbd5e1;
      text-decoration: none;
      padding: .55rem .8rem;
      font-size: .86rem;
    }
    h1 {
      margin: .2rem 0 .35rem;
      color: #fff4b8;
      font-size: 1.45rem;
    }
    p.lead { margin: 0 0 1rem; color: var(--muted); }
    .grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: .75rem;
    }
    .row { display: grid; gap: .35rem; }
    .row.full { grid-column: 1 / -1; }
    label { color: var(--muted); font-size: .9rem; }
    input {
      border: 1px solid #475569;
      border-radius: 10px;
      background: #0f172a;
      color: var(--txt);
      padding: .72rem .78rem;
      font-size: .95rem;
      outline: none;
    }
    input:focus { border-color: var(--gold-2); box-shadow: 0 0 0 3px rgba(255,216,77,.2); }
    .btn {
      margin-top: .3rem;
      border: 1px solid #8b6500;
      border-radius: 10px;
      background: linear-gradient(180deg, #ffe38b, #f4b400);
      color: #1f2937;
      font-weight: 700;
      font-size: .92rem;
      letter-spacing: .03em;
      padding: .75rem .9rem;
      cursor: pointer;
    }
    .msg { font-size: .9rem; border-radius: 10px; padding: .62rem .72rem; border: 1px solid; margin-bottom: .8rem; }
    .msg.err { color: var(--danger); border-color: #7f1d1d; background: rgba(127,29,29,.2); }
    .msg.ok { color: var(--ok); border-color: #14532d; background: rgba(20,83,45,.2); }
    .foot-note { margin-top: .8rem; color: #94a3b8; font-size: .82rem; }
    @media (max-width: 780px) {
      .grid { grid-template-columns: 1fr; }
      .header { flex-direction: column; align-items: flex-start; }
    }
