.cart-suggestions { width: min(760px, calc(100vw - 28px)); max-height: calc(100dvh - 32px); padding: 0; margin: auto; border: 0; border-radius: 18px; color: #172554; background: #fff; box-shadow: 0 24px 80px #0f172a40; overflow: auto; }
.cart-suggestions:not([open]) { display: none; }
.cart-suggestions::backdrop { background: #0f172a99; }
.cart-suggestions [hidden] { display: none !important; }
.cart-suggestions-head { display: flex; gap: 16px; align-items: flex-start; justify-content: space-between; padding: 20px 24px 12px; }
.cart-suggestions-head h2 { margin: 4px 0; font-size: 22px; line-height: 1.25; }
.cart-suggestions-success { margin: 0; font-size: 13px; font-weight: 700; color: #166534; }
.cart-suggestions-product { margin: 6px 0 0; color: #64748b; font-size: 13px; }
.cart-suggestions-head button { flex-shrink: 0; width: 40px; height: 40px; font-size: 26px; border: 1px solid #e2e8f0; border-radius: 50%; background: #fff; cursor: pointer; }
.cart-suggestions-content { padding: 0 24px 20px; }
.cart-suggestions-content [role=status] { color: #475569; font-size: 14px; }
.cart-suggestions-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.cart-suggestions-card { min-width: 0; border: 1px solid #e2e8f0; border-radius: 12px; padding: 12px; display: flex; flex-direction: column; gap: 8px; }
.cart-suggestions-card > a { color: #172554; text-decoration: none; font-size: 13px; line-height: 1.4; font-weight: 600; }
.cart-suggestions-name { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; min-height: 4.2em; }
.cart-suggestions-card img { display: block; width: 100%; height: 105px; object-fit: contain; margin-bottom: 8px; }
.cart-suggestions-card strong { font-size: 16px; margin-top: auto; }
.cart-suggestions-card form { margin: 0; }
.cart-suggestions-card button, .cart-suggestions-options { display: block; box-sizing: border-box; width: 100%; padding: 10px 6px; border: 1px solid #1d4ed8; border-radius: 8px; color: #1d4ed8 !important; background: #eff6ff; text-align: center; font-size: 12px !important; font-weight: 700; cursor: pointer; text-decoration: none; }
.cart-suggestions-card button:disabled { border-color: #bbf7d0; background: #f0fdf4; color: #166534 !important; cursor: default; }
.cart-suggestions-hydrogel { display: inline-block; margin-top: 16px; font-size: 14px; color: #1d4ed8; }
.cart-suggestions-foot { position: sticky; bottom: 0; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 24px; border-top: 1px solid #e2e8f0; background: #fff; }
.cart-suggestions-foot a, .cart-suggestions-foot button { padding: 12px 16px; border-radius: 9px; font-size: 14px; font-weight: 700; text-decoration: none; cursor: pointer; }
.cart-suggestions-foot a { color: #fff; background: #1d4ed8; border: 1px solid #1d4ed8; }
.cart-suggestions-foot button { color: #334155; background: #fff; border: 1px solid #cbd5e1; }
.cart-suggestions :focus-visible { outline: 3px solid #60a5fa; outline-offset: 3px; }
@media(max-width: 540px) {
  .cart-suggestions-head { padding: 16px; }
  .cart-suggestions-head h2 { font-size: 19px; }
  .cart-suggestions-content { padding: 0 16px 16px; }
  .cart-suggestions-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .cart-suggestions-card { padding: 9px; }
  .cart-suggestions-foot { padding: 12px 16px; }
  .cart-suggestions-foot a, .cart-suggestions-foot button { padding: 11px 9px; font-size: 12px; }
}
