.favorite-btn{position:absolute;top:var(--space-3);right:var(--space-3);width:36px;height:36px;border:none;border-radius:50%;background:rgba(255,255,255,.9);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:all .3s ease;z-index:20;box-shadow:0 2px 8px rgba(0,0,0,.1)}.favorite-btn:hover{transform:scale(1.1);background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.15)}.favorite-btn .heart{color:#ccc;transition:all .3s ease}.favorite-btn.active .heart{color:#e74c3c}.favorite-btn.active{animation:heartPop .4s ease}@keyframes heartPop{0%{transform:scale(1)}25%{transform:scale(1.3)}50%{transform:scale(.9)}100%{transform:scale(1)}}.card-back .favorite-btn{background:rgba(255,255,255,.2)}.card-back .favorite-btn:hover{background:rgba(255,255,255,.4)}.card-back .favorite-btn .heart{color:rgba(255,255,255,.6)}.card-back .favorite-btn.active .heart{color:#e74c3c}.favorites-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);color:var(--text);text-decoration:none;font-size:var(--font-size-sm);border-radius:var(--radius);transition:all .2s ease}.favorites-link:hover{background:var(--c2);color:var(--c8)}.favorites-link .heart-icon{color:#e74c3c}.favorites-count{background:var(--c6);color:#fff;font-size:.7rem;padding:2px 6px;border-radius:10px;font-weight:600;min-width:18px;text-align:center}.favorites-count:empty,.favorites-count[data-count="0"]{display:none}.favorieten-view{background:#fff}.favorieten-main,.favorieten-view .main{padding-top:140px}.favorites-page-header{display:none}.favorites-empty{text-align:center;padding:var(--space-10);background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-light)}.favorites-empty .empty-icon{font-size:4rem;margin-bottom:var(--space-4);opacity:.5}.favorites-empty h3{color:var(--c8);margin-bottom:var(--space-2)}.favorites-empty p{color:var(--muted);margin-bottom:var(--space-6)}.favorites-empty .browse-btn{display:inline-flex;align-items:center;gap:var(--space-2)}.favorite-card-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.favorite-card-actions .btn{flex:1}.remove-favorite-btn{background:0 0;border:1px solid var(--c3);color:var(--muted)}.remove-favorite-btn:hover{background:#fee2e2;border-color:#e74c3c;color:#e74c3c}.favorite-category{display:inline-block;background:var(--c2);color:var(--c7);font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);border-radius:calc(var(--radius) * .5);margin-bottom:var(--space-2)}.toast.favorite-toast{background:linear-gradient(135deg,#e74c3c 0,#c0392b 100%)}.toast.favorite-toast.removed{background:linear-gradient(135deg,var(--c6) 0,var(--c7) 100%)}.nav-dropdown-header{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--c3)}.nav-header-links{display:flex;gap:var(--space-2);align-items:center;margin-top:0;flex-wrap:nowrap;justify-content:space-between}.nav-back-link,.nav-favorites-link,.nav-recent-link{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:500;text-decoration:none;border-radius:calc(var(--radius) * .5);transition:all .2s ease;border:1px solid transparent;flex:1;justify-content:center;white-space:nowrap}.nav-favorites-link{background:linear-gradient(135deg,#fee2e2 0,#fecaca 100%);color:#dc2626;border-color:#fca5a5;order:2}.nav-favorites-link:hover{background:linear-gradient(135deg,#fecaca 0,#fca5a5 100%);transform:translateY(-1px);box-shadow:0 2px 8px rgba(220,38,38,.2)}.nav-recent-link{background:linear-gradient(135deg,#dbeafe 0,#bfdbfe 100%);color:#2563eb;border-color:#93c5fd;order:3}.nav-recent-link:hover{background:linear-gradient(135deg,#bfdbfe 0,#93c5fd 100%);transform:translateY(-1px);box-shadow:0 2px 8px rgba(37,99,235,.2)}.nav-back-link{background:linear-gradient(135deg,var(--c1) 0,var(--c2) 100%);color:var(--c8);border-color:var(--c3);order:1}.nav-back-link:hover{background:linear-gradient(135deg,var(--c2) 0,var(--c3) 100%);transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}