.bell-icon{width:1.35rem;height:1.35rem;overflow:visible;color:var(--orange,#ff4b00)}
.bell-body{transform-origin:50% 12%;animation:bell-swing 2.4s ease-in-out infinite}
.bell-waves{transform-origin:center;animation:bell-waves 2.4s ease-in-out infinite}
@keyframes bell-swing{0%,60%,100%{transform:rotate(0)}10%{transform:rotate(14deg)}22%{transform:rotate(-12deg)}34%{transform:rotate(8deg)}46%{transform:rotate(-5deg)}}
@keyframes bell-waves{0%,55%,100%{opacity:0}12%,30%{opacity:1}22%,42%{opacity:.3}}
@media (prefers-reduced-motion:reduce){.bell-body,.bell-waves{animation:none}.bell-waves{opacity:0}}

.card-price-alert{display:inline-grid;width:30px;height:30px;margin-left:auto;place-items:center;border:0;border-radius:50%;background:#fff1eb;color:var(--orange,#ff4b00);text-decoration:none;cursor:pointer;transition:background-color .18s ease,transform .18s ease}
.card-price-alert:hover{background:#ffe0d3;transform:scale(1.06)}
.card-price-alert:focus-visible{outline:3px solid #ffb89e;outline-offset:2px}
.card-price-alert .bell-icon{width:20px;height:20px}

.price-alert-dialog{width:min(440px,calc(100% - 30px));overflow:hidden;border:0;border-radius:20px;padding:0;background:#fff;box-shadow:0 24px 70px #10152645}
.price-alert-dialog::backdrop{background:#10152680}
.price-alert-dialog form{position:relative;display:grid;gap:16px;padding:28px}
.price-alert-dialog h2{margin:0 30px 4px 0;font-size:1.35rem}
.price-alert-dialog label{display:grid;gap:6px;color:var(--muted,#647087);font-size:.82rem;font-weight:650}
.price-alert-dialog label:has(input[type="checkbox"]){display:flex;align-items:center}
.price-alert-dialog input:not([type="checkbox"]){width:100%;min-height:44px;border:1px solid #cfd4dd;border-radius:8px;padding:9px 11px;font:inherit}
.price-alert-dialog [data-price-alert-close]:not(.price-alert-continue){position:absolute;top:16px;right:18px;border:0;background:transparent;font-size:1.7rem;cursor:pointer}
.price-alert-dialog button[type="submit"]{min-height:46px;border:0;border-radius:9px;background:var(--orange,#ff4b00);color:#fff;font:inherit;font-weight:800;cursor:pointer}
.price-alert-success{position:relative;display:flex;align-items:center;flex-direction:column;gap:14px;padding:36px 32px 30px;background:linear-gradient(180deg,#f7fff9 0,#fff 42%);text-align:center}
.price-alert-success h2{margin:0;color:#101526;font-size:1.45rem;line-height:1.2}
.price-alert-success p{max-width:36ch;margin:0;color:#465166;line-height:1.55}
.price-alert-success-icon{display:grid;width:58px;height:58px;margin:0 auto 2px;place-items:center;border:1px solid #c9ead5;border-radius:50%;background:#e8f7ee;color:#18864b;font-size:1.7rem;font-weight:900;box-shadow:0 8px 22px #18864b1f}
.price-alert-success [data-price-alert-close]:not(.price-alert-continue){top:12px;right:14px;display:grid;width:36px;height:36px;padding:0;place-items:center;border-radius:50%;color:#596377;font-size:1.4rem;line-height:1}
.price-alert-success [data-price-alert-close]:not(.price-alert-continue):hover{background:#eef1f4;color:#101526}
.price-alert-continue{width:100%;min-height:46px;border:0;border-radius:10px;background:var(--orange,#ff4b00);color:#fff;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 7px 16px #ff4b002b}
.price-alert-continue:hover{background:var(--orange-dark,#ed4308)}
.price-alert-continue:focus-visible,.price-alert-dialog [data-price-alert-close]:focus-visible{outline:3px solid #ffb89e;outline-offset:2px}
.price-alert-success-note{color:var(--muted,#647087);font-size:.88rem}
@media (max-width:480px){.price-alert-success{padding:34px 22px 26px}.price-alert-success h2{font-size:1.3rem}}
