*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}body{height:100dvh;color:#f3e7d2;background:#161616;font-family:Georgia,'Times New Roman',serif}main{position:relative;width:100%;height:100%;max-width:1100px;margin:0 auto}canvas{width:100%;height:100%;display:block;touch-action:none;cursor:grab}canvas:active{cursor:grabbing}canvas:focus-visible{outline:2px solid #ead3a7;outline-offset:-4px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:normal}.sr-only:focus-visible{clip-path:none;width:auto;height:auto;min-height:44px;max-width:90%;padding:12px 20px;left:12px;bottom:12px;z-index:5;background:#252321;color:#f3e7d2;border:1px solid #ead3a7;border-radius:6px}#loading{position:absolute;top:50%;left:0;right:0;text-align:center;font-size:16px;color:#d1c3af}#loading span{display:block;width:26px;height:1px;background:#e1c39d;margin:16px auto}#fallback{height:100%;padding:20px;text-align:center;overflow:auto}.text-fallback article{max-width:560px;margin:24px auto;padding:28px;color:#81231d;background:#f0e3c7 url('assets/cream-paper.jpg') center/cover;text-align:left;font-size:19px;line-height:1.6;position:static;width:auto;height:auto;clip-path:none}.text-fallback h1{font:italic 40px Georgia,serif}.text-fallback .reader-divider{text-align:center}dialog{width:min(600px,calc(100vw - 24px),calc((100dvh - 24px)*1882/1718));aspect-ratio:1882/1718;height:auto;max-height:none;max-width:none;padding:0;border:0;border-radius:2px;background:transparent;color:#81231d;overflow:visible;transform-origin:0 0;cursor:pointer;box-shadow:0 16px 60px #0004;--dim:0}dialog::backdrop{background:rgba(22,22,22,var(--dim))}.reader-content{position:relative;width:100%;aspect-ratio:1882/1718}.handoff-art{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;border-radius:2px}[hidden]{display:none!important}

#fallback:not([hidden]){display:flex;align-items:center;justify-content:center}#fallback>img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 40px);object-fit:contain}#fallback>article.sr-only{position:absolute;width:1px;height:1px;clip-path:inset(50%);padding:0;margin:0}
