/* BB Favorites basic styles */

/* === BBF BUTTON STYLES — START === */
.bbf-fav-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:0;
    padding:8px;
    border:1px solid #e5e7eb;
    border-radius:999px;
    background:#f9fafb;
    color:#1f2937;
    font-weight:600;
    line-height:1.2;
    cursor:pointer;
    transition:all .3s cubic-bezier(0.4, 0, 0.2, 1);
    position:relative;
    overflow:hidden;
}

/* Эффект свечения при наведении */
.bbf-fav-btn::before{
    content:'';
    position:absolute;
    top:50%;
    left:50%;
    width:0;
    height:0;
    border-radius:50%;
    background:radial-gradient(circle, rgba(104,163,255,0.15) 0%, transparent 70%);
    transform:translate(-50%, -50%);
    transition:width .4s ease, height .4s ease;
    pointer-events:none;
}

.bbf-fav-btn:hover{
    background:#ffffff;
    border-color:#bfdbfe;
    box-shadow:0 4px 14px rgba(104,163,255,.12), 0 2px 4px rgba(0,0,0,.06);
    transform:translateY(-2px);
}

.bbf-fav-btn:hover::before{
    width:120px;
    height:120px;
}

.bbf-fav-btn:active{
    transform:translateY(0) scale(0.95);
    box-shadow:0 2px 8px rgba(0,0,0,.08);
}

/* Стили для избранного */
.bbf-fav-btn.is-favorite{
    background:linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
    border-color:#93c5fd;
    color:#1e40af;
    box-shadow:0 2px 8px rgba(104,163,255,.15);
}

.bbf-fav-btn.is-favorite::before{
    background:radial-gradient(circle, rgba(104,163,255,0.2) 0%, transparent 70%);
}

.bbf-fav-btn.is-favorite:hover{
    background:linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
    border-color:#68a3ff;
    box-shadow:0 4px 16px rgba(104,163,255,.25), 0 2px 4px rgba(104,163,255,.1);
    transform:translateY(-2px);
}

/* Иконка внутри кнопки */
.bbf-fav-btn.icon-only .bbf-fav-icon-img{
    display:block;
    width:22px;
    height:22px;
    object-fit:contain;
    transition:transform .3s cubic-bezier(0.34, 1.56, 0.64, 1), filter .3s ease;
}

/* Цвет SVG иконки — мягкий серый */
.bbf-fav-btn .bbf-fav-icon-img{
    filter:invert(52%) sepia(8%) saturate(478%) hue-rotate(182deg) brightness(95%) contrast(88%);
}

/* При наведении — чуть темнее */
.bbf-fav-btn:hover .bbf-fav-icon-img{
    transform:scale(1.15) rotate(5deg);
    filter:invert(38%) sepia(10%) saturate(612%) hue-rotate(182deg) brightness(92%) contrast(90%);
}

/* Для избранного — голубой #68A3FF */
.bbf-fav-btn.is-favorite .bbf-fav-icon-img{
    filter:invert(62%) sepia(65%) saturate(2179%) hue-rotate(197deg) brightness(101%) contrast(100%);
}

/* При наведении на избранное — ярче и насыщеннее */
.bbf-fav-btn.is-favorite:hover .bbf-fav-icon-img{
    filter:invert(57%) sepia(97%) saturate(2567%) hue-rotate(200deg) brightness(102%) contrast(101%);
}

.bbf-fav-btn:active .bbf-fav-icon-img{
    transform:scale(0.9) rotate(-5deg);
}

/* Пульсация для избранного */
.bbf-fav-btn.is-favorite .bbf-fav-icon-img{
    animation:favPulse 2s ease-in-out infinite;
}

@keyframes favPulse{
    0%, 100%{ transform:scale(1); }
    50%{ transform:scale(1.08); }
}

/* Убираем пульсацию при наведении */
.bbf-fav-btn.is-favorite:hover .bbf-fav-icon-img{
    animation:none;
    transform:scale(1.15) rotate(5deg);
}

/* === BBF BUTTON STYLES — END === */

.bbf-favorites-grid{
	display:grid;
	grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
	gап:16px;
	margin:16px 0;
}
.bbf-card{
	border:1px solid #e5e7eb;
	border-radius:14px;
	overflow:hidden;
	background:#fff;
}
.bbf-card .bbf-card-inner{
	display:flex;flex-direction:column;gap:8px;padding:12px;
}
.bbf-card h3{
	margin:0;font-size:1rem;line-height:1.3;
}
.bbf-card a{ text-decoration:none; color:#111827; }
.bbf-meta{ font-size:.85rem; color:#6b7280; }

.bbf-pagination{ display:flex; gap:8px; margin:16px 0; }
.bbf-pagination a{
	padding:6px 10px; border:1px solid #e5e7eb; border-radius:10px; text-decoration:none; color:#111827;
}
.bbf-pagination a.current{ background:#111827; color:#fff; border-color:#111827; }
