/* Floating "study on your phone" QR card (self-contained; same look and collapse toggle as the book banner).
   Markup pattern: <div class="qrf-stack" id="qrfStack"> <div class="qrf-card" id="qrfCard"> ... </div> [other floats] </div>
   Shown from 1440px wide by default; add class qrf-1280 for pages with a narrow article (shown from 1280px). */
.qrf-stack{display:none;position:fixed;top:110px;right:16px;width:190px;z-index:900;flex-direction:column;gap:10px;max-height:calc(100vh - 130px);overflow-y:auto;overflow-x:hidden;scrollbar-width:none}
.qrf-stack::-webkit-scrollbar{display:none}
@media(min-width:1440px){.qrf-stack{display:flex}.qrf-inline{display:none!important}}
@media(min-width:1280px){.qrf-stack.qrf-1280{display:flex}}
.qrf-stack .aff-float{position:static;top:auto;right:auto;width:auto;display:block}
.qrf-stack .aff-float.minimized{width:auto}
.qrf-stack .aff-float.minimized .aff-float-toggle{border-bottom:0}
.qrf-card{background:#fff;border:1px solid #ddd6fe;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.1);overflow:hidden}
.qrf-toggle{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;background:#faf8ff;border-bottom:1px solid #ede9fe;cursor:pointer;user-select:none}
.qrf-card.minimized .qrf-toggle{border-bottom:0}
.qrf-label{font-size:9.5px;font-weight:700;letter-spacing:.5px;color:#6d28d9;text-transform:uppercase}
.qrf-arrow{font-size:13px;color:#94a3b8;transition:transform .2s;line-height:1}
.qrf-card.minimized .qrf-arrow{transform:rotate(180deg)}
.qrf-card.minimized .qrf-body{display:none}
.qrf-body{padding:14px}
.qrf-icon{display:block;width:104px;height:auto;margin:-4px auto 6px}
.qrf-qr{width:100%;height:auto;display:block;border:1px solid #e2e8f0;border-radius:8px;padding:5px;background:#fff;margin-bottom:10px}
.qrf-new{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;background:#ede9fe;color:#6d28d9;padding:1px 8px;border-radius:9px;margin-bottom:5px}
.qrf-title{font-size:11.5px;font-weight:700;color:#0f172a;line-height:1.3;margin-bottom:3px}
.qrf-text{font-size:11px;line-height:1.5;color:#475569;margin:0 0 9px}
.qrf-btn{display:block;background:#0f766e;color:#fff;font-size:11px;font-weight:700;padding:7px 8px;border-radius:8px;text-align:center;text-decoration:none;transition:background .2s}
.qrf-btn:hover{background:#0d6460}
/* inline version for narrower screens (hub) */
.qrf-inline{display:flex;gap:16px;align-items:center;max-width:960px;margin:0 auto 24px;padding:14px 18px;border:1px solid #ddd6fe;background:#faf8ff;border-radius:14px;text-align:left}
.qrf-inline img.qrf-inline-icon{flex:none;width:72px;height:auto}
.qrf-inline h3{margin:0 0 3px;font-size:16px;color:#0f172a}
.qrf-inline p{margin:0 0 8px;font-size:13.5px;line-height:1.5;color:#475569}
.qrf-inline a.qrf-btn{display:inline-block;padding:8px 16px;font-size:13px}
