/* Página de registro de un alojamiento: usa los tokens y botones de disponibilidad.css. */
.reg { max-width: 520px; margin: 0 auto; padding: 24px 16px 40px; }
.reg-idioma { display: flex; justify-content: center; gap: 4px; margin: 0 auto 14px; }
.reg-idioma button { font: inherit; font-size: 13px; font-weight: 600; padding: 4px 11px; border-radius: 999px; border: 1px solid var(--border); background: transparent; color: var(--muted); cursor: pointer; }
.reg-idioma button.on { background: var(--accent-soft, #dceef8); color: var(--accent); border-color: transparent; }
html.i18n-cargando body { visibility: hidden; }
.reg .logo img { display: block; width: auto; height: 72px; max-width: 100%; margin: 0 auto 10px; }
.reg h1 { font-size: 24px; margin: 8px 0 6px; }
.reg p { margin: 6px 0 12px; }
.reg .small { font-size: 13px; }
.reg label { display: block; font-size: 14px; font-weight: 600; margin: 12px 0 0; }
.reg input[type=text], .reg input[type=email], .reg input[type=password] { display: block; width: 100%; margin-top: 4px; padding: 11px 12px; font: inherit; font-weight: 400; color: var(--text); background: var(--surface); border: 1px solid var(--border); border-radius: 12px; }
.reg input:focus { outline: 2px solid var(--accent); outline-offset: 0; }
.reg .grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.slug-wrap { display: flex; align-items: center; gap: 6px; margin-top: 4px; }
.slug-wrap input { margin-top: 0; min-width: 0; }
.slug-dom { color: var(--muted); font-weight: 400; font-size: 14px; white-space: nowrap; }
#slug-estado { margin: 4px 0 0; min-height: 18px; }
#slug-estado.ok { color: var(--ok); }
#slug-estado.no { color: var(--danger); }
.trampa { position: absolute; left: -9999px; top: -9999px; height: 0; overflow: hidden; }
.check { display: flex; align-items: flex-start; gap: 10px; font-weight: 500; margin-top: 16px; }
.check input { width: 20px; height: 20px; margin: 2px 0 0; flex: 0 0 auto; accent-color: var(--accent); }
.check a { color: var(--accent); }
.reg .btn.primary { display: inline-block; width: 100%; text-align: center; margin-top: 16px; padding: 13px 18px; font-size: 16px; text-decoration: none; }
.reg .btn[disabled] { opacity: .6; cursor: default; }
.reg .error { margin: 10px 0 0; font-size: 14px; }
.reg .error:empty { display: none; }
#listo-host { color: var(--accent); font-weight: 600; word-break: break-all; }
.pie { padding-bottom: 20px; }
@media (max-width: 480px) { .reg .grid2 { grid-template-columns: 1fr; gap: 0; } }
