.hubbix-shipping-card { position:relative; }
.hubbix-shipping-trigger { appearance:none; background:transparent; border:0; color:inherit; cursor:pointer; font:inherit; margin:0; padding:0; text-align:left; }
.hubbix-shipping-trigger:focus-visible { border-radius:6px; box-shadow:0 0 0 3px rgba(255,102,0,.22); outline:2px solid #ff6600; outline-offset:3px; }
.hubbix-shipping-popover { --hubbix-shipping-shift-x:0px; background:#fff; border:1px solid #e8edf3; border-radius:12px; bottom:calc(100% + 12px); box-shadow:0 12px 30px rgba(0,30,72,.12); color:#001e48; left:50%; padding:18px; position:absolute; transform:translateX(calc(-50% + var(--hubbix-shipping-shift-x))); width:min(360px,calc(100vw - 32px)); z-index:100; }
.hubbix-shipping-popover[hidden] { display:none!important; }
.hubbix-shipping-popover--below { bottom:auto; top:calc(100% + 12px); }
.hubbix-shipping-popover[data-hubbix-shipping-fixed] { bottom:auto; left:0; position:fixed; top:0; transform:none; }
.hubbix-shipping-popover h3 { color:#001e48; font-size:1.05rem; font-weight:900; line-height:1.25; margin:0 0 12px; }
.hubbix-shipping-popover__row { align-items:start; border-top:1px solid #e8edf3; display:grid; gap:12px; grid-template-columns:minmax(0,1fr) auto; padding:10px 0; }
.hubbix-shipping-popover__row strong,.hubbix-shipping-popover__row span { display:block; margin:0; }
.hubbix-shipping-popover__row strong { color:#001e48; font-size:.84rem; font-weight:800; line-height:1.3; }
.hubbix-shipping-popover__row span { color:#69728a; font-size:.73rem; line-height:1.4; margin-top:3px; }
.hubbix-shipping-popover__row .hubbix-shipping-popover__price { color:#ff6600; font-size:.84rem; font-weight:900; line-height:1.3; white-space:nowrap; }
.hubbix-shipping-popover__link { color:#001e48; display:inline-block; font-size:.8rem; font-weight:800; line-height:1.35; margin-top:8px; text-decoration:none; }
.hubbix-shipping-popover__link:hover,.hubbix-shipping-popover__link:focus { color:#ff6600; text-decoration:underline; }
@media (max-width:767px) { .hubbix-shipping-popover { padding:16px; width:min(360px,calc(100vw - 24px)); } }
@media (max-width:420px) { .hubbix-shipping-popover__row { gap:8px; } }
