.ld-modal-overlay{--ld-modal-ms: var(--ld-animation-duration, .2s);position:fixed;inset:0;z-index:var(--ld-overlay-z, 1000)}.ld-modal-backdrop{position:absolute;inset:0;opacity:var(--ld-modal-dim, 1);pointer-events:none;background:var(--ld-modal-backdrop)}.ld-modal-backdrop[data-state=open]{animation:ld-modal-backdrop-in var(--ld-modal-ms) ease}.ld-modal-backdrop[data-state=closing]{animation:ld-modal-backdrop-out var(--ld-modal-ms) ease forwards}.ld-modal-positioner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:var(--ld-space-4)}.ld-modal-positioner[data-viewport=true]{inset:auto 0;top:var(--ld-vv-offset-top, 0px);height:var(--ld-vv-height, 100%);max-height:var(--ld-vv-height, 100%);padding:0;align-items:stretch;justify-content:stretch}.ld-modal-positioner[hidden]{display:none}.ld-modal-positioner[data-state=closing]{pointer-events:none}.ld-modal-box{position:relative;box-sizing:border-box;max-width:min(92vw,var(--ld-modal-size-lg, 40rem));max-height:min(90dvh,90vh,100%);min-height:0;overflow:auto;padding:var(--ld-space-4);background:var(--ld-modal-bg);color:var(--ld-modal-fg);border-radius:calc(var(--ld-radius-lg) * 1.5);box-shadow:0 10px 40px var(--ld-modal-backdrop);outline:none}.ld-modal-box:has(.ld-modal-shell){display:flex;flex-direction:column;overflow:hidden;padding:0}.ld-modal-shell{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;min-height:0;max-height:inherit}.ld-modal-shell__header{flex-shrink:0;display:flex;align-items:center;min-height:calc(2.75rem * var(--ld-text-scale, 1));padding:var(--ld-space-3) var(--ld-space-4);padding-inline-end:calc(var(--ld-space-4) + 2.25rem);border-bottom:var(--ld-border-width) solid var(--ld-border-subtle)}.ld-modal-shell__title{margin:0;font-size:calc(var(--ld-text-size-dialog) * var(--ld-text-scale, 1));font-weight:600;line-height:1.3}.ld-modal-shell__body{flex:1 1 auto;min-width:0;min-height:0;overflow:auto;padding:var(--ld-space-4)}.ld-modal-shell__footer{flex-shrink:0;display:flex;flex-wrap:wrap;gap:var(--ld-space-2);justify-content:flex-end;padding:var(--ld-space-3) var(--ld-space-4);border-top:var(--ld-border-width) solid var(--ld-border-subtle)}.ld-modal-shell--split-scroll{flex:1 1 auto;min-height:0;max-height:100%}.ld-modal-shell--split-scroll>.ld-modal-shell__body{display:flex;flex-direction:column;overflow:hidden}.ld-modal-box[data-size=xs]{min-width:min(92vw,var(--ld-modal-size-xs));max-width:min(92vw,var(--ld-modal-size-xs))}.ld-modal-box[data-size=sm]{min-width:min(92vw,var(--ld-modal-size-sm));max-width:min(92vw,var(--ld-modal-size-sm))}.ld-modal-box[data-size=md]{min-width:min(92vw,var(--ld-modal-size-md));max-width:min(92vw,var(--ld-modal-size-md))}.ld-modal-box[data-size=lg]{min-width:min(92vw,var(--ld-modal-size-lg));max-width:min(92vw,var(--ld-modal-size-lg))}.ld-modal-box[data-size=xl]{min-width:min(92vw,var(--ld-modal-size-xl));max-width:min(92vw,var(--ld-modal-size-xl))}.ld-modal-box[data-viewport=true]{min-width:0;max-width:100%;max-height:none;width:100%;height:100%;border-radius:0;box-shadow:none;display:flex;flex-direction:column;padding:0;overflow:hidden}.ld-modal-box--fullscreen{max-width:100vw;max-height:100vh;width:100vw;height:100vh;border-radius:0;display:flex;flex-direction:column;padding:0;overflow:hidden}.ld-modal-box[data-state=open]{animation:ld-modal-in var(--ld-modal-ms) cubic-bezier(.2,.8,.2,1)}.ld-modal-box[data-state=closing]{animation:ld-modal-out var(--ld-modal-ms) cubic-bezier(.4,0,1,1) forwards}.ld-modal-close,.ld-modal-close.ld-primitive-button{position:absolute;top:var(--ld-space-2);right:var(--ld-space-2);width:2rem;height:2rem;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;font-size:calc(var(--ld-text-size-icon-lg) * var(--ld-text-scale));line-height:1;cursor:pointer;color:inherit}.ld-modal-close:hover,.ld-modal-close.ld-primitive-button:hover{background:color-mix(in srgb,var(--ld-fg-primary) 8%,transparent)}@keyframes ld-modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes ld-modal-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(8px) scale(.98)}}@keyframes ld-modal-backdrop-in{0%{opacity:0}to{opacity:var(--ld-modal-dim, 1)}}@keyframes ld-modal-backdrop-out{0%{opacity:var(--ld-modal-dim, 1)}to{opacity:0}}@media(prefers-reduced-motion:reduce){.ld-modal-box[data-state],.ld-modal-backdrop[data-state]{animation-duration:1ms}}
