[data-eclass-favourites] { position:relative; color:#34445b; }
[data-eclass-favourites] [data-favourites-toggle] { position:relative; display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; padding:9px; border:0; border-radius:8px; color:inherit; background:transparent; cursor:pointer; }
[data-eclass-favourites] [data-favourites-toggle]:hover,[data-eclass-favourites].is-open [data-favourites-toggle] { color:var(--ec-brand-primary,#245deb); background:#edf3fb; }
[data-eclass-favourites] [data-favourites-toggle] svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:1.8; }
[data-eclass-favourites] [data-favourites-count] { position:absolute; right:-1px; top:0; min-width:17px; height:17px; padding:0 4px; border-radius:12px; background:var(--ec-brand-primary,#245deb); color:white; font:700 10px/17px Arial,sans-serif; text-align:center; }
[data-eclass-favourites] [hidden] { display:none !important; }
[data-eclass-favourites] [data-favourites-panel] { position:fixed; z-index:25050; display:flex; flex-direction:column; min-height:120px; margin:0; padding:0; overflow:hidden; border:1px solid #d8e1ed; border-radius:12px; background:#fff; box-shadow:0 16px 44px rgb(20 40 70 / 20%); color:#17283f; font:400 13px/1.5 Arial,sans-serif; }
[data-eclass-favourites] [data-favourites-panel] > header { display:flex; align-items:center; justify-content:space-between; flex:none; gap:12px; padding:12px 14px; border-bottom:1px solid #e5ebf3; }
[data-eclass-favourites] [data-favourites-panel] :is(h2,h3) { margin:0; font-size:17px; line-height:1.4; }
[data-eclass-favourites] [data-favourites-close] { display:inline-flex; align-items:center; justify-content:center; flex:none; min-width:36px; min-height:36px; padding:7px; border:0; border-radius:50%; background:#f3f6fa; color:#536379; cursor:pointer; font:400 22px/1 Arial,sans-serif; }
[data-eclass-favourites] [data-favourites-close] svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; }
[data-eclass-favourites] [data-favourites-status] { flex:none; padding:10px 16px 0; margin:0; font-size:12px; color:#5a6b82; overflow-wrap:anywhere; }
[data-eclass-favourites] [data-favourites-status][role=alert] { color:#a33535; }
[data-eclass-favourites] [data-favourites-empty] { padding:20px 16px; margin:0; color:#65748a; }
[data-eclass-favourites] [data-favourites-list] { flex:1 1 auto; min-height:0; margin:10px 0 0; padding:0; list-style:none; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
[data-eclass-favourites] .ec-favourites-menu__item { display:flex; align-items:center; gap:10px; min-width:0; padding:12px 14px; border-bottom:1px solid #edf1f6; }
[data-eclass-favourites] .ec-favourites-menu__image { flex:none; width:66px; height:46px; margin:0; border-radius:5px; object-fit:cover; }
[data-eclass-favourites] .ec-favourites-menu__item-body { flex:1; min-width:0; }
[data-eclass-favourites] .ec-favourites-menu__title { display:block; margin:0; color:#17283f; font-size:13px; font-weight:700; line-height:1.45; text-decoration:none; overflow-wrap:anywhere; }
[data-eclass-favourites] a.ec-favourites-menu__title:hover { color:var(--ec-brand-primary,#245deb); text-decoration:underline; }
[data-eclass-favourites] .ec-favourites-menu__meta { display:flex; align-items:center; flex-wrap:wrap; gap:5px 8px; margin-top:5px; color:#61738b; font-size:11px; }
[data-eclass-favourites] .ec-favourites-menu__alert { padding:2px 6px; border-radius:4px; background:#edf9f3; color:#1f7253; font-weight:700; }
[data-eclass-favourites] .ec-favourites-menu__coming { color:#64748b; }
[data-eclass-favourites] .ec-favourites-menu__price { font-weight:700; }
[data-eclass-favourites] .ec-favourites-menu__heart { display:inline-flex; flex:none; justify-content:center; align-items:center; width:38px; height:38px; padding:9px; border:1px solid #dbe3ed; border-radius:50%; color:var(--ec-brand-primary,#245deb); background:#fff; cursor:pointer; }
[data-eclass-favourites] .ec-favourites-menu__heart svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.8; }
[data-eclass-favourites] .ec-favourites-menu__heart[aria-pressed=true] svg { fill:currentColor; }
[data-eclass-favourites] [data-favourites-more], [data-eclass-favourites] .ec-favourites-menu__retry { align-self:start; flex:none; min-height:38px; padding:8px 12px; border:1px solid #d4deec; border-radius:6px; color:var(--ec-brand-primary,#245deb); background:#f6f9fe; cursor:pointer; font:700 12px/1.4 Arial,sans-serif; }
[data-eclass-favourites] [data-favourites-more] { margin:12px 14px; }
[data-eclass-favourites] .ec-favourites__help { flex:none; padding:10px 14px; margin:0; border-top:1px solid #edf1f6; background:#f8fafd; color:#66768b; font:400 11px/1.5 Arial,sans-serif; }
[data-eclass-favourites] .ec-favourites-menu__retry { display:inline-flex; margin:8px 0 2px 10px; }
[data-eclass-favourites] :is(button,a):focus-visible { outline:2px solid var(--ec-brand-primary,#245deb); outline-offset:2px; }
[data-eclass-favourites] button:disabled { opacity:.6; cursor:wait; }
.ec-header-favourites-mobile { display:none; }
@media(max-width:920px) {
 .ec-header-favourites-mobile { display:block; }
 [data-eclass-favourites] [data-favourites-toggle] { width:44px; height:44px; }
 [data-eclass-favourites] [data-favourites-close], [data-eclass-favourites] .ec-favourites-menu__heart { min-width:44px; min-height:44px; }
 [data-eclass-favourites] .ec-favourites-menu__item { padding:12px; gap:8px; }
 [data-eclass-favourites] .ec-favourites-menu__image { width:54px; height:42px; }
 [data-eclass-favourites] [data-favourites-more] { min-height:44px; }
}
