.ch-product-gallery-media > button.ch-wishlist-heart,
#ch-wishlist-toggle { appearance:none; display:flex; align-items:center; justify-content:center; width:44px; height:44px; min-width:44px; padding:0; border:0; border-radius:50%!important; background:#fff; color:#212529!important; box-shadow:0 1px 8px #00000012; cursor:pointer; line-height:1; transition:background-color 160ms ease,transform 160ms ease; }
.ch-product-gallery-media > button.ch-wishlist-heart { position:absolute; right:12px; top:12px; z-index:4; }
.ch-wishlist-heart svg, #ch-wishlist-toggle svg { display:block; flex:none; pointer-events:none; }
.ch-product-gallery-media > button.ch-wishlist-heart[aria-pressed="true"] svg { fill:currentColor; }
.ch-product-gallery-media > button.ch-wishlist-heart:is(:hover,:focus,:active) { border-radius:50%!important; background:#ebe8e3; }
.ch-product-gallery-media > button.ch-wishlist-heart:active, #ch-wishlist-toggle:active { transform:scale(.96); }
.ch-wishlist-heart:focus-visible, #ch-wishlist-toggle:focus-visible { outline:2px solid #212529; outline-offset:3px; }
#ch-wishlist-toggle { position:fixed; right:24px; bottom:calc(24px + env(safe-area-inset-bottom)); width:56px; height:56px; z-index:99980; background:#212529; color:#fff!important; box-shadow:0 4px 20px #0002; }
#ch-wishlist-toggle:is(:hover,:focus,:active) { border-radius:50%!important; background:#393d3f; }
.ch-wishlist-badge { position:absolute; top:-2px; right:-2px; min-width:20px; height:20px; padding:0 5px; border-radius:20px; background:#f3f1ed; color:#212529; border:1px solid #fff; font:500 11px/18px Roboto,sans-serif; text-align:center; }
#ch-wishlist-panel { position:fixed; inset:0 0 0 auto; margin:0; border:0; padding:0; width:min(460px,100vw); max-width:100vw; height:100vh; height:100dvh; max-height:100dvh; background:#fff; color:#212529; overflow:hidden; box-sizing:border-box; opacity:0; transform:translateX(100%); transition:transform 240ms cubic-bezier(.22,.68,0,1),opacity 180ms ease; }
#ch-wishlist-panel[open] { display:flex; flex-direction:column; }
#ch-wishlist-panel.is-open { opacity:1; transform:none; }
#ch-wishlist-panel::backdrop { background:#0000; transition:background-color 180ms ease; }
#ch-wishlist-panel.is-open::backdrop { background:#0005; }
#ch-wishlist-panel *, #ch-wishlist-panel *::before, #ch-wishlist-panel *::after { box-sizing:border-box; }
#ch-wishlist-panel [hidden], #ch-wishlist-toggle[hidden], #ch-wishlist-toggle [hidden] { display:none!important; }
html.ch-wishlist-open { overflow:hidden; }
#ch-wishlist-panel .ch-wishlist-header { display:flex; justify-content:space-between; gap:16px; align-items:center; padding:26px 24px 23px; border-bottom:1px solid #e6e3df; flex:none; }
#ch-wishlist-panel .ch-wishlist-header p { margin:0 0 7px; font:400 10px/1.4 Roboto,sans-serif; letter-spacing:.13em; color:#777; }
#ch-wishlist-panel h2 { display:flex; align-items:center; gap:6px; margin:0; font:400 27px/1.2 Roboto,sans-serif; letter-spacing:-.025em; color:#212529; }
#ch-wishlist-panel .ch-wishlist-heading-count { color:#777; font-size:18px; }
#ch-wishlist-panel button.ch-wishlist-close { display:flex; align-items:center; justify-content:center; width:44px; height:44px; min-width:44px; border:0; padding:0; border-radius:50%; background:transparent; color:#212529; cursor:pointer; }
#ch-wishlist-panel button.ch-wishlist-close:is(:hover,:focus) { background:#f3f1ed; border-radius:50%; }
#ch-wishlist-panel :focus-visible { outline:2px solid #212529; outline-offset:3px; }
#ch-wishlist-panel .ch-wishlist-body { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:0 24px; }
#ch-wishlist-panel .ch-wishlist-items { list-style:none; padding:0; margin:0; }
#ch-wishlist-panel .ch-wishlist-item { display:grid; grid-template-columns:92px minmax(0,1fr); gap:16px; padding:22px 0; margin:0; border-bottom:1px solid #e6e3df; }
#ch-wishlist-panel .ch-wishlist-item img { display:block; width:92px; height:92px; object-fit:contain; background:#f6f5f2; }
#ch-wishlist-panel .ch-wishlist-item-content { min-width:0; }
#ch-wishlist-panel .ch-wishlist-brand { margin:0 0 5px; font-size:11px; line-height:1.4; color:#777; }
#ch-wishlist-panel .ch-wishlist-name { display:block; color:#212529; text-decoration:none; font:500 15px/1.4 Roboto,sans-serif; margin:0 0 6px; overflow-wrap:anywhere; }
#ch-wishlist-panel .ch-wishlist-code { font-size:11px; line-height:1.4; color:#777; margin:0 0 6px; overflow-wrap:anywhere; }
#ch-wishlist-panel .ch-wishlist-price { margin:0; font-size:13px; line-height:1.5; }
#ch-wishlist-panel button.ch-wishlist-remove { display:inline-flex; align-items:center; gap:5px; min-height:32px; padding:3px 0; margin:2px 0 0; border:0; border-radius:0; box-shadow:none; background:transparent; color:#777; font:400 11px/1.4 Roboto,sans-serif; text-transform:none; cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
#ch-wishlist-panel .ch-wishlist-footer { flex:none; padding:18px 24px 24px; border-top:1px solid #e6e3df; background:#fff; }
#ch-wishlist-panel .ch-wishlist-session-note { margin:0 0 13px; color:#777; font:400 11px/1.5 Roboto,sans-serif; }
#ch-wishlist-panel button.ch-wishlist-export, #ch-wishlist-panel a.ch-wishlist-sign-in { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:48px; padding:13px 16px; margin:0; border:0; border-radius:0; box-shadow:none; background:#212529; color:#fff; font:400 14px/1.4 Roboto,sans-serif; text-decoration:none; text-transform:none; cursor:pointer; }
#ch-wishlist-panel button.ch-wishlist-export:is(:hover,:focus), #ch-wishlist-panel a.ch-wishlist-sign-in:hover { background:#000; }
#ch-wishlist-panel button:disabled { opacity:.45; cursor:wait; }
#ch-wishlist-panel .ch-wishlist-access, #ch-wishlist-panel .ch-wishlist-empty { padding:40px 0; }
#ch-wishlist-panel h3 { margin:0 0 12px; font:400 23px/1.3 Roboto,sans-serif; }
#ch-wishlist-panel .ch-wishlist-access p, #ch-wishlist-panel .ch-wishlist-empty p { font:400 14px/1.65 Roboto,sans-serif; color:#666; margin:0 0 22px; }
#ch-wishlist-panel .ch-wishlist-empty > svg { width:30px; height:30px; margin-bottom:20px; }
#ch-wishlist-panel p.ch-wishlist-contact { margin:24px 0 0; font-size:12px; }
#ch-wishlist-panel .ch-wishlist-contact a { color:#212529; text-decoration:underline; text-underline-offset:3px; }
#ch-wishlist-panel .ch-wishlist-loading { padding:35px 0; color:#666; font-size:14px; }
#ch-wishlist-panel .ch-wishlist-status { flex:none; margin:0; padding:0 24px; font:400 12px/1.5 Roboto,sans-serif; color:#54585a; }
#ch-wishlist-panel .ch-wishlist-status:not(:empty) { padding:12px 24px; border-top:1px solid #e6e3df; }
@media(max-width:600px) { #ch-wishlist-toggle { right:16px; bottom:calc(16px + env(safe-area-inset-bottom)); width:52px; height:52px; } #ch-wishlist-panel .ch-wishlist-header { padding-top:calc(20px + env(safe-area-inset-top)); } #ch-wishlist-panel .ch-wishlist-footer { padding-bottom:calc(20px + env(safe-area-inset-bottom)); } }
@media(prefers-reduced-motion:reduce) { #ch-wishlist-panel, #ch-wishlist-panel::backdrop, .ch-product-gallery-media > button.ch-wishlist-heart, #ch-wishlist-toggle { transition:none; } }
