.ukl-modal { display: none; position: fixed; inset: 0; z-index: 99999; align-items: center; justify-content: center; padding: 1rem; }
.ukl-modal.is-open { display: flex !important; }
.ukl-modal__bg { position: absolute; inset: 0; background: rgba(15,23,42,.7); }
.ukl-modal__box { position: relative; z-index: 1; width: 100%; max-width: 32rem; max-height: 90vh; overflow: auto; background: #fff; color: #0f172a; border-radius: 1rem; padding: 1.5rem; font-family: Inter, system-ui, sans-serif; }
.ukl-modal__box h3 { margin: 0 0 .5rem; font-size: 1.35rem; }
.ukl-modal__box p.lead { margin: 0 0 1rem; color: #475569; font-size: .95rem; }
.ukl-modal__box label { display: block; font-size: .8rem; font-weight: 600; margin-bottom: .75rem; }
.ukl-modal__box input, .ukl-modal__box select { width: 100%; margin-top: .3rem; padding: .55rem .7rem; border: 1px solid #cbd5e1; border-radius: .5rem; font: inherit; }
.ukl-modal__row { display: grid; gap: .75rem; }
@media (min-width: 640px) { .ukl-modal__row { grid-template-columns: 1fr 1fr; } }
.ukl-modal__box button[type=submit] { width: 100%; padding: .85rem; border: 0; border-radius: .6rem; background: linear-gradient(to right, #f59e0b, #d97706); color: #0f172a; font-weight: 700; cursor: pointer; }
.ukl-modal__close { position: absolute; top: .75rem; right: .75rem; border: 0; background: #103c84; color: #fff; width: 2rem; height: 2rem; border-radius: 999px; cursor: pointer; font-size: 1.1rem; padding: 0; }
.ukl-modal__ok { color: #166534; background: #dcfce7; padding: .75rem; border-radius: .5rem; }
.ukl-modal__err { color: #991b1b; background: #fee2e2; padding: .75rem; border-radius: .5rem; }
.ukl-modal__hint { font-size: .8rem; font-weight: 600; margin: .25rem 0 .5rem; }
.ukl-modal__checks { display: grid; grid-template-columns: 1fr 1fr; gap: .35rem .75rem; margin-bottom: 1rem; max-height: 11rem; overflow: auto; padding: .6rem; border: 1px solid #e2e8f0; border-radius: .5rem; background: #f8fafc; }
.ukl-modal__checks label { font-weight: 400; font-size: .75rem; margin: 0; display: flex; gap: .4rem; align-items: flex-start; }
.ukl-modal input[type="checkbox"] { width: 12px; margin: 0; }
