.pf-preview{position:relative;aspect-ratio:1.52;overflow:hidden;background:var(--lm-soft,#edf3ff)}.pf-preview.pf-large{border-radius:18px;margin-bottom:22px}.pf-browser,.pf-compare,.pf-image-button{position:relative;width:100%;height:100%}.pf-browser-bar{height:28px;display:flex;align-items:center;gap:5px;padding:0 12px;background:var(--lm-surface,#fff);border-bottom:1px solid var(--lm-line,#dce4ef)}.pf-browser-bar i{width:6px;height:6px;border-radius:50%;background:#f08b86}.pf-browser-bar i:nth-child(2){background:#e9bf65}.pf-browser-bar i:nth-child(3){background:#65bc9e}.pf-browser-bar span{font-size:9px;color:var(--lm-muted);margin:auto}.pf-browser-screen{height:calc(100% - 28px);overflow:hidden}.pf-browser-screen img{display:block;width:100%!important;height:auto!important;object-fit:initial!important;max-width:none;transform:translateY(0);transition:transform 7s linear;will-change:auto}.pf-browser.pf-running .pf-browser-screen img{transform:translateY(calc(-1 * var(--pf-travel,0px)))}.pf-scroll-button{position:absolute;bottom:9px;right:9px;display:flex;align-items:center;gap:5px;border:1px solid #ffffff55;background:#14233be8;color:white;padding:6px 10px;border-radius:9px;cursor:pointer;font-size:10px}.pf-scroll-button svg{width:13px;height:13px}.pf-image-button{display:block;padding:0;border:0;cursor:zoom-in;background:none}.pf-image-button img,.pf-compare>img,.pf-before img{width:100%!important;height:100%!important;object-fit:cover;display:block}.pf-enlarge{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#14233bd9;color:white}.pf-enlarge svg{width:16px;height:16px}.pf-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--pf-split)) 0 0)}.pf-label{position:absolute;top:12px;font-size:10px;font-weight:600;color:white;background:#14233be0;padding:5px 9px;border-radius:8px;pointer-events:none}.pf-label-before{left:12px}.pf-label-after{right:12px}.pf-handle{position:absolute;left:var(--pf-split);top:0;bottom:0;border-left:2px solid white;color:#14233b;pointer-events:none;display:flex;align-items:center;justify-content:center;width:1px;font-size:0}.pf-handle:after{content:'↔';display:grid;place-items:center;font-size:17px;width:32px;height:32px;flex-shrink:0;border-radius:50%;background:white;box-shadow:0 2px 12px #0003}.pf-slider{position:absolute;inset:0;width:100%!important;height:100%!important;margin:0!important;opacity:0;cursor:ew-resize;touch-action:pan-y}.pf-compare:focus-within{outline:3px solid var(--primary);outline-offset:-3px}.pf-lightbox{width:min(1100px,calc(100vw - 24px));max-height:92dvh;padding:16px;border:1px solid #ffffff26;border-radius:19px;background:#111d32;color:white;overflow:auto}.pf-lightbox::backdrop{background:#07101cda;backdrop-filter:blur(6px)}.pf-lightbox img{max-width:100%;max-height:76dvh;object-fit:contain;margin:auto}.pf-lightbox header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;font-size:13px}.pf-lightbox button{border:0;background:#ffffff19;color:white;border-radius:9px;width:36px;height:36px;cursor:pointer}.pf-upload-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pf-upload-pair>small{grid-column:1/-1}[data-preview-fields][hidden]{display:none!important}@media(max-width:600px){.pf-upload-pair{grid-template-columns:1fr}.pf-preview.pf-large{aspect-ratio:1.25}}@media(prefers-reduced-motion:reduce){.pf-browser-screen img{transition:none!important}}
/* A focused comparison should highlight its handle, not draw a blue frame. */
.pf-compare:focus-within{outline:none}.pf-slider:focus,.pf-slider:focus-visible{outline:none!important;box-shadow:none!important}.pf-compare:has(.pf-slider:focus-visible) .pf-handle:after{box-shadow:0 0 0 3px var(--primary),0 2px 12px #0003}.pf-compare .pf-label{top:auto;bottom:12px;z-index:2}.pf-compare .pf-handle{z-index:2}.pf-compare .pf-slider{z-index:3}.pf-preview[data-pf-type=before_after] .lm-sample-badge{z-index:4;pointer-events:none}
.pf-preview .lm-sample-badge{background:rgba(255,255,255,.64);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border:1px solid rgba(255,255,255,.8);color:#1d2c49;box-shadow:0 3px 12px rgba(15,35,65,.08),inset 0 1px 0 rgba(255,255,255,.5)}html[data-theme=dark] .pf-preview .lm-sample-badge{background:rgba(20,33,54,.68);border-color:rgba(255,255,255,.23);color:#eef4ff;box-shadow:0 3px 12px rgba(0,0,0,.16)}

/* v388: labels stay inside their visible image side. */
.pf-compare .pf-label{transition:opacity .15s ease,visibility .15s ease}
.pf-compare .pf-label.pf-label-hidden{opacity:0;visibility:hidden}
.pf-compare .pf-label[hidden]{display:none!important}
.pf-compare .pf-handle:after{content:'‹  ›';width:42px;height:42px;font-size:23px;font-weight:500;letter-spacing:2px;border:1px solid #dbe4f0;box-sizing:border-box;box-shadow:0 3px 14px #10233b30}
.pf-compare:not(.pf-used) .pf-handle:after{animation:pf-drag-cue 1.2s ease-in-out 3}
.pf-drag-hint{position:absolute;top:calc(50% + 31px);left:50%;transform:translateX(-50%);z-index:2;white-space:nowrap;pointer-events:none;padding:5px 9px;border-radius:999px;background:#14233be8;color:#fff;font-size:10px;line-height:1.4;box-shadow:0 2px 8px #0002;transition:opacity .2s ease,visibility .2s ease}
.pf-used .pf-drag-hint{opacity:0;visibility:hidden}
@keyframes pf-drag-cue{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@media(prefers-reduced-motion:reduce){.pf-compare .pf-handle:after{animation:none!important}.pf-compare .pf-label,.pf-drag-hint{transition:none}}
