.delphi-cta-stack{--delphi-collision-offset:0px;position:fixed;z-index:9990;bottom:calc(var(--delphi-bottom) + var(--delphi-collision-offset) + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:flex-end;gap:var(--delphi-gap);font-family:var(--delphi-cta-font);pointer-events:none;transition:bottom .2s ease}.delphi-cta-stack--right{right:var(--delphi-side)}.delphi-cta-stack--left{left:var(--delphi-side);align-items:flex-start}.delphi-cta-main{display:flex;flex-direction:column;align-items:inherit;gap:var(--delphi-gap);pointer-events:auto}.delphi-cta-main[hidden]{display:none!important}.delphi-cta-actions{display:flex;flex-direction:column;align-items:inherit;gap:var(--delphi-gap)}.delphi-cta-button{box-sizing:border-box;width:var(--delphi-size-desktop);min-height:var(--delphi-size-desktop);display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--delphi-cta-radius);background:var(--delphi-cta-primary);color:var(--delphi-cta-background);box-shadow:var(--delphi-cta-shadow);text-decoration:none!important;cursor:pointer;padding:0 14px;pointer-events:auto;transition:transform .18s ease,opacity .18s ease,box-shadow .18s ease}.delphi-cta-button:hover,.delphi-cta-button:focus-visible{transform:translateY(-2px);color:var(--delphi-cta-background);outline:2px solid currentColor;outline-offset:2px}.delphi-cta-icon{width:24px;height:24px;display:grid;place-items:center;flex:0 0 24px;color:currentColor}.delphi-cta-icon svg{width:100%;height:100%;display:block}.delphi-cta-action[hidden]{display:none!important}.delphi-cta-label{display:none;white-space:nowrap;font-size:13px;font-weight:600;line-height:1.2}.delphi-cta-mobile-toggle{display:none}.delphi-cta-backtotop{width:44px;min-height:44px;padding:0;opacity:0;visibility:hidden;pointer-events:none}.delphi-cta-backtotop.is-visible{opacity:1;visibility:visible;pointer-events:auto}.delphi-cta-stack.is-keyboard-open{opacity:0;visibility:hidden;pointer-events:none}.delphi-cta-stack.is-near-footer .delphi-cta-main{opacity:0;visibility:hidden;pointer-events:none}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
@media(max-width:1024px){.delphi-cta-button{width:var(--delphi-size-tablet);min-height:var(--delphi-size-tablet);padding:0 12px}.delphi-cta-icon{width:22px;height:22px;flex-basis:22px}.delphi-cta-stack[data-tablet-layout="compact"] .delphi-cta-action .delphi-cta-label{display:none!important}.delphi-cta-stack[data-tablet-layout="compact"] .delphi-cta-action{width:var(--delphi-size-tablet)!important;min-width:var(--delphi-size-tablet)!important;padding:0}}
@media(max-width:767px){.delphi-cta-stack{right:max(12px,var(--delphi-side));left:auto;bottom:calc(max(12px,var(--delphi-bottom)) + var(--delphi-collision-offset) + env(safe-area-inset-bottom,0px));gap:max(7px,var(--delphi-gap))}.delphi-cta-stack--left{left:max(12px,var(--delphi-side));right:auto}.delphi-cta-button{width:var(--delphi-size-mobile);min-height:var(--delphi-size-mobile);padding:0 11px}.delphi-cta-icon{width:21px;height:21px;flex-basis:21px}.delphi-cta-backtotop{width:42px;min-height:42px;padding:0}.delphi-cta-stack[data-mobile-layout="fab"] .delphi-cta-main{position:relative}.delphi-cta-stack[data-mobile-layout="fab"] .delphi-cta-mobile-toggle{display:flex;padding:0;position:relative;z-index:2}.delphi-cta-stack[data-mobile-layout="fab"] .delphi-cta-actions{position:absolute;right:0;bottom:calc(var(--delphi-size-mobile) + max(7px,var(--delphi-gap)));opacity:0;visibility:hidden;transform:translateY(8px) scale(.98);pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s}.delphi-cta-stack--left[data-mobile-layout="fab"] .delphi-cta-actions{left:0;right:auto}.delphi-cta-stack[data-mobile-layout="fab"].is-mobile-expanded .delphi-cta-actions{opacity:1;visibility:visible;transform:none;pointer-events:auto}.delphi-cta-stack[data-mobile-layout="fab"] .delphi-cta-mobile-toggle .delphi-cta-icon{transition:transform .18s ease}.delphi-cta-stack[data-mobile-layout="fab"].is-mobile-expanded .delphi-cta-mobile-toggle .delphi-cta-icon{transform:rotate(45deg)}.delphi-cta-stack[data-mobile-layout="fab"] .delphi-cta-action{width:auto;min-width:var(--delphi-size-mobile);max-width:min(260px,calc(100vw - 32px));justify-content:flex-start}.delphi-cta-stack[data-mobile-layout="fab"] .delphi-cta-action .delphi-cta-label{display:block;overflow:hidden;text-overflow:ellipsis}.delphi-cta-stack[data-mobile-layout="vertical"] .delphi-cta-mobile-toggle,.delphi-cta-stack[data-mobile-layout="icon_only"] .delphi-cta-mobile-toggle,.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-mobile-toggle{display:none}.delphi-cta-stack[data-mobile-layout="icon_only"] .delphi-cta-action{width:var(--delphi-size-mobile)!important;min-width:var(--delphi-size-mobile)!important;padding:0}.delphi-cta-stack[data-mobile-layout="icon_only"] .delphi-cta-label{display:none!important}.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-main{position:fixed;left:max(8px,env(safe-area-inset-left,0px));right:max(8px,env(safe-area-inset-right,0px));bottom:calc(8px + var(--delphi-collision-offset) + env(safe-area-inset-bottom,0px));display:block}.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-actions{display:flex;flex-direction:row;align-items:stretch;justify-content:stretch;gap:6px;padding:6px;border-radius:calc(var(--delphi-cta-radius) + 6px);background:var(--delphi-cta-background);background:color-mix(in srgb,var(--delphi-cta-background) 92%,transparent);box-shadow:var(--delphi-cta-shadow);backdrop-filter:blur(10px)}.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action{flex:1 1 0;width:auto;min-width:0;min-height:48px;padding:5px 7px;flex-direction:column;gap:3px;box-shadow:none}.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action .delphi-cta-label{display:block;max-width:100%;font-size:11px;overflow:hidden;text-overflow:ellipsis}.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop{position:fixed;right:max(14px,var(--delphi-side));bottom:calc(72px + var(--delphi-collision-offset) + env(safe-area-inset-bottom,0px))}.delphi-cta-stack--left[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop{left:max(14px,var(--delphi-side));right:auto}}
@media(max-width:359px){.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action .delphi-cta-label{display:none}.delphi-cta-stack[data-mobile-layout="fab"] .delphi-cta-action .delphi-cta-label{max-width:150px}}
@media(prefers-reduced-motion:reduce){.delphi-cta-stack,.delphi-cta-button,.delphi-cta-actions,.delphi-cta-mobile-toggle .delphi-cta-icon{transition:none!important}}


/* Alpha.2.1 mobile Bottom Dock: compact icon-only pill + independent Back to Top. */
@media(max-width:767px){
 .delphi-cta-stack[data-mobile-layout="bottom_bar"]{right:0;left:0;bottom:0;align-items:stretch;gap:0;pointer-events:none}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-main{position:fixed;left:max(16px,env(safe-area-inset-left,0px));right:max(16px,env(safe-area-inset-right,0px));bottom:calc(12px + var(--delphi-collision-offset) + env(safe-area-inset-bottom,0px));display:block;transition:right .18s ease;pointer-events:auto}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-main{right:calc(max(16px,env(safe-area-inset-right,0px)) + 60px)}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-actions{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(52px,1fr);align-items:center;justify-content:stretch;gap:2px;min-height:54px;padding:4px 6px;border:1px solid color-mix(in srgb,var(--delphi-cta-primary) 16%,#d9d9d9);border-radius:999px;background:var(--delphi-cta-background);box-shadow:0 6px 20px rgba(0,0,0,.10);backdrop-filter:blur(12px);overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-actions::-webkit-scrollbar{display:none}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action{width:auto;min-width:48px;min-height:44px;height:44px;padding:0 10px;border:0;border-radius:999px;background:transparent;color:var(--delphi-cta-text);box-shadow:none;gap:0;flex-direction:row;justify-content:center;transform:none}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action:hover,.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action:focus-visible{background:color-mix(in srgb,var(--delphi-cta-primary) 9%,transparent);color:var(--delphi-cta-primary);transform:none;outline:0}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action.is-current{background:color-mix(in srgb,var(--delphi-cta-primary) 11%,var(--delphi-cta-background));color:var(--delphi-cta-primary)}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action .delphi-cta-icon{width:22px;height:22px;flex:0 0 22px;color:currentColor}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action .delphi-cta-label{display:none!important}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-mobile-toggle{display:none!important}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop{position:fixed;right:max(16px,env(safe-area-inset-right,0px));left:auto;bottom:calc(14px + var(--delphi-collision-offset) + env(safe-area-inset-bottom,0px));width:50px;min-height:50px;height:50px;padding:0;border:1.5px solid var(--delphi-cta-primary);border-radius:999px;background:var(--delphi-cta-background);color:var(--delphi-cta-primary);box-shadow:0 4px 14px rgba(0,0,0,.08);transform:none}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop:hover,.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop:focus-visible{background:color-mix(in srgb,var(--delphi-cta-primary) 8%,var(--delphi-cta-background));color:var(--delphi-cta-primary);transform:none;outline:2px solid color-mix(in srgb,var(--delphi-cta-primary) 30%,transparent);outline-offset:2px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop .delphi-cta-icon{width:20px;height:20px;flex-basis:20px}
}
@media(max-width:359px){
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-main{left:8px;right:8px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-main{right:66px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-actions{grid-auto-columns:minmax(46px,1fr);padding-inline:4px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action{min-width:44px;padding-inline:7px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop{right:8px}
}

/* Alpha.2.2 mobile optical balance: dock/back-to-top parity and per-icon optical sizing. */
@media(max-width:767px){
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-main{bottom:calc(12px + var(--delphi-collision-offset) + env(safe-area-inset-bottom,0px))}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-actions{min-height:52px;height:52px;padding:4px 6px;box-sizing:border-box}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action{min-height:42px;height:42px;padding:0 9px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop{bottom:calc(12px + var(--delphi-collision-offset) + env(safe-area-inset-bottom,0px));width:52px;min-height:52px;height:52px;box-sizing:border-box}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action .delphi-cta-icon{width:20px;height:20px;flex-basis:20px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-channel="home"] .delphi-cta-icon{width:19px;height:19px;flex-basis:19px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-channel="zalo"] .delphi-cta-icon{width:24px;height:24px;flex-basis:24px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-channel="phone"] .delphi-cta-icon,
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-channel="call"] .delphi-cta-icon{width:19px;height:19px;flex-basis:19px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-channel="contact"] .delphi-cta-icon,
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-channel="messenger"] .delphi-cta-icon{width:20px;height:20px;flex-basis:20px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop .delphi-cta-icon{width:18px;height:18px;flex-basis:18px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-main{right:calc(max(16px,env(safe-area-inset-right,0px)) + 62px)}
}
@media(max-width:359px){
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-main{right:68px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-actions{height:50px;min-height:50px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action{height:40px;min-height:40px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop{width:50px;min-height:50px;height:50px}
}



/* Alpha.2.3 mobile dock prominence: centered shrink-wrap without BTT, adaptive width with BTT. */
@media(max-width:767px){
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-main{
  left:50%;right:auto;width:max-content;max-width:calc(100vw - 32px);transform:translateX(-50%);
  transition:left .18s ease,right .18s ease,width .18s ease,max-width .18s ease,transform .18s ease;
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-actions{
  width:max-content;max-width:calc(100vw - 32px);grid-auto-columns:60px;
  background:color-mix(in srgb,var(--delphi-cta-background) 96%,var(--delphi-cta-primary) 4%);
  border:1px solid color-mix(in srgb,var(--delphi-cta-primary) 28%,#d7d7d7);
  box-shadow:0 12px 30px rgba(0,0,0,.14),0 2px 8px rgba(0,0,0,.07),inset 0 1px 0 rgba(255,255,255,.78);
  backdrop-filter:blur(14px) saturate(125%);
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action{
  min-width:0;width:60px;
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action.is-current{
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--delphi-cta-primary) 8%,transparent);
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-main{
  left:max(16px,env(safe-area-inset-left,0px));
  right:calc(max(16px,env(safe-area-inset-right,0px)) + 62px);
  width:auto;max-width:none;transform:none;
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-actions{
  width:100%;max-width:none;grid-auto-columns:minmax(52px,1fr);
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-action{
  width:auto;
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop{
  box-shadow:0 10px 26px rgba(0,0,0,.13),0 2px 7px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.72);
 }
}
@media(max-width:359px){
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-main{
  left:50%;right:auto;width:max-content;max-width:calc(100vw - 16px);transform:translateX(-50%);
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-actions{
  max-width:calc(100vw - 16px);grid-auto-columns:56px;
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action{width:56px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-main{
  left:8px;right:68px;width:auto;max-width:none;transform:none;
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-actions{
  width:100%;max-width:none;grid-auto-columns:minmax(46px,1fr);
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-action{width:auto}
}

/* Alpha.2.4 action/modal/custom icon support. */
.delphi-cta-custom-icon{display:block;width:100%;height:100%;object-fit:contain}
.delphi-modal-open{overflow:hidden}
.delphi-cta-modal[hidden]{display:none!important}
.delphi-cta-modal{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:20px;box-sizing:border-box}
.delphi-cta-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.46);backdrop-filter:blur(3px)}
.delphi-cta-modal__dialog{position:relative;z-index:1;width:min(620px,calc(100vw - 32px));max-height:min(82vh,760px);overflow:auto;box-sizing:border-box;padding:28px;border-radius:clamp(18px,var(--delphi-cta-radius,20px),24px);background:var(--delphi-cta-background);color:var(--delphi-cta-text);box-shadow:0 24px 70px rgba(0,0,0,.24);outline:0}
.delphi-cta-modal__close{position:absolute;top:10px;right:12px;width:36px;height:36px;border:0;border-radius:999px;background:color-mix(in srgb,var(--delphi-cta-primary) 8%,var(--delphi-cta-background));color:var(--delphi-cta-text);font-size:26px;line-height:1;cursor:pointer}
.delphi-cta-modal__content{padding-top:14px}
@media(max-width:767px){.delphi-cta-modal{padding:12px}.delphi-cta-modal__dialog{width:calc(100vw - 24px);max-height:88vh;padding:24px 18px 20px;border-radius:18px}}

/* Beta.3.2: Modal geometry is deliberately capped and must not inherit an unbounded pill radius from CTA/theme tokens. */
/* Alpha.2.6 per-CTA theme-token backgrounds. Back to Top intentionally remains theme-controlled. */
.delphi-cta-action[data-bg-mode="primary"]{--delphi-item-bg:var(--delphi-cta-primary);--delphi-item-fg:var(--delphi-cta-background)}
.delphi-cta-action[data-bg-mode="secondary"]{--delphi-item-bg:var(--delphi-cta-secondary);--delphi-item-fg:var(--delphi-cta-background)}
.delphi-cta-action[data-bg-mode="accent"]{--delphi-item-bg:var(--delphi-cta-accent);--delphi-item-fg:var(--delphi-cta-background)}
.delphi-cta-action[data-bg-mode="primary"],.delphi-cta-action[data-bg-mode="secondary"],.delphi-cta-action[data-bg-mode="accent"],.delphi-cta-action[data-bg-mode="custom"]{background:var(--delphi-item-bg)!important;color:var(--delphi-item-fg)!important}
.delphi-cta-action[data-bg-mode="primary"]:hover,.delphi-cta-action[data-bg-mode="primary"]:focus-visible,.delphi-cta-action[data-bg-mode="secondary"]:hover,.delphi-cta-action[data-bg-mode="secondary"]:focus-visible,.delphi-cta-action[data-bg-mode="accent"]:hover,.delphi-cta-action[data-bg-mode="accent"]:focus-visible,.delphi-cta-action[data-bg-mode="custom"]:hover,.delphi-cta-action[data-bg-mode="custom"]:focus-visible{background:var(--delphi-item-bg)!important;color:var(--delphi-item-fg)!important;box-shadow:0 8px 22px color-mix(in srgb,var(--delphi-item-bg) 32%,transparent),var(--delphi-cta-shadow)}
@media(max-width:767px){.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="primary"],.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="secondary"],.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="accent"],.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="custom"]{background:var(--delphi-item-bg)!important;color:var(--delphi-item-fg)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--delphi-item-fg) 12%,transparent)}.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="primary"]:hover,.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="primary"]:focus-visible,.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="secondary"]:hover,.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="secondary"]:focus-visible,.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="accent"]:hover,.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="accent"]:focus-visible,.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="custom"]:hover,.delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-action[data-bg-mode="custom"]:focus-visible{background:var(--delphi-item-bg)!important;color:var(--delphi-item-fg)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--delphi-item-fg) 18%,transparent)}}


/* Beta.2 CTA Groups: primary group keeps zero offset; additional groups stack safely above it. */
.delphi-cta-stack{bottom:calc(var(--delphi-bottom) + var(--delphi-collision-offset) + var(--delphi-group-offset,0px) + env(safe-area-inset-bottom,0px))}
.delphi-cta-stack[hidden]{display:none!important}
@media(max-width:767px){
 .delphi-cta-stack{bottom:calc(max(12px,var(--delphi-bottom)) + var(--delphi-collision-offset) + var(--delphi-group-offset,0px) + env(safe-area-inset-bottom,0px))}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-main{bottom:calc(12px + var(--delphi-collision-offset) + var(--delphi-group-offset,0px) + env(safe-area-inset-bottom,0px))}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop{bottom:calc(12px + var(--delphi-collision-offset) + var(--delphi-group-offset,0px) + env(safe-area-inset-bottom,0px))}
}

/* Beta.4-dev stabilization: long-form modal, dynamic viewport and keyboard/focus safety. */
html.delphi-modal-open,body.delphi-modal-open{overflow:hidden!important;overscroll-behavior:none}
.delphi-cta-modal{padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));overflow:hidden}
.delphi-cta-modal__dialog{max-height:min(82vh,760px);max-height:min(82dvh,760px);max-height:min(calc(var(--delphi-visual-height,100vh) - 40px),760px);overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}
.delphi-cta-modal__content{min-width:0;overflow-wrap:anywhere}
.delphi-cta-modal__content img,.delphi-cta-modal__content iframe,.delphi-cta-modal__content video{max-width:100%;height:auto}
.delphi-cta-modal__close:focus-visible{outline:2px solid var(--delphi-cta-primary);outline-offset:2px}
@media(max-width:767px){.delphi-cta-modal{place-items:end center;padding:12px max(10px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-left,0px))}.delphi-cta-modal__dialog{width:100%;max-height:calc(var(--delphi-visual-height,100vh) - 24px);border-radius:18px;padding:24px 18px 20px}}


/* Beta.5.2 UI parity: token-aware CTA circles with Theme enforcement isolation.
 * HUEGO applies important button rules globally; scoped Delphi selectors below
 * deliberately win only inside CTA stacks (without modifying the host Theme).
 */
.delphi-cta-stack .delphi-cta-button.delphi-cta-action{
 border-radius:var(--delphi-cta-radius,999px)!important;
 background-color:var(--delphi-item-bg,var(--delphi-cta-primary))!important;
 color:var(--delphi-item-fg,var(--delphi-cta-background))!important;
 border-color:transparent!important;
}
.delphi-cta-stack .delphi-cta-button.delphi-cta-action:where(:hover,:focus-visible){
 background-color:var(--delphi-item-bg,var(--delphi-cta-primary))!important;
 color:var(--delphi-item-fg,var(--delphi-cta-background))!important;
}
/* Center Back to Top on the same axis and at the same diameter as action CTAs. */
.delphi-cta-stack .delphi-cta-button.delphi-cta-backtotop{
 box-sizing:border-box!important;display:flex;flex:0 0 auto;align-self:flex-end;
 align-items:center;justify-content:center;
 width:var(--delphi-size-desktop);min-width:var(--delphi-size-desktop);max-width:var(--delphi-size-desktop);
 height:var(--delphi-size-desktop);min-height:var(--delphi-size-desktop);max-height:var(--delphi-size-desktop);
 padding:0!important;aspect-ratio:1/1;line-height:1!important;
 border:0!important;border-radius:50%!important;
 background-color:var(--delphi-cta-primary)!important;
 color:var(--delphi-cta-background)!important;
 box-shadow:var(--delphi-cta-shadow);transform:none;
}
/* Left-aligned vertical groups remain left-aligned as configured. */
.delphi-cta-stack--left .delphi-cta-button.delphi-cta-backtotop{align-self:flex-start}
.delphi-cta-stack .delphi-cta-button.delphi-cta-backtotop:where(:hover,:focus-visible){
 background-color:var(--delphi-cta-primary)!important;
 color:var(--delphi-cta-background)!important;
}
.delphi-cta-stack .delphi-cta-button.delphi-cta-backtotop:focus-visible,
.delphi-cta-stack .delphi-cta-button.delphi-cta-action:focus-visible{
 outline:2px solid var(--delphi-cta-secondary)!important;outline-offset:3px!important;
}
.delphi-cta-stack .delphi-cta-backtotop .delphi-cta-icon{
 width:24px;height:24px;flex:0 0 24px;place-items:center;
}
@media(max-width:1024px){
 .delphi-cta-stack .delphi-cta-button.delphi-cta-backtotop{
  width:var(--delphi-size-tablet);min-width:var(--delphi-size-tablet);max-width:var(--delphi-size-tablet);
  height:var(--delphi-size-tablet);min-height:var(--delphi-size-tablet);max-height:var(--delphi-size-tablet);
 }
 .delphi-cta-stack .delphi-cta-backtotop .delphi-cta-icon{width:22px;height:22px;flex-basis:22px}
}
@media(max-width:767px){
 .delphi-cta-stack .delphi-cta-button.delphi-cta-backtotop{
  width:var(--delphi-size-mobile);min-width:var(--delphi-size-mobile);max-width:var(--delphi-size-mobile);
  height:var(--delphi-size-mobile);min-height:var(--delphi-size-mobile);max-height:var(--delphi-size-mobile);
 }
 .delphi-cta-stack .delphi-cta-backtotop .delphi-cta-icon{width:20px;height:20px;flex-basis:20px}
 /* Bottom dock: circle diameter matches CTA icons; all centerlines coincide. */
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-actions{
  height:52px;min-height:52px;align-items:center;
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-button.delphi-cta-action{
  box-sizing:border-box;justify-self:center;align-self:center;flex:0 0 44px;
  width:44px!important;min-width:44px!important;max-width:44px!important;
  height:44px;min-height:44px;max-height:44px;
  padding:0!important;border-radius:50%!important;
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-button.delphi-cta-action.is-current[data-channel="home"]{
  background-color:color-mix(in srgb,var(--delphi-cta-primary) 11%,var(--delphi-cta-background))!important;
  color:var(--delphi-cta-primary)!important;
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-button.delphi-cta-backtotop{
  right:max(16px,env(safe-area-inset-right,0px));left:auto;
  bottom:calc(16px + var(--delphi-collision-offset) + var(--delphi-group-offset,0px) + env(safe-area-inset-bottom,0px));
  width:44px;min-width:44px;max-width:44px;
  height:44px;min-height:44px;max-height:44px;
  border-radius:50%!important;
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-main{
  right:calc(max(16px,env(safe-area-inset-right,0px)) + 52px);
 }
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-backtotop .delphi-cta-icon{
  width:20px;height:20px;flex-basis:20px;
 }
}
@media(max-width:359px){
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-button.delphi-cta-backtotop{right:8px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"].is-btt-visible .delphi-cta-main{right:60px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-actions{height:52px;min-height:52px}
 .delphi-cta-stack[data-mobile-layout="bottom_bar"] .delphi-cta-button.delphi-cta-action{
  width:44px!important;min-width:44px!important;max-width:44px!important;height:44px;min-height:44px;max-height:44px;
 }
}
