/* Centered quick-service hub: the launcher expands into a calm modal instead
   of scattering controls over the page. */
.home-quick-orbit { z-index:310; }
.home-quick-trigger { transition:opacity .2s ease,transform .28s cubic-bezier(.2,.9,.25,1),background .22s ease,box-shadow .22s ease; }
.home-quick-backdrop { position:fixed; z-index:0; inset:0; display:block; width:100%; height:100%; padding:0; border:0; background:rgba(25,10,70,.34); opacity:0; visibility:hidden; pointer-events:none; cursor:default; transition:opacity .28s ease,visibility 0s linear .28s; -webkit-backdrop-filter:blur(10px) saturate(.82); backdrop-filter:blur(10px) saturate(.82); }
.home-quick-dialog { position:fixed; z-index:1; top:50%; right:50%; display:block; width:min(352px,calc(100vw - 28px),calc(100svh - 32px)); aspect-ratio:1; overflow:hidden; border:1px solid rgba(255,255,255,.88); border-radius:50%; background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.97) 0 25%,rgba(246,242,255,.96) 45%,rgba(233,222,255,.94) 100%); box-shadow:0 28px 80px rgba(28,9,83,.32),inset 0 0 0 8px rgba(255,255,255,.36); opacity:0; visibility:hidden; pointer-events:none; transform:translate(50%,-50%) scale(.56); transform-origin:center; clip-path:circle(0 at 50% 50%); transition:opacity .24s ease,transform .42s cubic-bezier(.16,1,.3,1),clip-path .42s cubic-bezier(.16,1,.3,1),visibility 0s linear .42s; }
.home-quick-dialog::before,.home-quick-dialog::after { content:""; position:absolute; z-index:1; inset:12%; border:1px solid rgba(255,255,255,.22); border-radius:50%; pointer-events:none; }.home-quick-dialog::after { inset:27%; border-color:rgba(255,255,255,.18); box-shadow:0 0 0 10px rgba(255,255,255,.12); }
.home-quick-dialog .home-quick-actions { position:absolute; z-index:2; inset:0; pointer-events:none; transform:rotate(var(--quick-rotation,0deg)); transform-origin:center; transition:transform .12s linear; touch-action:none; cursor:grab; will-change:transform; }.home-quick-dialog .home-quick-actions.is-dragging { cursor:grabbing; transition:none; }.home-quick-dialog .home-quick-actions.is-intro-spinning { animation:quick-orbit-intro-spin 1.2s cubic-bezier(.22,.8,.2,1) both; pointer-events:none; }
.home-quick-dialog .home-quick-action { position:absolute; right:auto; bottom:auto; display:grid; width:clamp(51px,15vw,62px); aspect-ratio:1; place-items:center; padding:0; border:1px solid rgba(105,46,221,.14); border-radius:20px; color:#5d22d5; background:rgba(255,255,255,.88); box-shadow:0 10px 20px rgba(54,20,126,.11); cursor:pointer; opacity:0; pointer-events:none; transform:translateY(10px) scale(.65); transition:opacity .18s ease,transform .36s cubic-bezier(.16,1,.3,1),color .18s ease,background .18s ease,box-shadow .18s ease; transition-delay:0s; }
.home-quick-dialog .home-quick-action i { font-size:clamp(17px,5vw,21px); transform:rotate(var(--quick-counter-rotation,0deg)); }
.home-quick-dialog .home-quick-action span { position:absolute; top:calc(100% + 5px); right:50%; min-width:max-content; padding:0; border-radius:0; color:#3d247b; background:transparent; box-shadow:none; font:800 9px/1 "Alexandria",sans-serif; opacity:1; pointer-events:none; transform:translateX(50%) rotate(var(--quick-counter-rotation,0deg)); transition:none; }
.home-quick-dialog .home-quick-action:hover,.home-quick-dialog .home-quick-action:focus-visible { color:#260a73; background:#d9fa18; box-shadow:0 13px 24px rgba(92,138,15,.2); outline:none; transform:translateY(-3px) scale(1.04); }.home-quick-dialog .home-quick-action:hover span,.home-quick-dialog .home-quick-action:focus-visible span { opacity:1; transform:translateX(50%); }
.home-quick-dialog .home-quick-action.is-car { top:4%; right:50%; --quick-order:1; transform:translateX(50%) translateY(10px) scale(.65); }.home-quick-dialog .home-quick-action.is-external { top:27%; right:9%; --quick-order:2; }.home-quick-dialog .home-quick-action.is-chat { right:9%; bottom:27%; --quick-order:3; }.home-quick-dialog .home-quick-action.is-complaint { right:50%; bottom:9%; --quick-order:4; transform:translateX(50%) translateY(10px) scale(.65); }.home-quick-dialog .home-quick-action.is-bookings { bottom:27%; left:9%; --quick-order:5; }.home-quick-dialog .home-quick-action.is-notifications { top:27%; left:9%; --quick-order:6; }
.home-quick-preview { position:absolute; z-index:0; inset:0; overflow:hidden; border-radius:inherit; background:#160542; opacity:0; pointer-events:none; transform:scale(1.06); transition:opacity .34s ease .1s,transform .55s cubic-bezier(.16,1,.3,1) .1s; }.home-quick-preview::after { content:""; position:absolute; z-index:1; inset:0; background:linear-gradient(180deg,rgba(15,4,53,.38) 0%,rgba(19,5,62,.12) 38%,rgba(13,3,45,.93) 100%); pointer-events:none; }.home-quick-preview-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:opacity .18s ease,transform .45s ease; }.home-quick-preview-content { position:absolute; z-index:3; right:12%; bottom:8%; left:12%; display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:7px; min-height:64px; padding:8px 10px; border:1px solid rgba(255,255,255,.24); border-radius:17px; color:#fff; background:rgba(18,5,57,.78); box-shadow:0 10px 24px rgba(6,1,30,.26); opacity:0; pointer-events:none; transform:translateY(10px); transition:opacity .28s ease .18s,transform .34s cubic-bezier(.16,1,.3,1) .18s; -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px); }.home-quick-preview-logo { width:27px; height:27px; border-radius:9px; box-shadow:0 4px 10px rgba(0,0,0,.16); }.home-quick-preview-copy { min-width:0; }.home-quick-preview-copy strong { display:block; overflow:hidden; color:#fff; font-size:11px; font-weight:900; text-overflow:ellipsis; white-space:nowrap; }.home-quick-preview-copy p { display:-webkit-box; overflow:hidden; margin:4px 0 0; color:#eeeaff; font-size:8px; font-weight:600; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:1; }.home-quick-preview-link { display:inline-flex; align-items:center; gap:4px; min-height:28px; padding:0 8px; border-radius:9px; color:#25076b; background:#d9fa18; font-size:8px; font-weight:900; text-decoration:none; white-space:nowrap; }.home-quick-preview-link i { font-size:7px; }.home-quick-preview.is-updating .home-quick-preview-image { opacity:.5; transform:scale(1.06); }
.home-quick-close { position:absolute; z-index:4; top:50%; right:50%; display:grid; width:74px; aspect-ratio:1; place-items:center; padding:0; border:5px solid #efffc1; border-radius:50%; color:#fff; background:linear-gradient(135deg,#4d17c8,#8135e4); box-shadow:0 13px 28px rgba(68,21,170,.3); cursor:pointer; opacity:0; transform:translate(50%,-50%) scale(.55) rotate(-72deg); transition:opacity .18s ease .12s,transform .4s cubic-bezier(.16,1,.3,1) .12s,box-shadow .2s ease,background .2s ease; }.home-quick-close i { font-size:25px; }.home-quick-close:hover,.home-quick-close:focus-visible { background:#230864; box-shadow:0 16px 32px rgba(42,10,110,.32); outline:none; }.home-quick-close:focus-visible { box-shadow:0 0 0 5px rgba(217,250,24,.55),0 16px 32px rgba(42,10,110,.32); }
.home-quick-orbit.is-open .home-quick-trigger { opacity:0; pointer-events:none; transform:scale(.72); }.home-quick-orbit.is-open .home-quick-backdrop { visibility:visible; pointer-events:auto; opacity:1; transition-delay:0s; }.home-quick-orbit.is-open .home-quick-dialog { visibility:visible; pointer-events:auto; opacity:1; transform:translate(50%,-50%) scale(1); clip-path:circle(75% at 50% 50%); transition-delay:0s; }
.home-quick-orbit.is-open .home-quick-dialog .home-quick-action { pointer-events:auto; opacity:1; transform:translateY(0) scale(1); transition-delay:calc(120ms + var(--quick-order) * 45ms); }.home-quick-orbit.is-open .home-quick-dialog .home-quick-action.is-car,.home-quick-orbit.is-open .home-quick-dialog .home-quick-action.is-complaint { transform:translateX(50%) translateY(0) scale(1); }.home-quick-orbit.is-open .home-quick-dialog .home-quick-action.is-active { pointer-events:none; opacity:0; transform:translateY(7px) scale(.72); }.home-quick-orbit.is-open .home-quick-dialog .home-quick-action.is-car.is-active,.home-quick-orbit.is-open .home-quick-dialog .home-quick-action.is-complaint.is-active { transform:translateX(50%) translateY(7px) scale(.72); }.home-quick-orbit.is-open .home-quick-preview { opacity:1; transform:scale(1); }.home-quick-orbit.is-open .home-quick-preview-content { opacity:1; pointer-events:auto; transform:translateY(0); }.home-quick-orbit.is-open .home-quick-close { opacity:1; transform:translate(50%,-50%) scale(1) rotate(0); }
body.quick-services-open { overflow:hidden; }
@keyframes quick-orbit-intro-spin { from { transform:rotate(var(--quick-rotation,0deg)); } to { transform:rotate(calc(var(--quick-rotation,0deg) + 360deg)); } }
@media(max-width:360px){.home-quick-dialog { width:min(312px,calc(100vw - 20px),calc(100svh - 24px)); }.home-quick-dialog .home-quick-action { border-radius:17px; }.home-quick-preview-content { right:10%; left:10%; grid-template-columns:25px minmax(0,1fr) auto; gap:5px; min-height:60px; padding:7px 8px; border-radius:15px; }.home-quick-preview-copy strong { font-size:10px; }.home-quick-preview-copy p { font-size:7px; }.home-quick-preview-link { padding:0 6px; font-size:7px; }.home-quick-close { width:67px; border-width:4px; }}
@media(prefers-reduced-motion:reduce){.home-quick-backdrop,.home-quick-dialog,.home-quick-dialog .home-quick-actions,.home-quick-dialog .home-quick-action,.home-quick-preview,.home-quick-close,.home-quick-trigger { animation:none; transition:none; }}
