/* Estilos propios del pre-lanzamiento de El Trono. Complementa styles.css,
   hero.css y motion.css del sistema de diseño aprobado; no los reemplaza. */

.empty-throne{display:flex;justify-content:center;margin:0 auto;width:min(220px,60%)}
.empty-throne svg{width:100%;height:auto;filter:drop-shadow(0 10px 24px #06152c88)}

.countdown{display:flex;flex-direction:column;align-items:center;gap:4px;margin:14px 0}
.countdown-label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#ffe09a}
.countdown-clock{font:700 clamp(28px,4vw,44px)/1 'Bricolage Grotesque',sans-serif;color:#ffdc7e;font-variant-numeric:tabular-nums;text-shadow:0 3px #80521f}

.reserve-form{display:grid;gap:16px;max-width:640px;margin-top:24px;background:var(--paper,#fffcf4);border:1px solid var(--line,#d8d2c3);border-radius:16px;padding:24px;box-shadow:var(--shadow,0 14px 40px -20px #0b1b3a40)}
.reserve-form .field-row{display:grid;gap:6px}
.reserve-form label{font-weight:700;font-size:14px}
.reserve-form .optional{font-weight:400;color:var(--muted,#536077)}
.reserve-form input[type=text],.reserve-form input[type=email],.reserve-form input[type=tel],.reserve-form select{min-height:48px;padding:0 14px;border:1px solid var(--line,#d8d2c3);border-radius:10px;background:#fff;font-size:16px;color:var(--ink,#0b1b3a)}
.reserve-form .honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.reserve-form .consent{font-size:13px;color:var(--muted,#536077)}
.reserve-form .checkbox{display:flex;align-items:flex-start;gap:10px;font-weight:400}
.reserve-form .checkbox input{width:20px;height:20px;flex-shrink:0;margin-top:2px}
.reserve-form button[type=submit]{justify-self:start;min-height:48px}
.reserve-form .field-row.invalid input,.reserve-form .field-row.invalid select{border-color:var(--red-text,#b52332)}
.reserve-form .field-error{color:var(--red-text,#b52332);font-size:12px}
#reserva-status{font-weight:700;min-height:1.4em}
#reserva-status[data-state=ok]{color:var(--green,#146445)}
#reserva-status[data-state=error]{color:var(--red-text,#b52332)}

.province-pin{background:none;border:1px solid var(--line,#d8d2c3);border-radius:999px;padding:6px 12px;font-size:13px;display:inline-flex;align-items:center;gap:6px}
.province-pin:before{content:'';width:10px;height:10px;border-radius:50%;background:var(--pin,#034ea2)}
.map-help{margin-top:8px;font-size:13px;color:var(--muted,#536077)}
#province-panel-title{margin-top:6px}

.wall .stamp.locked{opacity:.85}
.wall .stamp small{text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:var(--muted,#536077)}

.how-note{background:#fff3d0;border:1px solid #e9c877;border-radius:14px;padding:16px 20px;margin:24px 0}
.rules-list{display:grid;gap:10px;padding-left:20px;margin:16px 0}
.rules-list li{max-width:70ch}
.rules-disclaimer{font-size:13px;color:var(--muted,#536077);margin:24px 0}
.legal-page h2{margin-top:32px;font-size:22px}
.legal-page p,.legal-page li{max-width:76ch}
.legal-table{width:100%;border-collapse:collapse;margin:16px 0}
.legal-table th,.legal-table td{text-align:left;border-bottom:1px solid var(--line,#d8d2c3);padding:8px 10px;font-size:14px}
.steps-page{margin-top:28px}
.how-page h2{margin-top:8px}
.musica-page .badge{margin-bottom:12px}

@media(max-width:767px){
  .reserve-form{padding:18px;border-radius:12px}
}
