.catalog-viewer{z-index:60;color:#fff;overscroll-behavior:contain;background:#1b1b1d;flex-direction:column;display:flex;position:fixed;inset:0}.catalog-topbar{background:#161618;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:1rem;height:3.5rem;padding-inline:1rem;display:flex}.catalog-topbar-group{align-items:center;gap:.75rem;display:flex}.catalog-topbar a,.catalog-topbar button{color:#ffffffbf;font-family:var(--font-eyebrow);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;font-size:12px;transition:color .15s;display:inline-flex}.catalog-topbar a:hover,.catalog-topbar button:hover{color:#fff}.catalog-indicator{font-family:var(--font-eyebrow);letter-spacing:.1em;color:#fff9;text-align:center;min-width:5ch;font-size:12px}.catalog-nav-btn:disabled{opacity:.3;cursor:default}.catalog-stage{flex:1;justify-content:center;align-items:center;min-height:0;padding:clamp(.5rem,2.2vh,1.75rem) clamp(.5rem,3vw,2.5rem);display:flex;position:relative;overflow:hidden}.catalog-pan-wrap{width:max-content;transform:translate(var(--catalog-pan-x,0px), var(--catalog-pan-y,0px));flex:none;transition:opacity .25s}.catalog-stage[data-ready=false] .catalog-pan-wrap{opacity:0;pointer-events:none}.catalog-zoom-wrap{transform-origin:50%;transform:scale(var(--catalog-zoom,1));transition:transform .22s}.catalog-book-scale{transform-origin:50%;transform:scale(var(--catalog-scale,1));-webkit-user-select:none;user-select:none}.catalog-pan-overlay{z-index:5;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0}.catalog-pan-overlay:active{cursor:grabbing}.catalog-book{width:1588px;height:1123px;position:relative}@media (max-width:900px){.catalog-book{width:794px}}.catalog-book .stf__wrapper[class*=landscape] .stf__block:after{content:"";inset-block:0;pointer-events:none;z-index:3;mix-blend-mode:multiply;background:linear-gradient(90deg,#0000 0%,#00000008 22%,#00000021 40%,#00000061 50%,#00000021 60%,#00000008 78%,#0000 100%);width:18%;min-width:80px;max-width:190px;position:absolute;left:50%;transform:translate(-50%)}.catalog-page{color:var(--color-text-secondary);background:#fff;position:relative;overflow:hidden}.catalog-page-number{font-family:var(--font-eyebrow);letter-spacing:.1em;color:var(--color-text-secondary);font-size:12px;position:absolute;bottom:20px;right:20px}.catalog-book .stf__wrapper[class*=landscape] .catalog-page-number--left{left:20px;right:auto}.catalog-toc-backdrop{z-index:10;opacity:0;pointer-events:none;background:#00000080;transition:opacity .3s;position:absolute;inset:0}.catalog-toc-backdrop[data-open=true]{opacity:1;pointer-events:auto}.catalog-toc{z-index:11;visibility:hidden;background:#161618;border-left:1px solid #ffffff1a;flex-direction:column;width:300px;max-width:100%;height:100dvh;transition:transform .3s,visibility 0s linear .3s;display:flex;position:absolute;top:0;right:0;transform:translate(100%)}.catalog-toc[data-open=true]{visibility:visible;transition:transform .3s;transform:translate(0)}.catalog-toc-head{height:3.5rem;font-family:var(--font-eyebrow);letter-spacing:.08em;text-transform:uppercase;color:#fff9;border-bottom:1px solid #ffffff1a;flex:none;align-items:center;gap:.75rem;padding-inline:1rem;font-size:12px;display:flex}.catalog-toc-head button{color:#ffffffbf;cursor:pointer;background:0 0;border:none;align-items:center;display:inline-flex}.catalog-toc-head button:hover{color:#fff}.catalog-toc-list{overscroll-behavior:contain;flex:1;min-height:0;padding:.5rem 0 1.5rem;overflow-y:auto}.catalog-toc-link{text-align:left;color:#ffffffbf;cursor:pointer;background:0 0;border:none;border-left:2px solid #0000;width:100%;padding:.7rem 1.25rem;font-size:14px;transition:color .15s,background-color .15s;display:block}.catalog-toc-link span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.catalog-toc-link:hover{color:#fff;background:#ffffff0d}.catalog-toc-link[aria-current=true]{color:#fff;background:#ffffff14;border-left-color:#fff}.catalog-toc-sub{padding-left:2.25rem;font-size:13px}
