.pv-open{overflow:hidden}
.how-it-works-dialog{max-width:660px!important}
.how-it-works-content{padding:18px 20px 24px;overflow-y:auto;min-height:0;color:var(--mute);font-size:14px;line-height:1.65}
.how-it-works-content p{margin:0 0 16px}
.how-it-works-content p:last-child{margin-bottom:0}
.how-it-works-content .how-it-works-intro{color:var(--fg);font-size:16px}
.pv-dialog{width:calc(100% - 24px);max-width:900px;max-height:calc(100dvh - 24px);margin:auto;padding:0;border:1px solid var(--line2);border-radius:18px;background:var(--card);color:var(--fg);box-shadow:0 20px 80px #0008;overflow:hidden}
.pv-dialog[open]{display:flex;flex-direction:column}
.pv-dialog::backdrop{background:rgba(0,0,0,.8);backdrop-filter:blur(6px)}
.pv-dialog .pv-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px 0}
.pv-dialog .pv-title{font-family:var(--serif);font-weight:400;font-size:28px;margin-top:6px}
.pv-dialog .pv-close{flex:none;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line2);border-radius:12px;background:transparent;color:var(--mute);cursor:pointer}
.pv-dialog .pv-close:hover{color:var(--fg);border-color:var(--fg)}
.pv-dialog .pv-note{padding:8px 20px 14px;color:var(--mute);font-size:13px;line-height:1.5;border-bottom:1px solid var(--line)}
.pv-dialog .pv-stage{flex:1 1 auto;min-height:0;display:flex}
.pv-dialog .pv-head,.pv-dialog .pv-note,.pv-dialog .pv-controls{flex-shrink:0}
.pv-dialog .pv-track{display:flex;width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain}
.pv-dialog .pv-track::-webkit-scrollbar{display:none}
.pv-dialog .pv-slide{flex:0 0 100%;min-width:0;box-sizing:border-box;margin:0;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;align-items:center;gap:14px;padding:18px 20px;background:var(--bg);overflow-y:auto}
.pv-dialog .pv-slide img{display:block;max-width:100%;height:auto;max-height:min(58vh,560px);width:auto;object-fit:contain;border:1px solid var(--line);border-radius:10px;flex:0 1 auto;min-height:0}
.pv-dialog .pv-cap{color:var(--mute);text-align:center;max-width:560px;line-height:1.55;font-size:15px;overflow-wrap:anywhere}
.pv-dialog .pv-start{display:block;margin-top:12px}
.pv-dialog .pv-start a{color:var(--fg);text-decoration:underline;text-underline-offset:3px}
.pv-dialog .pv-start a:focus-visible{outline:2px solid var(--fg);outline-offset:3px}
.pv-dialog .pv-controls{display:flex;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid var(--line)}
.pv-dialog .pv-arrow{flex:none;width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line2);border-radius:12px;background:transparent;color:var(--fg);cursor:pointer}
.pv-dialog .pv-arrow:hover:not(:disabled){border-color:var(--fg)}
.pv-dialog .pv-arrow:disabled{opacity:.3;cursor:not-allowed}
.pv-dialog .pv-dots{display:flex;gap:6px;flex:1;justify-content:center}
.pv-dialog .pv-dots i{width:22px;height:2px;background:var(--line2);transition:background .2s}
.pv-dialog .pv-dots i.on{background:var(--fg)}
.pv-dialog .pv-status{font:12px var(--mono);color:var(--mute);letter-spacing:.08em;white-space:nowrap}
.pv-dialog .pv-close:focus-visible,.pv-dialog .pv-arrow:focus-visible,.pv-dialog .pv-track:focus-visible{outline:2px solid var(--fg);outline-offset:2px}
.pv-dialog .pv-track:focus-visible{outline-offset:-2px}
@media (max-width:600px){
  .pv-dialog .pv-title{font-size:23px}
  .pv-dialog .pv-slide{padding:14px}
  .pv-dialog .pv-slide img{max-height:48dvh}
  .pv-dialog .pv-cap{font-size:14px}
  .pv-dialog .pv-dots{display:none}
  .pv-dialog .pv-status{flex:1;text-align:center}
}
@media (prefers-reduced-motion:reduce){.pv-dialog .pv-track{scroll-behavior:auto}}
