/* In-page project viewer (desktop v3, LEDGER R12; research/desktop-v3/viewer-mechanic.md §3.3:
   dialog below the 73px nav, panel 32,89 1376x779 @1440, radius 18, media 3:4 full inner height, body column right). */
@media (min-width:941px){
  html.pv-lock{overflow:hidden}
  dialog.pv{position:fixed;inset:73px 0 0 0;width:100%;height:auto;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;overflow:visible}
  dialog.pv::backdrop{background:transparent}
  .pv-scrim{position:absolute;inset:0;background:rgba(0,0,0,.3)}
  .pv-panel{position:absolute;left:32px;right:32px;top:16px;bottom:32px;border-radius:18px;background:#fff;overflow:hidden;display:grid;
    grid-template-columns:minmax(0,62fr) minmax(0,38fr);column-gap:48px;padding:40px;align-items:center}
  /* v5 pass 2: desktop browser canvas (16:10 viewport + a thin chrome bar), the real 1440 page inside, no stretch */
  .pv-media{width:100%;max-height:100%;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.08),0 30px 70px -30px rgba(0,0,0,.35)}
  .pv-bar{height:34px;display:flex;align-items:center;gap:7px;padding:0 14px;background:#f1f1f3;border-bottom:1px solid rgba(0,0,0,.06)}
  .pv-bar i{width:9px;height:9px;border-radius:50%;background:#d4d4d8;flex:none}
  .pv-url{margin-left:12px;flex:1;height:20px;border-radius:10px;background:#fff;font-size:11.5px;line-height:20px;color:#6b6b73;padding:0 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60%}
  .pv-view{position:relative;aspect-ratio:16/10;overflow:hidden;background:#fff}
  .pv-view img{position:absolute;left:0;top:0;width:100%;height:auto;display:block;will-change:transform}
  .pv-body{align-self:end;padding-bottom:8px;max-width:calc(60*var(--u))}
  #pv-title{font-size:calc(7.2*var(--u));line-height:1.02;font-weight:500;letter-spacing:-.02em;margin:0;color:var(--ink)}
  .pv-desc{font-size:calc(2.2*var(--u));line-height:1.4;color:var(--muted);margin:calc(2.4*var(--u)) 0 calc(3.6*var(--u));
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .pv-cta.dpill{color:#000;gap:calc(1.2*var(--u))}
  .pv-cta .dpill-b{border-color:#000}
  .pv-cta .dpill-r span{background:#000}
  .pv-cta .dpill-l{text-shadow:0 1.25em 0 #fff}
  .pv-cta:hover{color:#fff}
  .pv-cta-ic{position:relative;z-index:2;width:1em;height:1em;display:inline-grid;place-items:center}
  .pv-cta-ic svg{width:.8em;height:.8em}
  .pv-close{position:absolute;top:20px;right:20px;width:48px;height:48px;border-radius:50%;border:0;background:#f1f1f3;color:#111;
    display:grid;place-items:center;cursor:pointer;z-index:3;transition:background .3s}
  .pv-close:hover{background:#e3e3e8}
  .pv-close svg{width:20px;height:20px}
  .pv-close:focus-visible{outline:2px solid #000;outline-offset:3px}
}
