.flyer-h1{font-size:clamp(1.3rem,1rem + 1.4vw,2rem)}
.viewer{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.75rem;margin-block:1rem 2rem}
.viewer:fullscreen{background:#0b0f1a;padding:1rem;border:0;border-radius:0;display:flex;flex-direction:column}
.viewer__bar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem}
.viewer__bar button,.viewer__bar .btn{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:10px;padding:.45rem .85rem;cursor:pointer;min-height:40px;display:inline-flex;align-items:center}
.viewer__bar button:hover,.viewer__bar .btn:hover{border-color:var(--brand);text-decoration:none}
.viewer__bar button[aria-pressed="true"]{background:var(--brand);color:#fff}
.viewer__spacer{flex:1}
.viewer__count{min-width:4.5rem;text-align:center;font-variant-numeric:tabular-nums}
.viewer__stage{display:flex;justify-content:center;gap:.5rem;overflow:auto;max-height:min(88vh,1400px);outline:0;background:var(--bg);border-radius:10px;touch-action:pan-y pinch-zoom}
.viewer__page{margin:0;flex:0 1 auto;max-width:100%}
.viewer__page img{max-height:min(86vh,1380px);width:auto;max-width:100%;margin-inline:auto;user-select:none;-webkit-user-drag:none}
.viewer__stage.is-zoom{justify-content:flex-start;cursor:zoom-out}
.viewer__stage.is-zoom .viewer__page img{max-height:none;max-width:none;width:180%}
.viewer:fullscreen .viewer__stage{flex:1;max-height:none}
.viewer:fullscreen .viewer__page img{max-height:calc(100vh - 190px)}
.viewer__thumbs{position:relative;display:flex;gap:.4rem;list-style:none;margin:.75rem 0 0;padding:0 0 .25rem;overflow-x:auto;scrollbar-width:thin}
.viewer__thumbs button{position:relative;border:2px solid transparent;background:none;padding:0;border-radius:6px;cursor:pointer;overflow:hidden;display:block}
.viewer__thumbs img{width:60px;height:85px;object-fit:cover;background:var(--bg)}
.viewer__thumbs span{position:absolute;inset:auto 0 0 0;background:rgba(0,0,0,.55);color:#fff;font-size:.7rem;text-align:center}
.viewer__thumbs button[aria-current="true"]{border-color:var(--brand-2)}
@media (min-width:900px){.viewer[data-spread="2"] .viewer__page img{max-height:min(86vh,1100px)}}
@media (max-width:640px){.viewer__bar{gap:.35rem}.viewer__bar button,.viewer__bar .btn{padding:.4rem .6rem}}
