/* Photo viewer for cabinet try-ons. */
body.pd-app .sheet-layer .pd-sheet.pd-tryon-sheet {
    height:auto;
    max-height:min(94dvh,900px);
}
body.pd-app .sheet-layer[data-mode="modal"] .pd-tryon-sheet {
    width:min(1120px,100%);
}
body.pd-app .sheet-layer .pd-tryon-sheet::before { display:none; }
body.pd-app .sheet-layer .pd-tryon-sheet .sheet__grabber { display:none; }
.pd-app .pd-tryon-header {
    display:flex;
    align-items:center;
    flex:none;
    gap:16px;
    padding:16px 16px 12px 24px;
}
body.pd-app .sheet-layer .pd-tryon-sheet .sheet__title {
    border:0;
    font-size:16px;
    font-weight:500;
    letter-spacing:0;
}
body.pd-app .sheet-layer .pd-sheet.pd-tryon-sheet .sheet__title { flex:1; margin:0; padding:0; }
body.pd-app .sheet-layer .pd-tryon-sheet .sheet__close-icon { position:static; flex:none; }
body.pd-app .sheet-layer .pd-tryon-sheet .pd-sheet__scroll {
    display:flex;
    flex-direction:column;
    padding:8px 24px calc(24px + var(--sheet-safe-bottom));
}
body.pd-app .pd-tryon-sheet [data-pd-sheet-body] { flex:none; min-height:0; }
.pd-app .pd-tryon-body { height:auto; }
.pd-app .pd-tryon-viewer { display:flex; flex-direction:column; gap:16px; min-height:0; }
.pd-app .pd-tryon-viewer > * { flex-shrink:0; }
.pd-app .pd-tryon-viewer__stage {
    position:relative;
    flex:none;
    width:100%;
    aspect-ratio:4 / 3;
    min-height:0;
    margin-inline:auto;
    overflow:hidden;
    border-radius:16px;
    background:#101112;
    isolation:isolate;
}
.pd-app .pd-tryon-viewer__main { position:absolute; inset:0; overflow:hidden; touch-action:pan-y; }
.pd-app .pd-tryon-viewer .swiper-wrapper {
    position:relative;
    display:flex;
    width:100%;
    height:100%;
    box-sizing:content-box;
    transition-property:transform;
}
.pd-app .pd-tryon-viewer .swiper-slide { position:relative; display:flex; align-items:center; justify-content:center; width:100%; height:100%; flex-shrink:0; }
.pd-app .pd-tryon-viewer__main:not(.swiper-initialized) .swiper-slide { display:none; }
.pd-app .pd-tryon-viewer__main:not(.swiper-initialized) .pd-tryon-slide--initial { display:flex; }
.pd-app .pd-tryon-viewer__frame { position:relative; width:100%; height:100%; max-width:100%; max-height:100%; }
.pd-app .pd-tryon-viewer__photo { width:100%; height:100%; background:transparent; }
.pd-app .pd-tryon-viewer__photo picture { display:block; width:100%; height:100%; }
.pd-app .pd-tryon-viewer__photo .pd-image-loader__image { width:100%; height:100%; object-fit:cover; }
.pd-app .pd-tryon-viewer__placeholder {
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:12px;
    height:100%;
    padding:56px;
    background:transparent;
    color:#d0d1d3;
    text-align:center;
    font-size:clamp(16px,2vw,24px);
    overflow-wrap:anywhere;
}
.pd-app .pd-tryon-viewer__placeholder p { margin:0; }
.pd-app .pd-tryon-viewer__placeholder-label { color:#909297; font-size:12px; }
.pd-app .pd-tryon-viewer__download {
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 35px;
    padding: 16px 0;
    border: 0;
    background: transparent;
    color: #ffffff;
    font-size: 13px;
    isolation: isolate;
    text-decoration: none;
}
.pd-app .pd-tryon-viewer__download::before {
    content:"";
    position:absolute;
    z-index:-1;
    inset:-56px 0 0;
    pointer-events:none;
    background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.03) 18%,rgba(0,0,0,.12) 42%,rgba(0,0,0,.3) 70%,rgba(0,0,0,.56) 100%);
}
.pd-app .pd-tryon-viewer__download:hover { color:#fff; }
.pd-app .pd-tryon-viewer__download svg { width:16px; height:16px; }
.pd-app .pd-tryon-viewer__hide {
    position:absolute;
    z-index:3;
    top:14px;
    right:14px;
    padding:7px 12px;
    border:1px solid #ffffff26;
    border-radius:20px;
    background:#1112148f;
    color:#c3c5cb;
    font-size:11px;
    line-height:1.4;
}
.pd-app .pd-tryon-viewer__hide:hover { color:#fff; background:#111214c9; }
.pd-app .pd-tryon-viewer__arrow {
    position: absolute;
    z-index: 3;
    top: 50%;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    margin-top: -22px;
    padding: 0 0 3px;
    border: 1px solid #ffffff1a;
    border-radius: 36px;
    background: #11121473;
    color: #d8dade;
    font-size: 28px;
    line-height: 1;
}
.pd-app .pd-tryon-viewer__arrow--prev { left:12px; }
.pd-app .pd-tryon-viewer__arrow--next { right:12px; }
.pd-app .pd-tryon-viewer__thumbs { flex:none; width:min(420px,100%); margin-inline:auto; overflow:hidden; }
.pd-app .pd-tryon-viewer__thumb {
    display:flex;
    flex-direction:column;
    gap:6px;
    width:100%;
    padding:4px;
    border:1px solid transparent;
    border-radius:12px;
    background:transparent;
    color:var(--bs-gray-600);
    font:inherit;
    text-align:center;
}
.pd-app .pd-tryon-viewer__thumb[aria-pressed="true"] {  color:var(--bs-gray-900); border: 1px solid #2d2d2d; box-shadow: 0 0 0 0.9px #171717;}
.pd-app .pd-tryon-viewer__thumb-image { display:block; width:100%; height:72px; overflow:hidden; border-radius:8px; background:#101112; }
.pd-app .pd-tryon-viewer__thumb-image .pd-image-loader { width:100%; height:100%; }
.pd-app .pd-tryon-viewer__thumb-image .pd-image-loader__image { object-fit:contain; }
.pd-app .pd-tryon-viewer__thumb-label { font-size:12px; line-height:1.5; }
.pd-app .pd-tryon-viewer__thumb-empty { display:grid; place-items:center; height:100%; padding:6px; color:#919399; font-size:10px; line-height:1.4; }
.pd-app .pd-tryon-viewer__actions { flex:none; display:flex; justify-content:center; }
.pd-app .pd-tryon-viewer__actions .cult-pro-button-wrap {
    width:auto;
    border-radius:9999px;
    background:linear-gradient(110deg,rgba(165,103,53,.42),rgba(173,164,164,.18) 50%,rgba(118,99,157,.4));
    box-shadow:0 2px 8px rgba(0,0,0,.2);
}
.pd-app .pd-tryon-viewer__actions [data-cult="animated-button"][data-pd-reuse-generation] {
    width:auto;
    min-height:64px;
    padding:18px 32px;
    border:1px solid rgba(255,255,255,.06);
    border-radius:9999px;
    background:linear-gradient(110deg,rgba(35,28,24,.94),rgba(29,28,31,.94) 50%,rgba(28,28,37,.94));
    color:#fafafa;
    box-shadow:inset 0 1px 1px rgba(255,255,255,.05),0 4px 14px rgba(0,0,0,.15);
    font-size:20px;
    font-weight:600;
    line-height:1.25;
    letter-spacing:-.45px;
}
.pd-app .pd-tryon-viewer__actions .cult-pro-field { opacity:.45; }
.pd-app .pd-tryon-viewer__actions .cult-pro-rim:hover > .cult-pro-glow .cult-pro-field,
.pd-app .pd-tryon-viewer__actions .cult-pro-rim:focus-within > .cult-pro-glow .cult-pro-field { opacity:.7; }
.pd-app .pd-tryon-viewer__actions .cult-pro-blob-1 { background:linear-gradient(90deg,#aa6332,#806559,#6e607f); }
.pd-app .pd-tryon-viewer__actions .cult-pro-blob-2 { background:linear-gradient(90deg,#9b623b,#756377,#81709c); }
.pd-app .pd-tryon-viewer__actions .cult-pro-blob-3 { background:linear-gradient(90deg,#686278,#806b9c,#8b5b36); }
.pd-app .pd-tryon-viewer button:focus-visible,
.pd-app .pd-tryon-viewer a:focus-visible { outline:2px solid var(--bs-gray-600); outline-offset:-3px; }
@media(max-width:767px) {
    .pd-app .pd-tryon-header { padding:8px 12px 12px 16px; }
    body.pd-app .sheet-layer .pd-tryon-sheet .sheet__title { font-size:14px; }
    body.pd-app .sheet-layer .pd-tryon-sheet .pd-sheet__scroll { padding:4px 12px calc(16px + var(--sheet-safe-bottom)); }
    .pd-app .pd-tryon-viewer { gap:12px; }
    .pd-app .pd-tryon-viewer__stage { border-radius:12px; }
    .pd-app .pd-tryon-viewer__thumb-image { height:162px; }
    .pd-app .pd-tryon-viewer__actions [data-cult="animated-button"][data-pd-reuse-generation] { min-height:56px; padding:16px 20px; font-size:clamp(14px,4vw,16px); }
    .pd-app .pd-tryon-viewer__hide { top:10px; right:10px; }
    .pd-app .pd-tryon-viewer__placeholder { padding:40px; }
}
