.favorites-page{min-height:100dvh;display:flex;flex-direction:column}
.favorites-page .site-header{flex:none}
.favorites-page .site-header a{text-decoration:none}
.favorites-page .header-primary #favoritesOpen{background:#fff1f3;border-color:#f0c4cb;color:#ad1428}
.favorites-page .header-primary #favoritesOpen svg{fill:#c51b2d}
.favorites-page .header-discovery .header-search{margin:0}
.favorites-page .header-discovery .category-menu-button{line-height:1}
.favorites-main{flex:1;padding-top:22px;padding-bottom:58px}
.favorites-breadcrumb{display:flex;align-items:center;gap:9px;margin-bottom:14px;color:#8994a2;font-size:11px;font-weight:650}
.favorites-breadcrumb a{color:#657489;text-decoration:none}
.favorites-breadcrumb a:hover{color:#c51b2d}
.favorites-breadcrumb [aria-current]{color:#354355}
.favorites-shell{overflow:hidden;border:1px solid #e0e5eb;border-radius:19px;background:#fff;box-shadow:0 12px 40px rgba(31,44,60,.045)}
.favorites-hero{display:flex;align-items:center;gap:18px;min-height:122px;padding:25px 30px;background:linear-gradient(115deg,#af1429 0%,#c51b2d 55%,#d12640 100%);color:#fff}
.favorites-hero-icon{display:grid;place-items:center;flex:none;width:58px;height:58px;border:1px solid rgba(255,255,255,.29);border-radius:17px;background:rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.15)}
.favorites-hero-icon svg{width:31px;height:31px;fill:rgba(255,255,255,.18)}
.favorites-hero-copy{min-width:0}
.favorites-eyebrow{display:block;margin-bottom:5px;color:#ffe3e9;font-size:10px;font-weight:800;letter-spacing:.15em}
.favorites-hero h1{margin:0;font-size:clamp(25px,3vw,38px);font-weight:800;letter-spacing:-.04em;line-height:1.12}
.favorites-cart-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:none;min-height:42px;margin-left:auto;padding:0 16px;border:1px solid rgba(255,255,255,.35);border-radius:10px;background:#fff;color:#b51a2e;font-size:12px;font-weight:800;text-decoration:none;transition:background .2s,transform .2s,box-shadow .2s}
.favorites-cart-link:hover{background:#fff4f6;transform:translateY(-2px);box-shadow:0 7px 16px rgba(80,8,21,.13)}
.favorites-cart-link svg{width:17px;height:17px}
.favorites-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px;margin:0 28px;padding:14px 0;border-bottom:1px solid #ebeff2}
.favorites-toolbar p{margin:0;color:#516075;font-size:13px;font-weight:700}
.favorites-toolbar a{color:#b2182d;font-size:12px;font-weight:800;text-decoration:none}
.favorites-toolbar a:hover{text-decoration:underline}
.favorites-notice{margin:14px 28px 0;padding:10px 12px;border:1px solid #efd1d7;border-radius:9px;background:#fff7f8;color:#a51b30;font-size:12px;line-height:1.45}
.favorites-cards{display:grid;gap:11px;padding:20px 28px 28px}
.favorite-card{display:grid;grid-template-columns:66px minmax(0,1fr) minmax(120px,auto) auto;align-items:center;gap:18px;min-height:112px;padding:17px 18px;border:1px solid #e1e6eb;border-radius:14px;background:#fff;box-shadow:0 2px 8px rgba(31,44,60,.025);transition:border-color .2s,box-shadow .2s,transform .2s}
.favorite-card:hover{border-color:#e8b2bb;box-shadow:0 8px 22px rgba(72,40,48,.07);transform:translateY(-1px)}
.favorite-card-icon{display:grid;place-items:center;width:66px;height:66px;overflow:hidden;border:1px solid #e6eaee;border-radius:14px;background:#f7f9fb;color:#be1c32;font-size:24px;font-weight:800;line-height:1}
.favorite-card-icon img{width:100%;height:100%;padding:8px;object-fit:contain}
.favorite-card-body{min-width:0}
.favorite-card-title{display:block;color:#1e2e42;font-size:14px;font-weight:700;line-height:1.45;text-decoration:none;overflow-wrap:anywhere}
.favorite-card-title:hover{color:#b3182e}
.favorite-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px}
.favorite-card-meta span{padding:5px 8px;border:1px solid #e8edf1;border-radius:7px;background:#f8fafb;color:#6c7989;font-size:10px;font-weight:700}
.favorite-card-meta .favorite-stock.is-out{border-color:#f0dade;background:#fff7f8;color:#aa2a3c}
.favorite-card-price{display:grid;gap:4px;justify-items:start;color:#1b2a3c;white-space:nowrap}
.favorite-card-price small{color:#8c97a5;font-size:10px;font-weight:650}
.favorite-card-price strong{font-size:16px;font-weight:800;letter-spacing:-.02em}
.favorite-card-actions{display:flex;align-items:center;gap:8px}
.favorite-open{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 15px;border-radius:9px;background:#c51b2d;color:#fff;font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap;transition:background .2s,transform .2s}
.favorite-open:hover{background:#ad1428;transform:translateY(-1px)}
.favorite-remove{display:grid;place-items:center;width:42px;height:42px;flex:none;border:1px solid #e6eaee;border-radius:9px;background:#fff;color:#778393;transition:background .2s,border-color .2s,color .2s}
.favorite-remove:hover{border-color:#e8b2bb;background:#fff2f4;color:#b3182e}
.favorite-remove svg{width:18px;height:18px}
.favorite-empty{display:grid;justify-items:center;max-width:560px;margin:15px auto;padding:50px 18px;text-align:center}
.favorite-empty-icon{display:grid;place-items:center;width:74px;height:74px;margin-bottom:18px;border:1px solid #f3d4d9;border-radius:22px;background:#fff3f5;color:#c51b2d}
.favorite-empty-icon svg{width:36px;height:36px}
.favorite-empty h2{margin:0 0 9px;color:#213044;font-size:21px;font-weight:800;letter-spacing:-.025em}
.favorite-empty p{margin:0;color:#68788b;font-size:13px;line-height:1.65}
.favorite-empty a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:22px;padding:0 21px;border-radius:9px;background:#c51b2d;color:#fff;font-size:12px;font-weight:800;text-decoration:none;transition:background .2s}
.favorite-empty a:hover{background:#ad1428}
.favorite-error{color:#b3182e}
.favorite-skeleton{height:104px;border:1px solid #e9edf0;border-radius:14px;background:linear-gradient(100deg,#f7f9fb 10%,#fff 45%,#f7f9fb 80%);background-size:240% 100%;animation:favorite-shimmer 1.3s ease-in-out infinite}
@keyframes favorite-shimmer{to{background-position-x:-240%}}
.favorites-page .site-footer{margin-top:auto}
.favorites-page .footer-inner{min-height:78px}
@media(max-width:930px){
  .favorite-card{grid-template-columns:60px minmax(0,1fr) auto;gap:14px}
  .favorite-card-icon{width:60px;height:60px}
  .favorite-card-price{grid-column:2;grid-row:2}
  .favorite-card-actions{grid-column:3;grid-row:1/3}
}
@media(max-width:650px){
  .favorites-main{padding-top:17px;padding-bottom:36px}
  .favorites-breadcrumb{margin-bottom:12px}
  .favorites-shell{border-radius:15px}
  .favorites-hero{min-height:0;flex-wrap:wrap;gap:12px;padding:20px 18px}
  .favorites-hero-icon{width:46px;height:46px;border-radius:13px}
  .favorites-hero-icon svg{width:25px;height:25px}
  .favorites-hero h1{font-size:25px}
  .favorites-eyebrow{font-size:9px}
  .favorites-cart-link{min-height:40px;padding:0 12px;font-size:11px}
  .favorites-toolbar{min-height:62px;margin:0 16px}
  .favorites-toolbar p,.favorites-toolbar a{font-size:11px}
  .favorites-cards{gap:10px;padding:15px 12px 19px}
  .favorites-notice{margin:12px 16px 0}
  .favorite-card{grid-template-columns:50px minmax(0,1fr);gap:12px;min-height:0;padding:14px;border-radius:12px}
  .favorite-card-icon{width:50px;height:50px;border-radius:10px;font-size:19px}
  .favorite-card-icon img{padding:5px}
  .favorite-card-title{font-size:13px;line-height:1.43}
  .favorite-card-meta{margin-top:6px}
  .favorite-card-price{grid-column:1/3;grid-row:auto;display:flex;align-items:baseline;gap:8px;padding-top:11px;border-top:1px solid #eef0f2}
  .favorite-card-price strong{font-size:15px}
  .favorite-card-actions{grid-column:1/3;grid-row:auto}
  .favorite-open{flex:1;min-height:43px}
  .favorite-remove{width:43px;height:43px}
  .favorite-empty{padding:37px 14px}
  .favorites-page .footer-inner{padding-top:20px;padding-bottom:20px}
}
@media(max-width:370px){
  .favorites-hero{gap:9px}
  .favorites-hero-icon{width:40px;height:40px}
  .favorites-hero h1{font-size:23px}
  .favorites-cart-link{width:100%;margin:5px 0 0}
  .favorites-toolbar{align-items:flex-start;flex-direction:column;gap:6px}
}
@media(prefers-reduced-motion:reduce){
  .favorite-card,.favorite-open,.favorite-remove,.favorites-cart-link,.favorite-empty a{transition:none}
  .favorite-skeleton{animation:none}
}
