.registration-modal { display: none; position: fixed; inset: 0; z-index: 9999; align-items: center; justify-content: center; padding: 20px; background: rgba(2, 6, 23, 0.72); }
.registration-modal.is-open { display: flex; }
.registration-modal-box { width: min(100%, 460px); max-height: calc(100vh - 40px); overflow-y: auto; background: #fff; color: #0f172a; border: 1px solid #e5e7eb; border-radius: 16px; padding: 26px; box-shadow: 0 24px 70px rgba(2, 6, 23, 0.35); }
.registration-modal-box h3 { margin: 0 0 10px; font-size: 24px; color: #0f172a; }
.registration-modal-box > p { margin: 0 0 18px; color: #475569; font-size: 14px; line-height: 1.55; }
.registration-field { display: block; width: 100%; margin-bottom: 12px; padding: 11px 12px; border: 1px solid #cbd5e1; border-radius: 8px; background: #fff; color: #0f172a; font: inherit; }
.registration-field:focus { outline: 3px solid rgba(37, 99, 235, 0.18); border-color: #2563eb; }
.registration-check { display: flex; gap: 10px; align-items: flex-start; margin: 4px 0 14px; color: #475569; font-size: 13px; line-height: 1.45; }
.registration-check input { flex: 0 0 auto; margin: 3px 0 0; }
.registration-message { min-height: 20px; margin: 10px 0 14px; font-size: 14px; line-height: 1.45; }
.registration-message.is-info { color: #334155; }
.registration-message.is-error { color: #b91c1c; }
.registration-message.is-success { color: #15803d; }
.registration-actions { display: flex; gap: 10px; }
.registration-submit, .registration-close { padding: 11px 18px; border: 0; border-radius: 8px; cursor: pointer; font: inherit; font-weight: 800; }
.registration-submit { background: #2563eb; color: #fff; }
.registration-submit:hover, .registration-submit:focus-visible { background: #1d4ed8; }
.registration-submit:disabled { opacity: 0.65; cursor: wait; }
.registration-close { background: #e2e8f0; color: #0f172a; }
.registration-close:hover, .registration-close:focus-visible { background: #cbd5e1; }
body.registration-modal-open { overflow: hidden; }
@media (max-width: 520px) { .registration-modal { padding: 14px; } .registration-modal-box { padding: 20px; border-radius: 14px; } .registration-actions { flex-direction: column; } .registration-submit, .registration-close { width: 100%; } }
    