body.lr-pdp-page .lr-main { padding: 22px 32px 72px; background: #fff; }
body.lr-pdp-lock { overflow: hidden; }
.lr-pdp__miss { margin: 48px auto; text-align: center; }
.lr-pdp {
    width: min(1480px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.22fr) minmax(340px, 0.78fr);
    gap: 28px 64px;
    align-items: start;
    color: #1c1917;
}
.lr-pdp__gallery { display: grid; gap: 10px; }
.lr-pdp__gallery.is-grid { grid-template-columns: 1fr 1fr; }
.lr-pdp__gallery.is-single { grid-template-columns: 1fr; gap: 12px; }
.lr-pdp__gallery.is-grid .lr-pdp__shot:only-child { grid-column: 1 / -1; }
.lr-pdp__shot { margin: 0; background: #f3f3f3; border-radius: 6px; }
.lr-pdp__shot button {
    display: grid;
    place-items: center;
    width: 100%;
    aspect-ratio: 1;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: zoom-in;
}
.lr-pdp__shot img { width: 100%; height: 100%; object-fit: contain; }
.lr-pdp__shot.is-empty { aspect-ratio: 1; }
.lr-pdp__buy { position: sticky; top: 108px; }
.lr-pdp__tools { display: flex; gap: 10px; margin: 12px 0 8px; }
.lr-pdp__tools button { flex: 1; height: 44px; border: 1px solid #e7e5e4; border-radius: 999px; background: #fff; font: inherit; cursor: pointer; }
.lr-pdp__tools button.is-on { background: #1c1917; color: #fff; border-color: #1c1917; }
.lr-pdp__limit {
    display: inline-flex;
    margin: 0 0 10px;
    padding: 3px 8px;
    border-radius: 999px;
    background: #6d28d9;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}
.lr-pdp__buy h1 {
    margin: 0 0 8px;
    font-size: clamp(28px, 2.4vw, 36px);
    font-weight: 500;
    letter-spacing: -0.03em;
    line-height: 1.15;
}
.lr-pdp__price { display: flex; align-items: baseline; gap: 10px; margin: 0 0 14px; }
.lr-pdp__price b { font-size: 16px; font-weight: 650; }
.lr-pdp__price s { color: #a3a3a3; font-size: 15px; }
.lr-pdp__price a { color: inherit; }
.lr-pdp__lead { margin: 0 0 18px; max-width: 54ch; color: #3a3a3a; font-size: 14.5px; line-height: 1.55; }
.lr-pdp__group { margin: 0 0 16px; }
.lr-pdp__lab { margin: 0 0 10px; font-size: 14px; font-weight: 650; }
.lr-pdp__lab b { font-weight: 650; }
.lr-pdp__sizehead { display: flex; align-items: center; justify-content: space-between; margin: 0 0 10px; font-weight: 650; font-size: 14px; }
.lr-pdp__sizehead button { border: 0; background: transparent; color: #8a8a8a; font: inherit; font-weight: 400; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.lr-pdp__opts { display: flex; flex-wrap: wrap; gap: 8px; }
.lr-pdp__seg { display: inline-flex; gap: 8px; flex-wrap: wrap; }
.lr-pdp__seg a,
.lr-pdp__group.is-gender .lr-pdp__opt {
    min-width: 112px;
    height: 44px;
    padding: 0 18px;
    border: 0;
    border-radius: 999px;
    background: #f2f2f2;
    color: #1c1917;
    font: inherit;
    font-weight: 500;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
.lr-pdp__seg a.is-on,
.lr-pdp__group.is-gender .lr-pdp__opt.is-on { background: #1c1917; color: #fff; }
.lr-pdp__swatch {
    width: 64px;
    height: 64px;
    padding: 2px;
    border: 0;
    border-radius: 10px;
    background: #f4f4f4;
    cursor: pointer;
}
.lr-pdp__swatch.is-on { box-shadow: inset 0 -2px 0 #1c1917; border-radius: 10px 10px 2px 2px; }
.lr-pdp__swatch img, .lr-pdp__swatch i { display: block; width: 100%; height: 100%; object-fit: contain; border-radius: 6px; }
.lr-pdp__group.is-size .lr-pdp__opt,
.lr-pdp__group.is-opt .lr-pdp__opt {
    width: 44px;
    height: 44px;
    padding: 0;
    border-radius: 50%;
    border: 1px solid #e6e6e6;
    background: #fff;
    color: #1c1917;
    font: inherit;
    font-size: 14px;
    cursor: pointer;
}
.lr-pdp__group.is-opt .lr-pdp__opt { width: auto; min-width: 44px; padding: 0 12px; }
.lr-pdp__group.is-size .lr-pdp__opt.is-on,
.lr-pdp__group.is-opt .lr-pdp__opt.is-on { background: #1c1917; color: #fff; border-color: #1c1917; }
.lr-pdp__opt.is-off { color: #b5b5b5; text-decoration: line-through; }
.lr-pdp__hurry { display: flex; align-items: center; gap: 8px; margin: 4px 0 14px; color: #c2410c; font-size: 14px; }
.lr-pdp__hurry i { width: 8px; height: 8px; border-radius: 50%; background: #e08a2c; display: block; }
.lr-pdp__hurry.is-out { color: var(--lr-danger, #b42318); }
.lr-pdp__hurry.is-out i { background: var(--lr-danger, #b42318); }
.lr-pdp__row { display: flex; gap: 10px; align-items: center; }
.lr-pdp__qty { display: flex; align-items: center; height: 48px; padding: 0 4px; border-radius: 999px; background: #f3f3f3; }
.lr-pdp__qty button { width: 36px; height: 48px; border: 0; background: transparent; font-size: 18px; cursor: pointer; color: #1c1917; }
.lr-pdp__qty input { width: 28px; border: 0; background: transparent; text-align: center; font: inherit; color: inherit; }
.lr-pdp__add { flex: 1; height: 48px; border-radius: 999px; font-size: 15px; }
.lr-pdp__add:disabled, .lr-pdp__now:disabled { opacity: 0.45; cursor: not-allowed; }
.lr-pdp__now {
    width: 100%;
    height: 52px;
    margin-top: 12px;
    border: 0;
    border-radius: 999px;
    background: var(--lr-btn-fill, #1c1917);
    color: var(--lr-btn-text, #fff);
    font: inherit;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
    display: grid;
    place-items: center;
}
.lr-pdp__now:hover { filter: brightness(1.08); }
.lr-pdp__perks { list-style: none; margin: 22px 0 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.lr-pdp__perks li { display: flex; align-items: center; gap: 12px; font-size: 14.5px; color: #3a3a3a; }
.lr-pdp__perks svg, .lr-pdp__pick svg { width: 20px; height: 20px; flex: none; }
.lr-pdp__perks path, .lr-pdp__perks circle,
.lr-pdp__pick path, .lr-pdp__pick circle { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.lr-pdp__pick { margin-top: 16px; padding: 14px 16px; border: 1px solid #ececec; border-radius: 14px; }
.lr-pdp__pick p { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 14.5px; }
.lr-pdp__pick svg { color: var(--lr-success, #067647); }
.lr-pdp__pick small { display: block; margin: 6px 0 0 28px; color: #6b6b6b; font-size: 13px; }
.lr-pdp__acc { border-top: 1px solid #ececec; }
.lr-pdp__acc:last-child { border-bottom: 1px solid #ececec; }
.lr-pdp__buy .lr-pdp__acc { margin-top: 8px; }
.lr-pdp__buy .lr-pdp__acc:first-of-type { margin-top: 22px; }
.lr-pdp__acc summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 0;
    font-weight: 650;
    cursor: pointer;
    list-style: none;
}
.lr-pdp__acc summary::-webkit-details-marker { display: none; }
.lr-pdp__acc summary::after { content: ""; width: 8px; height: 8px; border-right: 1.5px solid #1c1917; border-bottom: 1.5px solid #1c1917; transform: rotate(45deg); margin-top: -4px; }
.lr-pdp__acc[open] summary::after { transform: rotate(225deg); margin-top: 4px; }
.lr-pdp__acc .lr-prose { margin: 0 0 16px; color: #3a3a3a; font-size: 14.5px; max-width: none; }
.lr-pdp__acc .lr-prose p { margin: 0 0 8px; }
.lr-rev, .lr-also { width: min(1480px, 100%); margin: 64px auto 0; }
.lr-rev__head h2, .lr-also__head h2 { margin: 0; font-size: clamp(26px, 2.4vw, 34px); font-weight: 500; letter-spacing: -0.03em; }
.lr-rev__top { display: grid; grid-template-columns: minmax(280px, 0.9fr) minmax(280px, 1fr); gap: 16px; margin-top: 22px; align-items: start; }
.lr-rev__score, .lr-rev__write { background: #f6f6f6; border-radius: 22px; padding: 22px 24px; }
.lr-rev__score { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 4px 18px; align-items: center; }
.lr-rev__score > b { grid-row: 1; display: flex; align-items: baseline; gap: 4px; font-size: 44px; font-weight: 650; letter-spacing: -0.04em; line-height: 1; }
.lr-rev__score > b small { display: inline; margin: 0; font-size: 16px; font-weight: 500; color: #8a8a8a; letter-spacing: 0; }
.lr-rev__score > div { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.lr-rev__score small { color: #6b6b6b; font-size: 13px; }
.lr-rev__stars { color: #1c1917; letter-spacing: 2px; }
.lr-rev__bars { grid-column: 1 / -1; list-style: none; margin: 16px 0 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.lr-rev__bars li { display: grid; grid-template-columns: 12px minmax(0, 1fr) 28px; gap: 10px; align-items: center; font-size: 13px; color: #6b6b6b; }
.lr-rev__bars i { display: block; height: 6px; border-radius: 999px; background: #e6e6e6; overflow: hidden; }
.lr-rev__bars b { display: block; height: 100%; background: #1c1917; }
.lr-rev__bars em { font-style: normal; text-align: right; }
.lr-rev__write { background: #f6f6f6; }
.lr-rev__write h3 { margin: 0 0 14px; font-size: 16px; }
.lr-rev__write form, .lr-rev__write label { display: flex; flex-direction: column; gap: 8px; }
.lr-rev__write form { gap: 12px; }
.lr-rev__write label { font-size: 13px; font-weight: 650; }
.lr-rev__write input, .lr-rev__write textarea {
    border: 0; border-radius: 12px; background: #fff; font: inherit; font-weight: 400; padding: 12px 14px; color: #1c1917;
}
.lr-rev__write textarea { resize: vertical; min-height: 96px; }
.lr-rev__pick { display: flex; gap: 2px; }
.lr-rev__pick button { border: 0; background: transparent; color: #d4d4d4; font-size: 22px; cursor: pointer; line-height: 1; padding: 0 2px; }
.lr-rev__pick button.is-on { color: #1c1917; }
.lr-rev__write .lr-btn { height: 46px; }
.lr-rev__write a { color: inherit; font-weight: 650; }
.lr-rev__write [data-lr-review-msg] { margin: 0; color: var(--lr-success, #067647); font-weight: 500; }
.lr-rev__empty { grid-column: 1 / -1; margin: 16px 0 0; color: #6b6b6b; }
.lr-rev__list { margin-top: 16px; display: flex; flex-direction: column; gap: 12px; }
.lr-rev__list article { display: grid; grid-template-columns: 44px 1fr; gap: 14px; padding: 16px 18px; background: #f6f6f6; border-radius: 18px; }
.lr-rev__av { width: 44px; height: 44px; border-radius: 50%; background: #fff; display: grid; place-items: center; font-weight: 650; }
.lr-rev__list header { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.lr-rev__list header b { font-size: 15px; }
.lr-rev__list time { color: #9a9a9a; font-size: 12px; }
.lr-rev__title { margin: 8px 0 0; font-weight: 650; }
.lr-rev__list p { margin: 6px 0 0; color: #3a3a3a; line-height: 1.55; }
.lr-rev__reply { padding: 10px 12px; border-radius: 12px; background: #fff; }
.lr-rev__imgs { display: flex; gap: 8px; margin-top: 10px; }
.lr-rev__imgs img { width: 72px; height: 72px; object-fit: cover; border-radius: 10px; background: #f3f3f3; }
.lr-also__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.lr-also__nav { display: flex; gap: 8px; }
.lr-also__nav button { width: 40px; height: 40px; border-radius: 50%; border: 1px solid #e6e6e6; background: #fff; color: #1c1917; font-size: 22px; line-height: 1; cursor: pointer; }
.lr-also__track { display: flex; gap: 16px; width: 100%; max-width: 100%; min-width: 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.lr-also__track::-webkit-scrollbar { display: none; }
.lr-also__card { flex: 0 0 calc((100% - 48px) / 4); min-width: 0; scroll-snap-align: start; }
.lr-also__media { position: relative; display: grid; place-items: center; aspect-ratio: 1; border-radius: 18px; background: #f3f3f3; overflow: hidden; }
.lr-also__media img { width: 100%; height: 100%; object-fit: contain; }
.lr-also__media span { position: absolute; top: 12px; left: 12px; background: #e11d48; color: #fff; border-radius: 999px; font-size: 12px; padding: 3px 8px; }
.lr-also__name { display: block; margin-top: 12px; color: #1c1917; text-decoration: none; font-size: 15px; }
.lr-also__price { margin: 4px 0 0; font-size: 15px; }
.lr-also__price b { font-weight: 650; }
.lr-also__price s { margin-left: 8px; color: #b0b0b0; }
.lr-also__card:has(s) .lr-also__price b { color: #e11d48; }
.lr-also__line { position: relative; height: 2px; margin-top: 22px; background: #ececec; overflow: hidden; }
.lr-also__line i { position: absolute; left: 0; top: 0; height: 100%; width: 25%; background: #1c1917; transform: translateX(0); }
.lr-pop {
    position: fixed; right: 22px; bottom: 22px; z-index: 45;
    display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 12px; align-items: center;
    width: min(440px, calc(100vw - 32px)); padding: 10px 12px 10px 10px;
    background: #fff; color: #1c1917; border-radius: 18px;
    box-shadow: 0 18px 50px rgba(20, 20, 20, .16), 0 2px 8px rgba(20, 20, 20, .06);
    opacity: 0; transform: translate(12px, 22px) scale(.98); pointer-events: none;
    transition: opacity .35s ease, transform .45s cubic-bezier(.22, .61, .36, 1), bottom .75s cubic-bezier(.22, 1, .36, 1);
}
.lr-pop.is-on { opacity: 1; transform: none; pointer-events: auto; }
body:has(.lr-top) .lr-pop { bottom: 92px; }
body:has(.lr-top):has(a.wa-float) .lr-pop { bottom: 158px; right: 20px; }
.lr-pop img { width: 64px; height: 64px; object-fit: contain; background: #f3f3f3; border-radius: 12px; }
.lr-pop__meta { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.lr-pop__meta > b { font-size: 14px; font-weight: 650; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lr-pop__cur {
    justify-self: start; max-width: 100%; border: 0; background: transparent; padding: 0;
    color: #6b6b6b; font: inherit; font-size: 13px; cursor: pointer; text-align: left;
}
.lr-pop__cur::after { content: ""; display: inline-block; width: 6px; height: 6px; margin-left: 6px; border-right: 1.4px solid currentColor; border-bottom: 1.4px solid currentColor; transform: rotate(45deg) translateY(-2px); }
.lr-pop__meta span { font-size: 14px; font-weight: 650; }
.lr-pop__add { height: 44px; padding: 0 16px; border: 0; border-radius: 999px; background: var(--lr-btn-fill, #1c1917); color: var(--lr-btn-text, #fff); font: inherit; font-size: 14px; cursor: pointer; white-space: nowrap; }
.lr-pop__add:disabled { opacity: .45; cursor: not-allowed; }
.lr-pop__menu { position: absolute; left: 12px; bottom: calc(100% + 10px); width: min(280px, calc(100vw - 48px)); padding: 12px; background: #fff; border-radius: 16px; box-shadow: 0 16px 40px rgba(0,0,0,.14); }
.lr-pop__menu[hidden] { display: none; }
.lr-pop__menu p { margin: 8px 0 6px; font-size: 12px; font-weight: 650; color: #6b6b6b; }
.lr-pop__menu p:first-child { margin-top: 0; }
.lr-pop__menu div { display: flex; flex-wrap: wrap; gap: 6px; }
.lr-pop__menu button { min-width: 36px; height: 32px; padding: 0 10px; border-radius: 999px; border: 1px solid #ececec; background: #fff; font: inherit; font-size: 13px; cursor: pointer; }
.lr-pop__menu button.is-on { background: #1c1917; color: #fff; border-color: #1c1917; }
.lr-pop__menu button.is-off { color: #b5b5b5; text-decoration: line-through; }
.lr-pdp__modal { position: fixed; inset: 0; z-index: 80; background: rgba(20,20,20,.45); display: grid; place-items: center; padding: 24px; }
.lr-pdp__modal[hidden] { display: none; }
.lr-pdp__sheet { width: min(420px, 100%); max-height: min(80vh, 640px); overflow: auto; background: #fff; border-radius: 18px; padding: 22px 22px 16px; position: relative; }
.lr-pdp__sheet h2 { margin: 0 36px 8px 0; font-size: 22px; }
.lr-pdp__sheet p { margin: 0 0 14px; color: #6b6b6b; font-size: 14px; }
.lr-pdp__sheet table { width: 100%; border-collapse: collapse; }
.lr-pdp__sheet th, .lr-pdp__sheet td { padding: 8px 4px; border-bottom: 1px solid #f0f0f0; text-align: left; }
.lr-pdp__sheet button[data-lr-shut], .lr-pdp__zoomx {
    position: absolute; top: 12px; right: 12px; width: 36px; height: 36px; border: 0; border-radius: 50%; background: #f3f3f3; font-size: 22px; cursor: pointer;
}
.lr-pdp__modal.is-zoom { background: rgba(17,17,17,.82); }
.lr-pdp__modal.is-zoom img { max-width: min(920px, 92vw); max-height: 86vh; object-fit: contain; }
.lr-pdp__zoomx { position: fixed; top: 18px; right: 18px; background: #fff; }
@media (max-width: 980px) {
    body.lr-pdp-page .lr-main { padding: 12px 16px 48px; }
    .lr-pdp { grid-template-columns: 1fr; gap: 22px; }
    .lr-pdp__buy { position: static; }
    .lr-rev__top { grid-template-columns: 1fr; }
    .lr-rev__list article { grid-template-columns: 44px 1fr; }
    .lr-also__card { flex-basis: calc((100% - 16px) / 2); }
    .lr-pop { right: 16px; left: 16px; width: auto; z-index: 80; }
    body:has(a.wa-float) .lr-pop { bottom: calc(160px + env(safe-area-inset-bottom, 0px)); }
    body:not(:has(a.wa-float)) .lr-pop { bottom: calc(96px + env(safe-area-inset-bottom, 0px)); }
    body.lr-dock-on:has(a.wa-float) .lr-pop { bottom: calc(232px + env(safe-area-inset-bottom, 0px)); }
    body.lr-dock-on:not(:has(a.wa-float)) .lr-pop { bottom: calc(160px + env(safe-area-inset-bottom, 0px)); }
}
@media (max-width: 640px) {
    .lr-pdp__gallery.is-grid { grid-template-columns: 1fr; }
    .lr-pdp__row { flex-direction: column; align-items: stretch; }
    .lr-pdp__qty { justify-content: space-between; }
}
