.km-card{position:relative}
.km-fav{position:absolute;top:10px;right:10px;z-index:3;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.9);color:#111;display:grid;place-items:center;cursor:pointer;padding:0;transition:transform .15s}
.km-fav:hover{transform:scale(1.08)}
.km-fav svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.km-fav.is-on{color:#c2185b}
.km-fav.is-on svg{fill:currentColor}
.km-fav--inline{position:static;width:auto;height:44px;padding:0 18px;border-radius:var(--style-border-radius-buttons-primary,0);border:1px solid currentColor;background:transparent;display:inline-flex;align-items:center;gap:8px;margin-top:12px;font:inherit;font-size:14px}
.km-fav--inline.is-on{color:#c2185b}
.km-fav-link{position:relative;display:inline-grid;place-items:center;width:44px;height:44px;color:inherit;text-decoration:none}
.km-fav-link svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.km-fav-badge{position:absolute;top:4px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#111;color:#fff;font-size:10px;line-height:16px;text-align:center}
.km-fav-badge[hidden]{display:none}
