.sp-modal{align-items:center;background:transparent;block-size:100%;border:none;inline-size:100%;inset:0;justify-content:center;margin:0;max-block-size:none;max-inline-size:none;overflow:hidden;padding:2rem;position:fixed;transition:overlay var(--modal-transition-length,.2s) ease allow-discrete,display var(--modal-transition-length,.2s) ease allow-discrete}.sp-modal[open]{display:flex}.sp-modal::backdrop{background:#00000080;opacity:0;transition:opacity var(--modal-transition-length,.2s) ease,overlay var(--modal-transition-length,.2s) ease allow-discrete,display var(--modal-transition-length,.2s) ease allow-discrete}.sp-modal[open]::backdrop{opacity:1}@starting-style{.sp-modal[open]::backdrop{opacity:0}}.sp-modal__dialog{background:var(--modal-bg,#fff);border-radius:1rem;box-shadow:0 20px 50px #00000040;color:var(--modal-fg,inherit);display:flex;flex-direction:column;gap:var(--vertical-rhythm);inline-size:100%;max-block-size:min(85vh,1000px);max-inline-size:80rem;opacity:0;overflow:auto;padding:var(--modal-padding);position:relative;transform:translateY(2rem) scale(.95);transition:opacity var(--modal-transition-length,.2s) ease,transform var(--modal-transition-length,.2s) ease-out}.sp-modal__dialog:has(form){max-inline-size:50rem}.sp-modal[open] .sp-modal__dialog{opacity:1;transform:none}@starting-style{.sp-modal[open] .sp-modal__dialog{opacity:0;transform:translateY(2rem) scale(.95)}}@media (prefers-reduced-motion:reduce){.sp-modal,.sp-modal::backdrop,.sp-modal__dialog{transition-duration:.01ms}.sp-modal__dialog{transform:none}}.sp-modal__dialog--sm{max-inline-size:40rem}.sp-modal__dialog--md{max-inline-size:80rem}.sp-modal__dialog--lg{max-inline-size:100rem}.sp-modal__dialog--xl{max-inline-size:120rem}.sp-modal__close{align-items:center;background:none;border:none;border-radius:.5rem;color:var(--text-colour);cursor:pointer;display:flex;gap:.5rem;height:4rem;justify-content:center;position:absolute;right:1rem;top:1rem;width:4rem;z-index:22}.sp-modal__close>svg{block-size:2.4rem;inline-size:2.4rem}.sp-modal__close:hover{background:rgba(var(--primary-rgb),.1)}.has-narrow-content .sp-modal__body,.has-narrow-content .sp-modal__footer,.has-narrow-content .sp-modal__header{inline-size:100%;margin-inline:auto;max-inline-size:50rem}
