.favorites-page{--fav-font-serif:var(--font-serif);--fav-font-sans:var(--font-sans);--fav-ink:#1a1a1a;--fav-ink-soft:rgba(0,0,0,0.55);--fav-ink-muted:rgba(0,0,0,0.35);--fav-border:rgba(0,0,0,0.08);--fav-border-strong:rgba(0,0,0,0.15);--fav-bg:#fafaf8;--fav-surface:#ffffff;--fav-surface-raised:#f3f3f3;--fav-accent:#3b82f6;--fav-accent-hover:#1d4ed8;--fav-signal:#e01e5a;--fav-container:1320px;--fav-gap:clamp(24px,2vw,48px);--fav-ease-out:cubic-bezier(0.25,0.46,0.45,0.94);--fav-ease-spring:cubic-bezier(0.34,1.56,0.64,1);background:var(--fav-bg);color:var(--fav-ink);font-family:var(--fav-font-sans);font-weight:300;line-height:1.6;-webkit-font-smoothing:antialiased}[data-theme=dark] .favorites-page{--fav-ink:#f4f1ea;--fav-ink-soft:rgba(244,241,234,0.62);--fav-ink-muted:rgba(244,241,234,0.42);--fav-border:rgba(244,241,234,0.1);--fav-border-strong:rgba(244,241,234,0.2);--fav-bg:#0f0f10;--fav-surface:#17171a;--fav-surface-raised:#1f1f22;--fav-accent:#6ea8ff;--fav-accent-hover:#b1cfff}.favorites-page *{box-sizing:border-box}.favorites-page button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}.favorites-page a{color:inherit;text-decoration:none;transition:opacity .3s ease}.favorites-page a:hover{opacity:.8}.favorites-page img{max-width:100%;height:auto;display:block}.favorites-page .page-header{padding:120px var(--fav-gap) 40px;max-width:var(--fav-container);margin:0 auto;text-align:center}.favorites-page .eyebrow{font-family:var(--fav-font-sans);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--fav-ink-soft);margin:0 0 20px}.favorites-page .page-title{font-family:var(--fav-font-serif);font-weight:300;font-size:clamp(56px,8vw,112px);line-height:1.02;letter-spacing:-.02em;margin:0 0 24px;color:var(--fav-ink)}.favorites-page .page-title em{font-style:italic;font-weight:300}.favorites-page .page-lede{font-family:var(--fav-font-sans);font-weight:300;font-size:20px;line-height:1.55;color:var(--fav-ink-soft);max-width:620px;margin:0 auto;text-wrap:pretty}.favorites-page .accent-underline{border-bottom:2px solid var(--fav-accent);padding-bottom:1px;cursor:default}.favorites-page .filters{max-width:var(--fav-container);margin:0 auto;padding:24px var(--fav-gap) 48px;display:flex;flex-direction:column;gap:20px;align-items:center}.favorites-page .category-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.favorites-page .pill{min-height:44px;padding:10px 20px;display:inline-flex;align-items:center;font-size:14px;font-weight:500;color:var(--fav-ink);background:var(--fav-surface);border:1px solid var(--fav-border);border-radius:999px;cursor:pointer;transition:all .2s var(--fav-ease-out);white-space:nowrap}.favorites-page .pill:hover{border-color:var(--fav-border-strong);background:var(--fav-surface-raised)}.favorites-page .pill.active{background:var(--fav-ink);color:var(--fav-bg);border-color:var(--fav-ink)}.favorites-page .pill .count{margin-left:6px;font-size:12px;font-weight:400;color:var(--fav-ink-muted)}.favorites-page .pill.active .count{color:color-mix(in srgb,var(--fav-bg) 55%,transparent)}.favorites-page .pill-shuffle{display:inline-flex;align-items:center;gap:6px;color:var(--fav-ink-soft)}.favorites-page .pill-shuffle svg{width:14px;height:14px;transition:transform .4s var(--fav-ease-spring)}.favorites-page .pill-shuffle:hover{color:var(--fav-ink)}.favorites-page .pill-shuffle:hover svg{transform:rotate(180deg)}.favorites-page .pill-shuffle:active svg{transform:rotate(1turn)}.favorites-page .pill-icon{padding:0;width:44px;min-width:44px;justify-content:center;color:var(--fav-ink-soft)}.favorites-page .pill-icon svg{width:16px;height:16px;transition:transform .25s var(--fav-ease-out)}.favorites-page .pill-icon:hover{color:var(--fav-ink)}.favorites-page .pill-icon.active{background:var(--fav-ink);color:var(--fav-bg);border-color:var(--fav-ink)}.favorites-page .controls-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:center;width:100%;max-width:780px}.favorites-page .controls-row.hidden{display:none}.favorites-page .search-wrap{flex:1;min-width:240px;position:relative}.favorites-page .search-wrap svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--fav-ink-muted);pointer-events:none}.favorites-page .search{width:100%;min-height:44px;padding:12px 16px 12px 42px;background:var(--fav-surface);border:1px solid var(--fav-border);border-radius:999px;font:inherit;font-weight:300;color:var(--fav-ink);outline:none;transition:border-color .2s,box-shadow .2s}.favorites-page .search::-moz-placeholder{color:var(--fav-ink-muted)}.favorites-page .search::placeholder{color:var(--fav-ink-muted)}.favorites-page .search:focus{border-color:var(--fav-ink);box-shadow:0 0 0 3px rgba(0,0,0,.04)}.favorites-page .select-wrap{position:relative}.favorites-page .select{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:44px;padding:12px 40px 12px 16px;background:var(--fav-surface);border:1px solid var(--fav-border);border-radius:999px;font:inherit;font-weight:300;color:var(--fav-ink);cursor:pointer;outline:none;min-width:160px}.favorites-page .select:focus{border-color:var(--fav-ink)}.favorites-page .select-wrap:after{content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;border-right:1.5px solid var(--fav-ink);border-bottom:1.5px solid var(--fav-ink);transform:translateY(-70%) rotate(45deg);pointer-events:none}.favorites-page .currency-seg{display:flex;gap:2px;padding:4px;background:var(--fav-surface-raised);border:1px solid var(--fav-border);border-radius:999px}.favorites-page .currency-seg button{min-height:36px;padding:8px 14px;font-size:12px;font-weight:500;border-radius:999px;color:var(--fav-ink-soft);transition:all .15s}.favorites-page .currency-seg button.active{background:var(--fav-surface);color:var(--fav-ink);box-shadow:0 2px 6px rgba(0,0,0,.06)}.favorites-page .v1-grid{max-width:var(--fav-container);margin:0 auto;padding:0 var(--fav-gap) 96px;display:grid;grid-template-columns:repeat(3,1fr);gap:48px 32px}@media (max-width:960px){.favorites-page .v1-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.favorites-page .v1-grid{grid-template-columns:1fr}}.favorites-page .v1-card{display:flex;flex-direction:column;gap:14px;cursor:pointer;position:relative;animation:favRiseIn .5s var(--fav-ease-out) both;animation-delay:var(--d,0s)}@keyframes favRiseIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.favorites-page .v1-card-image{position:relative;aspect-ratio:4/5;overflow:hidden;background:#ece7dd;transition:transform .5s var(--fav-ease-out)}.favorites-page .v1-card:hover .v1-card-image{transform:translateY(-4px)}.favorites-page .v1-card-image img.product-photo,.favorites-page .v1-card-image svg{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}.favorites-page .v1-card-image:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 80px rgba(0,0,0,.04);pointer-events:none}.favorites-page .v1-card-badge{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#1a1a1a}.favorites-page .v1-card-badge .dot{width:5px;height:5px;background:var(--fav-signal);border-radius:50%;animation:favPulse 1.5s ease-in-out infinite}.favorites-page .v1-card-tag{position:absolute;top:12px;right:12px;display:inline-block;padding:5px 10px;backdrop-filter:blur(8px);border-radius:999px;font-family:var(--fav-font-serif);font-style:italic;font-size:12px;font-weight:300;letter-spacing:.02em;color:#fafaf8}.favorites-page .v1-card-tag,.favorites-page .v1-card-tag.tag-dream{background:rgba(26,26,26,.88)}.favorites-page .v1-card-tag.tag-gift,.favorites-page .v1-card-tag.tag-wish{background:rgba(59,130,246,.88)}@keyframes favPulse{0%,to{transform:scale(1)}50%{transform:scale(1.7)}}.favorites-page .v1-card-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.favorites-page .v1-card-cat{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--fav-ink-soft)}.favorites-page .v1-card-year{font-family:var(--fav-font-serif);font-style:italic;font-size:14px;color:var(--fav-ink-muted)}.favorites-page .v1-card-title{font-family:var(--fav-font-serif);font-weight:300;font-size:22px;line-height:1.2;margin:0;color:var(--fav-ink);letter-spacing:-.01em}.favorites-page .v1-card-brand{font-size:13px;color:var(--fav-ink-soft);font-weight:400}.favorites-page .v1-card-price-row{display:flex;justify-content:space-between;align-items:center;margin-top:2px}.favorites-page .v1-card-price{font-size:13px;color:var(--fav-ink);font-weight:500;font-variant-numeric:tabular-nums}.favorites-page .v1-card-more{font-size:12px;color:var(--fav-ink-soft);font-style:italic;font-family:var(--fav-font-serif)}.favorites-page .v1-card:hover .v1-card-more{color:var(--fav-accent);border-bottom:1px solid var(--fav-accent)}.favorites-page .v1-expand{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:40px;background:var(--fav-surface);border-top:1px solid var(--fav-border);border-bottom:1px solid var(--fav-border);margin:8px 0;animation:favExpandDown .5s var(--fav-ease-out) both;align-items:center}@keyframes favExpandDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@media (max-width:760px){.favorites-page .v1-expand{grid-template-columns:1fr;padding:28px}}.favorites-page .v1-expand-img{position:relative;aspect-ratio:4/3;overflow:hidden;background:#ece7dd}.favorites-page .v1-expand-img img.product-photo,.favorites-page .v1-expand-img svg{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.favorites-page .v1-expand-body{display:flex;flex-direction:column;gap:18px}.favorites-page .v1-expand-cat{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--fav-ink-soft)}.favorites-page .v1-expand-title{font-family:var(--fav-font-serif);font-weight:300;font-size:clamp(32px,3.4vw,44px);line-height:1.1;letter-spacing:-.015em;margin:0}.favorites-page .v1-expand-brand{font-size:16px;color:var(--fav-ink-soft);margin:0}.favorites-page .v1-expand-desc{font-size:16px;line-height:1.6;color:var(--fav-ink);margin:0}.favorites-page .v1-expand-note{font-family:var(--fav-font-serif);font-style:italic;font-weight:300;font-size:20px;line-height:1.45;color:var(--fav-ink);padding:20px 24px;border-left:2px solid var(--fav-accent);background:rgba(59,130,246,.04);margin:8px 0;text-wrap:pretty}.favorites-page .v1-expand-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:16px 0;border-top:1px solid var(--fav-border);border-bottom:1px solid var(--fav-border)}.favorites-page .v1-expand-fact{display:flex;flex-direction:column;gap:4px}.favorites-page .v1-expand-fact-k{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--fav-ink-muted)}.favorites-page .v1-expand-fact-v{font-family:var(--fav-font-serif);font-size:18px;font-weight:300}.favorites-page .v1-expand-actions{display:flex;gap:16px;align-items:center;margin-top:4px}.favorites-page .btn-primary{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;background:var(--fav-ink);color:var(--fav-bg);border-radius:999px;font-size:14px;font-weight:500;transition:all .25s var(--fav-ease-out);cursor:pointer;border:none}.favorites-page .btn-primary:hover{background:#000;transform:translateY(-2px);opacity:1}.favorites-page .btn-primary:active{transform:translateY(0) scale(.98)}.favorites-page .btn-primary svg{width:14px;height:14px}.favorites-page .btn-text{font-family:var(--fav-font-serif);font-style:italic;font-size:15px;color:var(--fav-ink-soft);cursor:pointer;border-bottom:1px solid transparent;transition:all .2s}.favorites-page .btn-text:hover{color:var(--fav-ink);border-bottom-color:var(--fav-ink);opacity:1}.emoji-rain{position:fixed;inset:0;pointer-events:none;z-index:200;overflow:hidden}.emoji-rain span{position:absolute;font-size:28px;animation:favEmojiFall 2.5s cubic-bezier(.25,.46,.45,.94) forwards;opacity:0}@keyframes favEmojiFall{0%{opacity:0;transform:translateY(-40px) rotate(0)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translateY(calc(100vh + 40px)) rotate(var(--r,180deg))}}.favorites-page .signature-section{padding:96px var(--fav-gap) 120px;display:flex;flex-direction:column;align-items:center;text-align:center}.favorites-page .kindest{font-family:var(--fav-font-serif);font-style:italic;font-weight:300;font-size:32px;line-height:1.1;margin:0;color:var(--fav-ink)}.favorites-page .signature-wrapper{max-width:280px;width:100%;margin-top:20px;opacity:.85;color:var(--fav-ink)}.favorites-page .signature-wrapper svg{width:100%;height:auto;display:block}.favorites-page .empty{text-align:center;padding:80px var(--fav-gap);max-width:520px;margin:0 auto}.favorites-page .empty h3{font-family:var(--fav-font-serif);font-weight:300;font-size:32px;margin:0 0 8px}.favorites-page .empty p{color:var(--fav-ink-soft);margin:0}