/* ==========================================================================
   registro.css — estilos de la pagina registro.html
   Extraido del/los bloque(s) <style> de la pagina el 2026-08-06 (s51), B.34-t15:
   la CSP estricta (style-src 'self') prohibe el CSS escrito dentro del HTML.
   La paleta salio a paleta.css (dueno unico); aqui solo quedan las
   EXCEPCIONES de esta pagina, si las tiene, y sus estilos propios.
   Se sirve por la ruta generica GET /css/{nombre}.css.
   ========================================================================== */

  * { box-sizing:border-box; }
  html, body { margin:0; min-height:100%; }
  body { font-family:var(--font); color:var(--ink); background:var(--canvas); -webkit-font-smoothing:antialiased; }
  button { font-family:inherit; cursor:pointer; }
  :focus-visible { outline:2px solid var(--accent); outline-offset:2px; border-radius:6px; }

  .nav { display:flex; align-items:center; height:62px; padding:0 26px; background:var(--nav-bg); }
  .brand { display:flex; align-items:center; gap:10px; }
  .brand__name { font-size:18px; font-weight:700; letter-spacing:-0.02em; color:#fff; }

  .wrap { display:flex; justify-content:center; padding:48px 24px; }
  .card {
    width:100%; max-width:680px; background:var(--panel);
    border:1px solid var(--line); border-radius:16px; padding:30px 28px;
    box-shadow:0 18px 50px -28px rgba(28,42,51,0.30);
  }
  .card__title { margin:0 0 4px; font-size:20px; font-weight:700; letter-spacing:-0.01em; }
  .card__hint { margin:0 0 22px; font-size:13.5px; color:var(--ink-soft); }

  .field { margin-bottom:14px; }
  .field label { display:block; font-size:13.5px; font-weight:650; color:var(--ink); margin-bottom:6px; }
  .field input {
    width:100%; height:42px; padding:0 13px; font-size:14px; color:var(--ink);
    background:#fff; border:1px solid var(--line); border-radius:9px; outline:none;
    transition:border-color .15s ease, box-shadow .15s ease;
  }
  .field input:focus { border-color:var(--accent); box-shadow:0 0 0 3px var(--accent-soft); }
  .field input::placeholder { color:var(--ink-faint); }

  .form-row { display:grid; grid-template-columns:1fr 1fr; column-gap:16px; }
  @media (max-width:480px) { .form-row { grid-template-columns:1fr; } }

  .btn {
    width:100%; height:44px; border-radius:10px; font-size:14.5px; font-weight:600;
    display:inline-flex; align-items:center; justify-content:center; gap:9px;
    border:1px solid transparent; background:var(--accent); color:#fff; margin-top:6px;
  }
  .btn:hover { background:var(--accent-deep); }
  .btn:disabled { opacity:.6; cursor:default; }

  .msg {
    margin-top:18px; font-size:14px; line-height:1.5; display:none;
    padding:14px 16px; border-radius:10px; font-weight:600; border:1px solid transparent;
  }
  .msg.show { display:block; }
  .msg.ok  { color:#0F766E; background:var(--accent-soft); border-color:#bfe3dd; }
  .msg.err { color:#922; background:#FCEDEC; border-color:#f3c8c4; }

  .back { margin:18px 0 0; text-align:center; font-size:13.5px; color:var(--ink-soft); }
  .back a { color:var(--accent-deep); font-weight:650; text-decoration:none; }
  .back a:hover { text-decoration:underline; }
