:root{--opentilt-open-dur:620ms;--opentilt-close-dur:420ms;--opentilt-open-ease:cubic-bezier(0.22,1,0.36,1);--opentilt-close-ease:cubic-bezier(0.22,1,0.36,1);--opentilt-closed-scale:0.3;--opentilt-tilt-x:22deg;--opentilt-tilt-y:-14deg;--opentilt-lift:70px;--opentilt-perspective:900px;--opentilt-open-w:320px;--opentilt-open-h:240px;--opentilt-bend:28;--opentilt-bend-dur:300ms;--opentilt-bend-ease:ease-out}.t-opentilt-stage{perspective:var(--opentilt-perspective)}.t-opentilt-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;position:relative;width:var(--opentilt-open-w);height:var(--opentilt-open-h);border-radius:32px;overflow:visible;cursor:pointer;background:#eeeeef;box-shadow:0 0 0 1px rgba(0,0,0,.06),0 2px 6px rgba(0,0,0,.05),0 4px 42px rgba(0,0,0,.06);-webkit-tap-highlight-color:transparent;transform-origin:center;scale:var(--opentilt-closed-scale);transform:rotateX(0deg) rotateY(0deg) translateZ(0);will-change:scale,transform;transition:scale var(--opentilt-close-dur) var(--opentilt-close-ease),border-radius var(--opentilt-close-dur) var(--opentilt-close-ease)}.t-opentilt-canvas{position:absolute;display:none;pointer-events:none}.t-opentilt-card.is-bending{background:transparent}.t-opentilt-card.is-bending .t-opentilt-img{visibility:hidden}.t-opentilt-card.is-bending .t-opentilt-canvas{display:block}.t-opentilt-card.is-open{border-radius:16px;scale:1;transition:scale var(--opentilt-open-dur) var(--opentilt-open-ease),border-radius var(--opentilt-open-dur) var(--opentilt-open-ease);animation:t-opentilt-open var(--opentilt-open-dur) both}.t-opentilt-card.is-closing{animation:t-opentilt-close var(--opentilt-close-dur) both}@keyframes t-opentilt-open{0%{transform:rotateX(0deg) rotateY(0deg) translateZ(0);animation-timing-function:cubic-bezier(.3,.7,.4,1)}40%{transform:rotateX(var(--opentilt-tilt-x)) rotateY(var(--opentilt-tilt-y)) translateZ(var(--opentilt-lift));animation-timing-function:cubic-bezier(.45,0,.3,1)}to{transform:rotateX(0deg) rotateY(0deg) translateZ(0)}}@keyframes t-opentilt-close{0%{transform:rotateX(0deg) rotateY(0deg) translateZ(0);animation-timing-function:cubic-bezier(.4,.4,.5,1)}45%{transform:rotateX(calc(var(--opentilt-tilt-x) * -.45)) rotateY(calc(var(--opentilt-tilt-y) * -.45)) translateZ(calc(var(--opentilt-lift) * .4));animation-timing-function:cubic-bezier(.45,0,.3,1)}to{transform:rotateX(0deg) rotateY(0deg) translateZ(0)}}.t-opentilt-img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;pointer-events:none;border-radius:inherit}@media (prefers-reduced-motion:reduce){.t-opentilt-card,.t-opentilt-card.is-open{animation:none;transition:none}}.book-image-dialog{position:fixed;inset:0;box-sizing:border-box;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;border:0;overflow:hidden;background:transparent;color:#e9e8e3;--opentilt-open-dur:400ms;--opentilt-close-dur:250ms;--opentilt-tilt-x:3deg;--opentilt-tilt-y:-2deg;--opentilt-lift:8px;--opentilt-bend:0}.book-image-dialog[open]{display:grid;place-items:center}.book-image-description{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.book-image-dialog::-webkit-backdrop{background:rgb(8 10 11/94%)}.book-image-dialog::backdrop{background:rgb(8 10 11/94%)}.book-image-stage{width:min(92vw,calc((100dvh - 8rem) * var(--book-image-ratio)),var(--book-image-width));aspect-ratio:var(--book-image-ratio);--opentilt-open-w:100%;--opentilt-open-h:100%}.book-image-dialog .t-opentilt-card{display:block;border-radius:4px;background:#101214;box-shadow:none;cursor:zoom-out;translate:var(--book-image-origin-x) var(--book-image-origin-y);transition:scale var(--opentilt-close-dur) var(--opentilt-close-ease),translate var(--opentilt-close-dur) var(--opentilt-close-ease)}.book-image-dialog .t-opentilt-card.is-open{border-radius:4px;translate:0 0;transition:scale var(--opentilt-open-dur) var(--opentilt-open-ease),translate var(--opentilt-open-dur) var(--opentilt-open-ease)}.book-image-dialog .t-opentilt-img{object-fit:contain}.book-image-close,.book-image-original{position:absolute;z-index:1;color:#e9e8e3;font:.8125rem/1.5 var(--font-mono),ui-monospace,monospace}.book-image-close{top:1rem;right:max(1rem,env(safe-area-inset-right));min-height:44px;border:1px solid #535b57;border-radius:4px;background:#101214;padding:.5rem .875rem;cursor:pointer}.book-image-close span{margin-left:.75rem}.book-image-original{bottom:max(1.25rem,env(safe-area-inset-bottom));text-underline-offset:.2em}.book-image-close:focus-visible,.book-image-dialog .t-opentilt-card:focus-visible,a[data-book-image]:focus-visible{outline:2px solid #cad9d2;outline-offset:4px}a[data-book-image]{display:block;cursor:zoom-in}@media (prefers-reduced-motion:reduce){.book-image-dialog .t-opentilt-card,.book-image-dialog .t-opentilt-card.is-open{animation:none;transition:none}}