.ukrose-quick-contact{background:transparent}
.ukrose-quick-contact-open{overflow:hidden}
.ukrose-quick-contact [hidden]{display:none!important}
.ukrose-quick-contact__trigger{position:fixed;right:15px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:45;display:grid;place-items:center;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--color-kit-rose-text);cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateX(85px);transition:transform .45s cubic-bezier(.2,.85,.25,1.15),opacity .25s ease,visibility 0s linear .45s}
.ukrose-quick-contact__trigger.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0);transition-delay:0s}
.ukrose-quick-contact__trigger::before{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--color-kit-rose);box-shadow:0 4.36364px 21.8182px rgba(0,0,0,.07);pointer-events:none}
.ukrose-quick-contact__trigger svg{position:relative;z-index:1;width:48px;height:48px}
.ukrose-quick-contact__trigger:focus-visible,.ukrose-quick-contact__close:focus-visible{outline:2px solid var(--color-kit-dark);outline-offset:4px}
/* Closed dialogs must not retain fullscreen positioning or viewport dimensions. */
.ukrose-quick-contact__dialog:not([open]){display:none!important}
/* On short screens the outer layer scrolls; the white panel keeps its natural height. */
.ukrose-quick-contact__dialog[open]{box-sizing:border-box;position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:20px 15px calc(20px + env(safe-area-inset-bottom));border:0;background:transparent;color:var(--color-kit-dark);display:flex;flex-direction:column;align-items:flex-end;overflow-y:auto;overflow-x:hidden}
.ukrose-quick-contact__dialog.is-priming,.ukrose-quick-contact__dialog.is-priming::backdrop{visibility:hidden!important;opacity:0!important;pointer-events:none!important;transition:none!important}
/* Soft appearance first, then the same delayed backdrop as menu/search. */
.ukrose-quick-contact__dialog::backdrop{background-color:rgba(0,0,0,0);opacity:0;transition:background-color .8s ease,opacity .8s ease}
.ukrose-quick-contact__dialog.is-open::backdrop{background-color:rgba(0,0,0,.25);opacity:1;transition-delay:.4s}
.ukrose-quick-contact__panel{box-sizing:border-box;position:relative;flex-shrink:0;margin-top:auto;width:525px;max-width:100%;padding:20px;border-radius:2px;background:var(--color-kit-white);box-shadow:0 14px 30px rgba(0,0,0,.08);opacity:0;transition:opacity .35s ease}
.ukrose-quick-contact__dialog.is-open .ukrose-quick-contact__panel{opacity:1}
.ukrose-quick-contact__dialog.is-closing .ukrose-quick-contact__panel{min-height:0;padding-block:0;overflow:hidden;opacity:0;transition:height .55s cubic-bezier(.4,0,.2,1),padding .55s cubic-bezier(.4,0,.2,1),opacity .45s ease}
.ukrose-quick-contact__dialog.is-closing .ukrose-quick-contact__content{position:absolute;left:20px;right:20px;bottom:20px;height:calc(var(--quick-contact-expanded-height) - 40px)}
.ukrose-quick-contact__dialog.is-closing .ukrose-quick-contact__feedback{top:auto;bottom:0;height:var(--quick-contact-expanded-height)}
.ukrose-quick-contact__dialog.is-closing .ukrose-quick-contact__close{top:auto;bottom:calc(var(--quick-contact-expanded-height) - 52px)}
.ukrose-quick-contact__close{position:absolute;right:16px;top:20px;display:grid;place-items:center;width:24px;height:32px;padding:0;border:0;z-index:3;background:transparent;color:inherit;cursor:pointer}
.ukrose-quick-contact__content{display:flex;flex-direction:column;gap:20px}
.ukrose-quick-contact__intro{display:grid;gap:10px}
.ukrose-quick-contact__intro .title-h2{padding-right:32px}
#ukrose-quick-contact-title:focus,#ukrose-quick-contact-success-title:focus{outline:none}
.ukrose-quick-contact__form{display:grid;gap:25px}
.ukrose-quick-contact__fields{display:grid;gap:18px}
.ukrose-quick-contact__fields .global-textarea{height:66px}
.ukrose-quick-contact__form .button{width:100%;height:40px;padding-block:0}
.ukrose-quick-contact__form .button:disabled{opacity:.55;cursor:wait}
.ukrose-quick-contact__form .button:focus-visible{outline:1px solid var(--color-kit-dark);outline-offset:3px}
.ukrose-quick-contact__status:empty{display:none}
.ukrose-quick-contact__status.is-error{color:#a52121}
.ukrose-quick-contact__trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.ukrose-quick-contact__privacy{text-align:center;font-size:11px;text-underline-offset:3px;opacity:.65}
.ukrose-quick-contact__feedback{position:absolute;inset:0;background:var(--color-kit-white);opacity:0;transition:opacity 1.1s ease;pointer-events:none}
.ukrose-quick-contact__panel.is-submitting{overflow:hidden}
.ukrose-quick-contact__panel.is-submitting .ukrose-quick-contact__feedback{opacity:1}
.ukrose-quick-contact__loader{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transition:top .6s cubic-bezier(.22,.61,.36,1)}
.ukrose-quick-contact__panel.is-settling .ukrose-quick-contact__loader{top:calc(50% - 72px)}
.ukrose-quick-contact__success{position:absolute;top:calc(50% - 8px);left:20px;right:20px;display:grid;gap:12px;text-align:center}
.ukrose-quick-contact__success>*{animation:ukrose-checkout-reveal .7s cubic-bezier(.25,.46,.45,.94) both}
.ukrose-quick-contact__success>:nth-child(2){animation-delay:.12s}
@media(max-width:767px){.ukrose-quick-contact__panel{width:100%}}
@media(prefers-reduced-motion:reduce){.ukrose-quick-contact__trigger{transition:none}.ukrose-quick-contact__dialog::backdrop{transition:none!important;transition-delay:0s!important}.ukrose-quick-contact__panel,.ukrose-quick-contact__dialog.is-closing .ukrose-quick-contact__panel,.ukrose-quick-contact__feedback,.ukrose-quick-contact__loader{transition:none}.ukrose-quick-contact__success>*{animation:none}}
