.slide-page:has(.pp-title){max-width:none;padding:1.2rem 2.5vw 3.6rem;box-sizing:border-box}
.slide-page h1.pp-title{font-size:clamp(1.3rem,2.4vw,2.1rem);margin:0 0 .8rem}
.pp__body{display:flex;align-items:flex-start;gap:clamp(1rem,2.5vw,2.5rem)}
.pp__widget{flex:1 1 auto;min-width:0}
.pp__widget h4{display:none}
.pp__side{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:.8rem}
.pp__qr{background:#fff;color:#000;border-radius:10px;padding:.5rem;text-align:center;font:600 .8rem var(--font-body)}
.pp__qr:empty{display:none}
.pp__qr svg{width:clamp(110px,12vw,180px);height:auto;display:block}
.pp__url{margin-top:.3rem}
/* the widget's own clock is moved into .pp__clock by poll.js so it sits under the QR */
.pp__clock:empty{display:none}
.pp__clock .prior-clock{position:static;font-size:clamp(2rem,4vw,3.4rem)}
.mode-phone .pp__side{display:none}
.mode-phone .pp__body{display:block}
