/* Selected recent-product A layout; native data, links and actions stay live. */
.mall-native.mall-legacy.mall-legacy-today { width:100%; max-width:1240px; margin:0 auto; padding:0; }
.mall-native.mall-legacy #sod_ws.mall-recent { --recent-ink:#202125; --recent-wine:#782b3e; width:100%; min-width:0; margin:0; padding:64px 28px 56px; min-height:560px; color:var(--recent-ink); background:#fff; }
.mall-recent *, .mall-recent *::before, .mall-recent *::after { box-sizing:border-box; }
.mall-recent .mall-recent__heading { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin:0 0 43px; }
.mall-recent .mall-recent__eyebrow { margin:0 0 9px; color:#9a8d90; font-size:9px; font-weight:700; line-height:1.6; letter-spacing:2px; }
.mall-recent .mall-recent__heading h1 { margin:0; font-size:29px; line-height:1.4; font-weight:700; letter-spacing:-1.2px; }
.mall-recent .mall-recent__intro { margin:10px 0 0; font-size:12px; color:#8b8887; line-height:1.6; }
.mall-recent .mall-recent__breadcrumb { display:flex; align-items:center; gap:11px; margin:0 0 4px; font-size:10px; color:#959294; line-height:1.6; white-space:nowrap; }
.mall-recent .mall-recent__breadcrumb span { color:#c3bfc0; }
.mall-recent .mall-recent__toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 22px; padding:0 0 16px; border-bottom:1px solid var(--recent-ink); }
.mall-recent .mall-recent__toolbar p { margin:0; font-size:12px; line-height:1.6; }
.mall-recent .mall-recent__toolbar strong { margin-left:5px; color:var(--recent-wine); font-size:13px; }
.mall-recent .mall-recent__toolbar form { margin:0; padding:0; }
.mall-recent .mall-recent__clear { display:block; min-height:36px; margin:0; padding:6px 0 6px 12px; border:0; border-radius:0; background:none; color:#50464a; font:inherit; font-size:11px; cursor:pointer; }
.mall-recent .mall-recent__clear:disabled { color:#b6b4b3; cursor:default; }
.mall-recent .mall-recent__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:40px 25px; margin:0; padding:0; }
.mall-recent .mall-recent__card { position:relative; min-width:0; margin:0; padding:0; }
.mall-recent .mall-recent__photo { display:block; position:relative; width:100%; aspect-ratio:1/1; overflow:hidden; background:#eeeae6; }
.mall-native.mall-legacy #sod_ws.mall-recent .mall-recent__photo img { position:absolute; inset:0; display:block; width:100%; height:100%; max-width:none; max-height:none; object-fit:cover; object-position:center; transition:transform .3s ease; }
.mall-recent .mall-recent__photo:hover img { transform:scale(1.025); }
.mall-recent .mall-recent__photo .mall-prd__empty { display:block; width:100%; height:100%; }
.mall-recent .mall-recent__stock, .mall-recent .mall-recent__discount { position:absolute; left:11px; bottom:11px; padding:4px 8px; font-size:10px; font-weight:700; line-height:1.6; pointer-events:none; }
.mall-recent .mall-recent__stock { color:#575353; background:#ffffffea; }
.mall-recent .mall-recent__discount { color:#fff; background:var(--recent-wine); }
.mall-recent .mall-recent__info { padding:17px 0 0; }
.mall-recent .mall-recent__brand { margin:0 0 6px; font-size:10px; line-height:1.6; color:#897b7f; }
.mall-recent .mall-recent__card h2 { margin:0; font-size:14px; line-height:1.65; letter-spacing:-.45px; font-weight:400; }
.mall-recent .mall-recent__name { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; width:100%; min-height:46px; color:var(--recent-ink); font:inherit; line-height:1.65; overflow-wrap:anywhere; text-decoration:none; }
.mall-recent .mall-recent__summary { margin:7px 0 0; min-height:1.6em; color:#8d8585; font-size:11px; line-height:1.6; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.mall-recent .mall-recent__price { display:flex; gap:7px; align-items:baseline; flex-wrap:wrap; min-height:23px; margin:12px 0 0; line-height:1.35; }
.mall-recent .mall-recent__price strong { color:var(--recent-wine); font-size:17px; letter-spacing:-.45px; font-weight:700; }
.mall-recent .mall-recent__price strong :is(.mpr,.memopen) { color:inherit; font-size:inherit; line-height:inherit; }
.mall-recent .mall-recent__price strong .mpr > span { margin-left:2px; font-size:12px; font-weight:400; }
.mall-recent .mall-recent__price del { color:#a8a1a1; font-size:11px; order:2; }
.mall-recent .mall-recent__remove-form { position:absolute; top:1px; right:1px; z-index:1; margin:0; padding:0; }
.mall-recent .mall-recent__remove { display:grid; position:relative; place-items:center; width:44px; height:44px; margin:0; padding:0; border:0; border-radius:50%; color:#282627; background:none; cursor:pointer; touch-action:manipulation; }
.mall-recent .mall-recent__remove::before { content:""; position:absolute; inset:6px; border-radius:50%; background:#fffc; }
.mall-recent .mall-recent__remove .mall-icon { position:relative; display:block; width:15px; height:15px; }
.mall-recent .mall-recent__remove:hover { color:var(--recent-wine); }
.mall-recent .mall-recent__remove:hover::before { background:#fff; }
.mall-recent :is(a,button):focus-visible { outline:2px solid var(--recent-wine); outline-offset:4px; }
.mall-recent .mall-recent__photo:focus-visible { outline-offset:-4px; }
.mall-recent .mall-recent__empty { padding:64px 12px 54px; text-align:center; }
.mall-recent .mall-recent__empty-icon { display:grid; place-items:center; margin:0 auto 21px; color:#b8aeb0; }
.mall-recent .mall-recent__empty-icon .mall-icon { display:block; width:40px; height:40px; }
.mall-recent .mall-recent__empty h2 { margin:0 0 12px; font-size:17px; line-height:1.6; font-weight:400; letter-spacing:-.5px; }
.mall-recent .mall-recent__empty p { margin:0; color:#999092; font-size:12px; line-height:1.9; }
.mall-recent .mall-recent__browse { display:inline-flex; align-items:center; justify-content:center; gap:26px; min-width:174px; margin-top:27px; padding:13px 20px; border:1px solid var(--recent-wine); background:var(--recent-wine); color:#fff; font-size:11px; line-height:1.6; text-decoration:none; }
.mall-recent .mall-recent__browse .mall-icon { display:block; width:16px; height:16px; }
.mall-recent .mall-recent__paging { margin-top:36px; }
.mall-recent .mall-recent__paging:empty { display:none; }
@media(max-width:1040px) { .mall-recent .mall-recent__grid { gap:32px 20px; } }
@media(max-width:700px) {
  .mall-native.mall-legacy #sod_ws.mall-recent { padding:36px 20px 27px; min-height:530px; }
  .mall-recent .mall-recent__heading { margin-bottom:28px; }
  .mall-recent .mall-recent__eyebrow { margin-bottom:8px; font-size:8px; letter-spacing:1.8px; }
  .mall-recent .mall-recent__heading h1 { font-size:24px; letter-spacing:-1px; }
  .mall-recent .mall-recent__intro { margin-top:8px; font-size:11px; }
  .mall-recent .mall-recent__breadcrumb { display:none; }
  .mall-recent .mall-recent__toolbar { margin-bottom:19px; padding-bottom:13px; }
  .mall-recent .mall-recent__toolbar p { font-size:11px; }
  .mall-recent .mall-recent__toolbar strong { font-size:12px; }
  .mall-recent .mall-recent__clear { font-size:10px; }
  .mall-recent .mall-recent__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:29px 13px; }
  .mall-recent .mall-recent__info { padding-top:12px; }
  .mall-recent .mall-recent__brand { margin-bottom:5px; font-size:8px; line-height:1.5; }
  .mall-recent .mall-recent__card h2 { font-size:12px; letter-spacing:-.35px; }
  .mall-recent .mall-recent__name { min-height:39px; }
  .mall-recent .mall-recent__summary { margin-top:5px; font-size:9px; letter-spacing:-.15px; }
  .mall-recent .mall-recent__price { gap:5px; margin-top:10px; }
  .mall-recent .mall-recent__price strong { font-size:15px; }
  .mall-recent .mall-recent__price strong .mpr > span { font-size:10px; }
  .mall-recent .mall-recent__price del { font-size:9px; }
  .mall-recent .mall-recent__remove-form { top:-3px; right:-3px; }
  .mall-recent .mall-recent__remove .mall-icon { width:14px; height:14px; }
  .mall-recent .mall-recent__remove::before { inset:8px; }
  .mall-recent .mall-recent__stock, .mall-recent .mall-recent__discount { left:7px; bottom:7px; padding:3px 6px; font-size:8px; }
  .mall-recent .mall-recent__empty { padding:62px 0 53px; }
  .mall-recent .mall-recent__empty h2 { font-size:16px; }
  .mall-recent .mall-recent__empty p { font-size:11px; }
}
@media(max-width:350px) {
  .mall-native.mall-legacy #sod_ws.mall-recent { padding-left:16px; padding-right:16px; }
  .mall-recent .mall-recent__grid { gap:26px 11px; }
  .mall-recent .mall-recent__card h2 { font-size:11px; }
  .mall-recent .mall-recent__price strong { font-size:14px; }
}
@media(prefers-reduced-motion:reduce) {
  .mall-native.mall-legacy #sod_ws.mall-recent .mall-recent__photo img { transition:none; }
  .mall-recent .mall-recent__photo:hover img { transform:none; }
}
