.ui-modal-overlay{position:fixed;inset:0;z-index:2000;background:var(--overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:ui-modal-fade-in .15s ease-out}.ui-modal-content{position:fixed;top:50%;left:50%;z-index:2001;width:90%;max-width:420px;max-height:85vh;overflow-y:auto;padding:28px 22px 22px;transform:translate(-50%,-50%);text-align:center;color:var(--text);border-radius:26px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);animation:ui-modal-zoom-in .15s ease-out}.ui-modal-content:focus{outline:none}.ui-modal-content p{color:var(--text-muted)}.ui-modal-content form{text-align:left}.ui-modal-title{margin:0 0 14px;font-size:1.3rem;font-weight:800;letter-spacing:-.02em;color:var(--text)}.ui-modal-close{position:absolute;top:14px;right:14px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--surface-2);color:var(--text-muted);font-size:1.3rem;line-height:1;cursor:pointer}.ui-modal-close:hover{border-color:var(--brand);color:var(--brand)}.ui-modal-button{display:inline-block;margin:0 6px;padding:12px 24px;border:none;border-radius:14px;background:var(--brand);color:var(--brand-contrast);font:inherit;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .2s ease,opacity .2s ease}.ui-modal-button:hover{transform:translateY(-2px)}.ui-modal-button-register{background:var(--success);color:#fff}.ui-modal-button-secondary{border:1px solid var(--border);background:var(--surface-2);color:var(--text)}.ui-modal-button-danger{background:var(--danger);color:#fff}.ui-modal-divider{position:relative;margin:16px 0;text-align:center}.ui-modal-divider:before{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:var(--border)}.ui-modal-divider span{position:relative;padding:0 10px;background:var(--surface);color:var(--text-muted);font-size:.875rem}@media (max-width:768px){.ui-modal-button{display:block;width:80%;margin:10px auto}}@keyframes ui-modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ui-modal-zoom-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.96)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}