.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--eu-ink-700),var(--eu-ink-900));padding:20px}.login-container{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:grid;grid-template-columns:minmax(220px,360px) minmax(280px,380px);max-width:820px;overflow:hidden}.login-cover-preview{background:var(--eu-ink-900);min-height:420px;padding:18px;display:flex;align-items:center;justify-content:center}.login-cover-image{width:100%;height:100%;max-height:640px;object-fit:contain;box-shadow:0 16px 34px #0000006b}.login-panel{padding:40px;display:flex;flex-direction:column;justify-content:center}.login-header{text-align:center;margin-bottom:32px}.login-header h1{font-size:32px;font-weight:700;color:var(--eu-ink-900);margin:0 0 8px}.login-header p{color:#718096;font-size:14px;margin:0}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:var(--eu-ink-700);font-size:14px}.form-group input{padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:16px;transition:all .2s}.form-group input:focus{outline:none;border-color:var(--eu-red);box-shadow:0 0 0 3px var(--eu-red-soft)}.form-group input:disabled{background-color:#f7fafc;cursor:not-allowed}.error-message{background-color:#fed7d7;color:var(--eu-red-dark);padding:12px 16px;border-radius:8px;font-size:14px;border:1px solid #fc8181}.login-button{padding:14px 24px;background:linear-gradient(135deg,#0068a2,#005a8c);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.login-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px #155cf566}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed}.dev-credentials-button{margin-top:8px;padding:10px 14px;background:transparent;border:2px dashed var(--eu-red);color:var(--eu-ink-700);border-radius:8px;cursor:pointer;font-weight:600}.dev-credentials-button:hover:not(:disabled){background:var(--eu-red-soft)}@media(max-width:720px){.login-page{align-items:flex-start;padding:16px}.login-container{grid-template-columns:1fr;max-width:420px}.login-cover-preview{min-height:0;padding:14px}.login-cover-image{max-height:56vh}.login-panel{padding:28px 24px 32px}}.page-viewer{align-items:center;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%;z-index:1}.page-container{align-items:center;display:flex;height:100%;justify-content:center;max-height:100%;max-width:100%;overflow:hidden;overscroll-behavior:contain;position:relative;touch-action:none;user-select:none;width:100%;-webkit-touch-callout:none;-webkit-user-select:none}.page-container.zoomed{cursor:grab}.page-container.zoomed .zoom-content{transition-duration:90ms}.page-container.gesture-active{cursor:grabbing}.page-image{border-radius:4px;box-shadow:0 10px 40px #00000080;display:block;height:auto;max-height:calc(100vh - var(--toolbar-height) - var(--thumbnail-height) - 32px);max-width:100%;object-fit:contain;-webkit-user-drag:none}.carousel-container{align-items:center;display:grid;gap:26px;grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,1fr);height:100%;justify-items:center;overflow:visible;padding:0 20px;position:relative;width:100%}.carousel-side{align-items:center;display:flex;gap:26px;height:100%;min-width:0;overflow:hidden;width:100%}.carousel-side-prev{justify-content:flex-end}.carousel-side-next{justify-content:flex-start}.carousel-item{align-items:center;display:flex;flex:0 1 auto;justify-content:center;max-height:100%;max-width:100%;min-height:0;min-width:0;transition:transform .26s ease}.carousel-image{border-radius:6px;box-shadow:0 18px 44px #000000a6,0 2px #ffffff0d;display:block;max-height:calc(100vh - var(--toolbar-height) - 48px);transition:opacity .26s ease,transform .26s ease,box-shadow .26s ease,filter .26s ease;width:auto}.carousel-image-frame{align-items:center;background-color:var(--eu-ink-900);background-position:center;background-repeat:no-repeat;background-size:contain;border-radius:6px;box-sizing:border-box;display:inline-flex;justify-content:center;aspect-ratio:var(--page-aspect, .66);max-height:100%;max-width:100%;overflow:hidden;position:relative;transition:opacity .26s ease,transform .26s ease,box-shadow .26s ease,filter .26s ease}.carousel-image-frame.single-frame,.carousel-image-frame.double-frame{height:calc(100vh - var(--toolbar-height) - 48px)}.carousel-image-frame.prev,.carousel-image-frame.next{filter:saturate(.62) brightness(.78);opacity:.32;pointer-events:none;transform:scale(.9)}.carousel-image-frame .carousel-image{height:100%;object-fit:contain;position:relative;width:100%;z-index:2}.carousel-image-frame.loading .carousel-image{filter:blur(1px) saturate(.78) brightness(.82);opacity:.45}.carousel-image-frame.loaded .carousel-image,.carousel-image-frame.error .carousel-image{filter:none;opacity:1}.carousel-error-placeholder{background:linear-gradient(135deg,var(--eu-ink-700),var(--eu-ink-900));height:min(70vh,720px);width:min(46vw,480px)}.carousel-image-shimmer{animation:carouselShimmer 1.2s ease-in-out infinite;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.2) 45%,transparent 70%);inset:0;pointer-events:none;position:absolute;transform:translate(-100%);z-index:3}.carousel-item.current:not(.double) .carousel-image-frame{transform:scale(.96)}.carousel-item.current .carousel-image-frame{box-shadow:0 0 80px 10px #1a2746,0 34px 70px #000c,0 0 0 1px var(--eu-gold),0 0 0 6px #c9a44c24}.carousel-image.prev,.carousel-image.next{filter:saturate(.62) brightness(.78);opacity:.32;pointer-events:none;transform:scale(.9)}.carousel-image-frame .carousel-image.prev,.carousel-image-frame .carousel-image.next{filter:none;opacity:1;transform:none}.carousel-item.current{transform:scale(.96);z-index:2}.carousel-item.current:not(.double) .carousel-image{transform:scale(.96)}.carousel-item.current .carousel-image{box-shadow:0 0 80px 10px #1a2746,0 34px 70px #000c,0 0 0 1px var(--eu-gold),0 0 0 6px #c9a44c24;filter:none}.carousel-item.current .carousel-image-frame .carousel-image{box-shadow:none}.double-page-container{align-items:center;display:flex;gap:0;justify-content:center;max-height:100%;max-width:100%;min-height:0;min-width:0}.double-image{border-radius:0;box-shadow:none;display:block;max-height:calc(100vh - var(--toolbar-height) - var(--thumbnail-height) - 32px);max-width:none;object-fit:contain;width:auto}.carousel-item.double .double-page-container{align-items:center;display:flex;gap:0}.carousel-item.double .double-image{border-radius:4px;max-height:calc(100vh - var(--toolbar-height) - 48px);max-width:40vw;object-fit:contain}.carousel-item.double .double-frame{max-width:40vw}.carousel-item.current.double .double-image,.carousel-item.current.double .double-frame{max-width:49vw}.double-merged{border-radius:4px;max-height:calc(100vh - var(--toolbar-height) - 48px);max-width:72vw;object-fit:contain;width:auto}.carousel-item.current.double .double-merged{max-width:68vw}.carousel-item.double .carousel-image.prev,.carousel-item.double .carousel-image.next,.carousel-item.double .carousel-image-frame.prev,.carousel-item.double .carousel-image-frame.next{transform:scale(1)!important}.zoom-content{align-items:center;display:flex;flex:0 0 auto;gap:0;justify-content:center;overflow:visible;transform-origin:center center;transition:transform .12s ease-out,width .12s ease-out,height .12s ease-out;will-change:transform}.page-container.gesture-active .zoom-content{transition:none}.zoom-image{display:block;max-height:none;max-width:none;object-fit:contain;pointer-events:none;-webkit-user-drag:none}.zoom-content.single .zoom-image{height:100%;width:100%}.zoom-single-image{border-radius:4px;box-shadow:0 10px 40px #00000080}.zoom-content.double .zoom-image{flex:0 0 auto;height:100%;width:auto}.zoom-double-image{border-radius:0;box-shadow:none}.zoom-image-frame{align-items:center;background-color:var(--eu-ink-900);background-position:center;background-repeat:no-repeat;background-size:contain;display:inline-flex;flex:0 0 auto;height:100%;justify-content:center;overflow:hidden;position:relative}.zoom-content.single .zoom-image-frame{height:100%;width:100%}.zoom-content.double .zoom-image-frame{height:100%;width:auto}.zoom-image-frame .zoom-placeholder-image{position:relative;transition:opacity .18s ease,filter .18s ease;z-index:1}.zoom-image-frame.loading .zoom-placeholder-image{filter:blur(1px) saturate(.86) brightness(.9);opacity:.9}.zoom-image-frame.loaded .zoom-placeholder-image{opacity:0}.zoom-image-frame.error .zoom-placeholder-image{filter:none;opacity:1}.zoom-image-frame .zoom-original-image{inset:0;object-fit:contain;opacity:0;position:absolute;transition:opacity .18s ease;z-index:2}.zoom-content.single .zoom-image-frame .zoom-original-image,.zoom-content.double .zoom-image-frame .zoom-original-image{height:100%;width:100%}.zoom-image-frame.loaded .zoom-original-image{opacity:1}.zoom-image-shimmer{animation:carouselShimmer 1.2s ease-in-out infinite;background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.22) 45%,transparent 70%);inset:0;pointer-events:none;position:absolute;transform:translate(-100%);z-index:3}.page-container.reading-mode .carousel-container{display:flex;gap:0;justify-content:center;overflow:hidden;padding:0}.page-container.reading-mode .carousel-side{display:none}.page-container.reading-mode .carousel-item,.page-container.reading-mode .carousel-item.current,.page-container.reading-mode .carousel-image-frame,.page-container.reading-mode .carousel-item.current:not(.double) .carousel-image,.page-container.reading-mode .carousel-item.current:not(.double) .carousel-image-frame{transform:none}.page-container.reading-mode .page-image,.page-container.reading-mode .carousel-image,.page-container.reading-mode .carousel-image-frame,.page-container.reading-mode .double-image,.page-container.reading-mode .double-merged,.page-container.reading-mode .carousel-item.current.double .double-merged{border-radius:0;box-shadow:none;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh}.page-container.reading-mode .carousel-image,.page-container.reading-mode .carousel-image-frame,.page-container.reading-mode .double-merged,.page-container.reading-mode .carousel-item.current.double .double-merged{max-width:100vw}.page-container.reading-mode .carousel-item.double .double-image,.page-container.reading-mode .carousel-item.current.double .double-image,.page-container.reading-mode .carousel-item.double .double-frame,.page-container.reading-mode .carousel-item.current.double .double-frame{max-width:50vw}@media(hover:none),(pointer:coarse),(max-width:1024px),(max-height:440px)and (orientation:landscape){.page-container.zoomed{cursor:default}.carousel-container{gap:0;overflow:hidden;padding:0}.carousel-side{gap:0}.carousel-image{max-height:calc(100vh - var(--toolbar-height) - calc(var(--thumbnail-height) / 1.4) - 24px)}.carousel-image-frame.single-frame,.carousel-image-frame.double-frame{height:calc(100vh - var(--toolbar-height) - calc(var(--thumbnail-height) / 1.4) - 24px)}.carousel-image.prev,.carousel-image.next,.carousel-image-frame.prev,.carousel-image-frame.next{display:none}.carousel-item.current:not(.double) .carousel-image,.carousel-item.current:not(.double) .carousel-image-frame{transform:scale(1.06)}.double-image{max-height:calc(100vh - var(--toolbar-height) - calc(var(--thumbnail-height) / 1.4) - 24px)}.double-merged,.carousel-item.current.double .double-merged{max-width:94vw}.carousel-item.current.double .double-frame{max-width:47vw}.zoom-content{transition-duration:80ms}.page-container.gesture-active .zoom-content{transition:none}}@media(max-width:768px),(max-height:440px)and (orientation:landscape){.page-image{max-height:calc(100vh - var(--toolbar-height) - calc(var(--thumbnail-height) / 1.4) - 24px)}.carousel-container{gap:0;padding:0}.carousel-side{gap:0}.carousel-image{max-height:calc(100vh - var(--toolbar-height) - calc(var(--thumbnail-height) / 1.4) - 24px)}.carousel-image-frame.single-frame,.carousel-image-frame.double-frame{height:calc(100vh - var(--toolbar-height) - calc(var(--thumbnail-height) / 1.4) - 24px)}.carousel-image.prev,.carousel-image.next,.carousel-image-frame.prev,.carousel-image-frame.next{display:none}.carousel-item.current:not(.double) .carousel-image,.carousel-item.current:not(.double) .carousel-image-frame{transform:scale(1.06)}.double-image{max-height:calc(100vh - var(--toolbar-height) - calc(var(--thumbnail-height) / 1.4) - 24px)}.double-merged,.carousel-item.current.double .double-merged{max-width:94vw}.carousel-item.current.double .double-frame{max-width:47vw}}@keyframes carouselShimmer{to{transform:translate(100%)}}@media(orientation:landscape)and (any-pointer:coarse),(orientation:landscape)and (hover:none),(orientation:landscape)and (max-height:480px){.page-container.landscape-spread .carousel-container{align-items:center;gap:10px;height:100%;max-height:100%;overflow:hidden;padding:0 8px}.page-container.landscape-spread .carousel-side{gap:10px;height:100%}.page-container.landscape-spread .carousel-item{height:100%;max-height:100%;min-height:0;min-width:0}.page-container.landscape-spread .carousel-item.prev,.page-container.landscape-spread .carousel-item.next{height:auto;max-height:min(56%,260px)}.page-container.landscape-spread .double-page-container{align-items:center;height:100%;max-height:100%}.page-container.landscape-spread .carousel-item.prev .double-page-container,.page-container.landscape-spread .carousel-item.next .double-page-container{height:min(48vh,220px);max-height:100%}.page-container.landscape-spread .page-image,.page-container.landscape-spread .carousel-image,.page-container.landscape-spread .double-image{height:100%;max-height:100%;object-fit:contain}.page-container.landscape-spread .carousel-image-frame.single-frame,.page-container.landscape-spread .carousel-image-frame.double-frame{flex:0 0 auto;height:100%;max-height:100%;min-width:1px}.page-container.landscape-spread .carousel-image-frame.prev,.page-container.landscape-spread .carousel-image-frame.next{display:inline-flex;opacity:.24;transform:scale(.86)}.page-container.landscape-spread .carousel-item.prev .carousel-image-frame,.page-container.landscape-spread .carousel-item.next .carousel-image-frame{height:min(48vh,220px);max-height:100%}.page-container.landscape-spread .carousel-image.prev,.page-container.landscape-spread .carousel-image.next{display:block;filter:none;opacity:1;transform:none}.page-container.landscape-spread .carousel-item.current,.page-container.landscape-spread .carousel-item.current:not(.double) .carousel-image,.page-container.landscape-spread .carousel-item.current:not(.double) .carousel-image-frame{transform:none}.page-container.landscape-spread .carousel-item.double .double-frame{border-radius:0;max-width:min(42vw,calc(50vw - 28px))}.page-container.landscape-spread .carousel-item.prev.double .double-frame,.page-container.landscape-spread .carousel-item.next.double .double-frame{max-width:min(18vw,150px)}.page-container.landscape-spread .carousel-item.current.double .double-frame{max-width:min(48vw,calc(50vw - 24px))}.page-container.landscape-spread .carousel-item.double.current .carousel-image-frame{box-shadow:none}.page-container.landscape-spread .carousel-item.double .double-image{border-radius:0;box-shadow:none}.page-container.landscape-spread .carousel-item:not(.double) .single-frame{max-width:min(52vw,calc(100vw - 48px))}.page-container.landscape-spread.reading-mode .carousel-container{display:flex;gap:0;justify-content:center;padding:0}.page-container.landscape-spread.reading-mode .carousel-item,.page-container.landscape-spread.reading-mode .double-page-container,.page-container.landscape-spread.reading-mode .carousel-image-frame.single-frame,.page-container.landscape-spread.reading-mode .carousel-image-frame.double-frame{height:100dvh;max-height:100dvh}.page-container.landscape-spread.reading-mode .carousel-item.current.double .double-frame,.page-container.landscape-spread.reading-mode .carousel-item.double .double-frame{max-width:50vw}.page-container.landscape-spread.reading-mode .carousel-item:not(.double) .single-frame{max-width:100vw}}.page-container.landscape-spread .carousel-image-frame.prev,.page-container.landscape-spread .carousel-image-frame.next{display:inline-flex;opacity:.24;transform:scale(.86)}.page-container.landscape-spread .carousel-image.prev,.page-container.landscape-spread .carousel-image.next{display:block;filter:none;opacity:1;transform:none}.page-container.landscape-spread .carousel-container{--landscape-preview-column: clamp(76px, 14vw, 168px);--landscape-carousel-gap: clamp(6px, 1vw, 12px);gap:var(--landscape-carousel-gap);grid-template-columns:var(--landscape-preview-column) minmax(0,1fr) var(--landscape-preview-column);overflow:hidden;padding:0 8px}.page-container.landscape-spread .carousel-side{gap:0;justify-self:stretch;overflow:hidden;width:var(--landscape-preview-column)}.page-container.landscape-spread .carousel-side-prev{justify-content:flex-end}.page-container.landscape-spread .carousel-side-next{justify-content:flex-start}.page-container.landscape-spread .carousel-item.current{max-width:calc(100vw - var(--landscape-preview-column) - var(--landscape-preview-column) - var(--landscape-carousel-gap) - var(--landscape-carousel-gap) - 16px)}.page-container.landscape-spread .carousel-item.current.double .double-frame{max-width:min(31vw,360px)}.page-container.landscape-spread .carousel-item.prev,.page-container.landscape-spread .carousel-item.next{height:auto;max-height:min(42vh,220px);max-width:var(--landscape-preview-column);min-width:0;overflow:visible}.page-container.landscape-spread .carousel-item.prev .double-page-container,.page-container.landscape-spread .carousel-item.next .double-page-container{height:min(38vh,190px);max-width:var(--landscape-preview-column);min-width:0}.page-container.landscape-spread .carousel-item.prev.double .double-frame,.page-container.landscape-spread .carousel-item.next.double .double-frame{height:min(38vh,190px);max-width:min(7vw,84px)}.page-container.landscape-spread .carousel-item.prev:not(.double) .single-frame,.page-container.landscape-spread .carousel-item.next:not(.double) .single-frame{height:min(38vh,190px);max-width:var(--landscape-preview-column)}.page-container.landscape-spread .carousel-item.prev .carousel-image-frame,.page-container.landscape-spread .carousel-item.next .carousel-image-frame{display:inline-flex;opacity:.32;transform:scale(.9)}.page-container.landscape-spread .carousel-item.prev .carousel-image,.page-container.landscape-spread .carousel-item.next .carousel-image{display:block;filter:none;opacity:1;transform:none}.toolbar{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(180deg,var(--eu-ink-700),var(--eu-ink-800));border-bottom:1px solid var(--eu-line);padding:12px 24px;box-shadow:0 2px 14px #0006,inset 0 -2px 0 var(--eu-gold);gap:16px;flex-wrap:wrap;--toolbar-height: 64px;height:var(--toolbar-height);z-index:1000}.toolbar-section{display:flex;align-items:center;gap:12px}.toolbar-title{color:#fff;font-family:var(--eu-serif);font-size:21px;font-weight:600;letter-spacing:.06em;margin:0}.toolbar-button{padding:8px 16px;background-color:var(--eu-line);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:background-color .2s;display:flex;align-items:center;justify-content:center;min-width:40px}.toolbar-button:hover:not(:disabled){background-color:#035785}.toolbar-button:disabled{opacity:.4;cursor:not-allowed}.toolbar-button .icon{font-size:16px}.logout-button{background-color:#0068a2}.logout-button:hover{background-color:#0276b4}.toolbar-logo-link{display:inline-block}.toolbar-logo-img{height:1.5em;width:auto;filter:brightness(0) invert(1)}@media(max-width:768px){.toolbar{padding:8px 12px}.toolbar-title{font-size:16px}.toolbar-logo-img{height:.9em;width:auto}}@media(orientation:landscape)and (max-height:480px){.toolbar{--toolbar-height: 36px;height:var(--toolbar-height);min-height:var(--toolbar-height);padding:4px 10px;gap:8px;flex-wrap:nowrap}.toolbar-title{font-size:13px;letter-spacing:.04em;white-space:nowrap}.toolbar-button{height:28px;min-height:28px;min-width:32px;border-radius:4px;font-size:12px;padding:0 10px;white-space:nowrap}}.thumbnail-carousel{position:absolute;left:0;right:0;bottom:calc(var(--sectionbar-height) + 8px);display:flex;align-items:center;gap:12px;padding:12px 18px;background:linear-gradient(180deg,rgba(10,16,32,0) 0%,var(--eu-ink-900) 60%);border-top:1px solid var(--eu-line);box-shadow:0 -10px 30px #000000b3,inset 0 1px #c9a44c40;z-index:9999;pointer-events:auto;min-height:160px}.thumbnail-track{display:flex;gap:12px;overflow-x:auto;padding:8px;flex:1;scroll-behavior:smooth}.thumbnail-track{-webkit-overflow-scrolling:touch;touch-action:pan-y}.thumbnail-track.dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.thumbnail-carousel{transition:transform .3s ease,opacity .2s ease}.thumbnail-track::-webkit-scrollbar{height:8px}.thumbnail-item{min-width:150px;flex:0 0 auto;cursor:pointer;border:1px solid #ffffff10;border-radius:8px;overflow:hidden;background:var(--eu-ink-600);display:flex;flex-direction:column;align-items:center;padding:4px;transition:border-color .15s ease,transform .15s ease}.thumbnail-item:hover{border-color:var(--eu-gold);transform:translateY(-3px)}.thumbnail-item.double{min-width:140px;flex-direction:row;align-items:flex-start;gap:8px}.thumbnail-item.active{border-color:var(--eu-gold);box-shadow:0 0 0 2px var(--eu-gold),0 0 18px 2px #c9a44c40;transform:scale(1.05)}.thumbnail-image{width:150px;height:210px;object-fit:cover;border-radius:4px;display:block;box-shadow:0 6px 18px #00000073}.thumbnail-image-wrap{align-items:center;background:var(--eu-ink-900);border-radius:4px;box-shadow:0 6px 18px #00000073;display:inline-flex;justify-content:center;overflow:hidden;position:relative}.thumbnail-image-wrap .thumbnail-image{box-shadow:none;transition:opacity .18s ease,filter .18s ease}.thumbnail-image-wrap.loading .thumbnail-image{filter:blur(1px) saturate(.72) brightness(.72);opacity:.36}.thumbnail-image-wrap.loaded .thumbnail-image{filter:none;opacity:1}.thumbnail-image-placeholder{background:linear-gradient(90deg,var(--eu-ink-800),var(--eu-ink-900))}.thumbnail-spinner{animation:thumbnailSpin .9s linear infinite;border:3px solid rgba(255,255,255,.08);border-radius:50%;border-top-color:var(--eu-red);height:28px;position:absolute;width:28px;z-index:2}.thumbnail-double{display:flex;flex-direction:column;gap:6px;align-items:center}.thumbnail-double-row{display:flex;gap:0;align-items:center;flex-wrap:nowrap}.thumbnail-item.double .thumbnail-image{width:auto;height:200px;object-fit:contain;background:#000}.thumbnail-badge{margin-top:6px;color:var(--eu-text-soft);font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.04em}.thumbnail-item.active .thumbnail-badge{color:var(--eu-gold);font-weight:700}.thumb-arrow{background:#16223cd9;border:1px solid var(--eu-line);color:#fff;width:36px;height:36px;border-radius:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,border-color .15s ease}.thumb-arrow:not(:disabled):hover{background:var(--eu-ink-600);border-color:var(--eu-gold)}.thumb-arrow:disabled{cursor:not-allowed;opacity:.34}.thumb-arrow.left,.thumb-arrow.right{align-self:center}.thumb-close{position:absolute;right:20px;top:-26px;background:#ffffff0f;border:1px solid rgba(255,255,255,.06);color:#e2e8f0;width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;z-index:10001}.thumb-close:hover{background:#ffffff17}.carousel-controls{display:flex;flex-direction:column;gap:8px;margin-left:8px}.thumb-close{background:#ffffff0f;border:1px solid rgba(255,255,255,.06);color:#e2e8f0;width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px}.thumb-close:hover{background:#ffffff14}@media(max-width:768px),(max-height:440px)and (orientation:landscape){.thumbnail-carousel{min-height:120px;padding:6px 8px}.thumbnail-item{min-width:68px}.thumbnail-image{width:60px;height:108px}.thumbnail-item.double{min-width:100px;gap:6px}.thumbnail-double-row img{flex:0 0 auto}.thumbnail-item.double .thumbnail-image{width:50px;height:96px;object-fit:contain}.thumbnail-spinner{width:22px;height:22px;border-width:2px}}@keyframes thumbnailSpin{to{transform:rotate(360deg)}}.section-bar{position:fixed;left:0;right:0;bottom:0;width:100%;display:flex;gap:8px;align-items:center;justify-content:center;padding:10px 12px;background:linear-gradient(180deg,rgba(13,21,38,0) 0%,var(--eu-ink-800) 55%,var(--eu-ink-900) 100%);border-top:1px solid var(--eu-line);box-shadow:0 -6px 28px #0009,inset 0 1px 0 var(--eu-gold);-webkit-overflow-scrolling:touch;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;z-index:10010;height:56px}.section-bar:before,.section-bar:after{content:"";flex:1 0 0}.section-btn{background:#ffffff0a;color:var(--eu-text);border:1px solid #ffffff14;padding:8px 14px;border-radius:8px;cursor:pointer;flex:0 0 auto;font-weight:600;letter-spacing:.01em;transition:background .18s ease,border-color .18s ease,color .18s ease}.section-btn:hover{background:#ffffff14;border-color:var(--eu-gold);color:#fff}.section-btn.active{background:var(--eu-red-soft);border-color:var(--eu-red);box-shadow:inset 0 -2px 0 var(--eu-red);color:#fff}@media(max-width:768px){.section-bar{overflow-x:auto;padding:8px;gap:6px;justify-content:flex-start}.section-btn{padding:6px 10px;font-size:13px}}@media(orientation:landscape)and (max-height:480px){.section-bar.collapsible{height:42px;padding:6px 74px 6px 8px;gap:6px;justify-content:flex-start;overflow-x:auto;z-index:10020}.section-bar.collapsible .section-btn{border-radius:6px;font-size:11px;padding:5px 8px;white-space:nowrap}.section-collapse-tab,.section-bar-tab{background:#0d1526eb;border:1px solid var(--eu-gold);box-shadow:0 8px 20px #00000080,inset 0 0 0 1px var(--eu-line);color:#fff;cursor:pointer;font-size:11px;font-weight:700;height:28px;line-height:1;padding:0 10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.section-collapse-tab{border-radius:8px 8px 0 0;bottom:42px;position:fixed;right:8px;z-index:10021}.section-bar-tab{border-radius:8px 8px 0 0;bottom:0;right:0;position:fixed;transform:translate(-50%);z-index:10021}}.editions-panel{position:absolute;right:12px;top:80px;width:220px;max-height:calc(100vh - 150px);background:var(--eu-ink-800);color:var(--eu-text);border:1px solid var(--eu-line);border-radius:10px;box-shadow:0 18px 44px #02061799,inset 0 2px 0 var(--eu-gold);padding:14px 12px 12px;z-index:60;display:flex;flex-direction:column;gap:8px}.editions-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--eu-line);padding-bottom:10px}.editions-header h3{margin:0;color:#fff;font-family:var(--eu-serif);font-size:15px;font-weight:600;letter-spacing:.02em}.close-btn{background:transparent;border:none;border-radius:6px;color:var(--eu-text-soft);cursor:pointer;font-size:16px;transition:background .15s ease,color .15s ease}.close-btn:hover{background:#ffffff10;color:#fff}.editions-list{display:flex;flex-direction:column;gap:8px;overflow:auto}.edition-item{background:var(--eu-ink-600);border:1px solid var(--eu-line);color:var(--eu-text);padding:8px;border-radius:8px;cursor:pointer;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;transition:background .15s ease,border-color .15s ease,transform .15s ease}.edition-item:hover{background:#172033;border-color:var(--eu-gold);transform:translateY(-2px)}.edition-item.active{border-color:var(--eu-gold);box-shadow:0 0 0 2px var(--eu-gold),0 0 16px 2px #c9a44c3a;transform:scale(1.05);background-color:#00000080}.editions-footer{border-top:1px solid var(--eu-line);color:var(--eu-text-soft);font-size:11px;letter-spacing:.14em;margin-top:6px;padding-top:8px;text-align:center;text-transform:uppercase}.edition-thumb-wrap{width:120px;height:160px;display:flex;align-items:center;justify-content:center;background:var(--eu-ink-900);border-radius:6px;overflow:hidden}.edition-thumb{width:100%;height:100%;object-fit:cover;display:block}.edition-thumb.placeholder{width:64px;height:96px;background:linear-gradient(90deg,var(--eu-ink-800),var(--eu-ink-900));border-radius:4px}.edition-spinner{width:28px;height:28px;border-radius:50%;border:3px solid rgba(255,255,255,.08);border-top-color:var(--eu-red);animation:spin .9s linear infinite}@media(max-width:768px){.edition-thumb-wrap{width:84px;height:120px}}@media(max-width:768px){.editions-panel{right:8px;top:64px;width:130px;padding:8px}}.viewer-page{height:100vh;display:flex;flex-direction:column;background-color:var(--eu-ink-700);overflow:hidden;--toolbar-height: 64px;--thumbnail-height: 160px;--sectionbar-height: 56px;padding-top:var(--toolbar-height);padding-bottom:calc(var(--sectionbar-height) + 8px)}.viewer-page,.viewer-page *{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.viewer-page button,.viewer-page input,.viewer-page textarea,.viewer-page select{-webkit-user-select:auto;user-select:auto}.viewer-content{flex:1;display:flex;overflow:hidden}.viewer-main{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;background-color:var(--eu-ink-900);background-image:url(/assets/background-new-CG7ARipO.jpg);background-position:center center;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;padding-bottom:0}.floating-controls{position:fixed;left:16px;top:80px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:calc(100vw - 32px);z-index:80}.float-btn{align-items:center;background:#0d1526e0;border:2px solid transparent;border-radius:50%;box-shadow:0 6px 18px #00000059,inset 0 0 0 1px var(--eu-line);color:#fff;cursor:pointer;direction:ltr;display:inline-flex;font-size:18px;height:44px;justify-content:center;line-height:1;min-width:44px;overflow:visible;padding:0;position:relative;text-align:center;white-space:nowrap;width:44px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.float-btn:hover{background:var(--eu-ink-600);border-color:var(--eu-gold);box-shadow:0 8px 22px #00000073,0 0 14px 1px #c9a44c30,inset 0 0 0 1px transparent;transform:translateY(-2px)}.float-btn:focus-visible{border-color:var(--eu-gold);outline:2px solid #c9a44c80;outline-offset:3px}.reading-mode-toggle{border-color:#ffffff1f;color:var(--eu-text-soft)}.reading-mode-toggle:hover,.reading-mode-toggle.active{background:#c9a44c2e;border-color:var(--eu-gold);color:var(--eu-gold)}.reading-mode-eye{display:inline-flex;font-size:18px;line-height:1}.float-icon{align-items:center;display:inline-flex;justify-content:center;line-height:1;pointer-events:none}.float-tooltip{background:#0d1526f5;border:1px solid var(--eu-gold);border-radius:6px;box-shadow:0 8px 22px #00000073,inset 0 0 0 1px var(--eu-line);color:var(--eu-text);font-size:12px;font-weight:700;left:calc(100% + 10px);line-height:1.2;max-width:min(220px,calc(100vw - 88px));opacity:0;padding:7px 10px;pointer-events:none;position:absolute;top:50%;transform:translate(-4px,-50%);transition:opacity .16s ease,transform .16s ease,visibility .16s ease;visibility:hidden;white-space:nowrap;z-index:2}.float-tooltip:before{border-bottom:5px solid transparent;border-right:5px solid var(--eu-gold);border-top:5px solid transparent;content:"";left:-5px;position:absolute;top:50%;transform:translateY(-50%)}.float-btn:hover .float-tooltip,.float-btn:focus-visible .float-tooltip,.float-btn.tooltip-visible .float-tooltip{opacity:1;transform:translateY(-50%);visibility:visible}.zoom-reset-control{position:fixed;right:16px;top:calc(var(--toolbar-height) + 16px);z-index:950;min-width:52px;height:44px;border-radius:22px;border:2px solid var(--eu-gold);background:#0d1526e6;color:#fff;box-shadow:0 8px 22px #00000073,inset 0 0 0 1px var(--eu-line);cursor:pointer;font-size:14px;font-weight:700;line-height:1;padding:0 12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .18s ease,transform .18s ease}.zoom-reset-control:hover{background:var(--eu-red);transform:translateY(-2px)}.zoom-reset-mobile{display:none}.zoom-reset-desktop{display:inline}.reading-mode-exit-control{align-items:center;background:#0d1526e0;border:2px solid var(--eu-gold);border-radius:50%;box-shadow:0 8px 22px #00000073,inset 0 0 0 1px var(--eu-line);color:var(--eu-gold);cursor:pointer;display:inline-flex;font-size:28px;font-weight:500;height:46px;justify-content:center;line-height:1;padding:0;position:fixed;right:14px;top:14px;width:46px;z-index:1200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .18s ease,color .18s ease,transform .18s ease}.reading-mode-exit-control:hover{background:var(--eu-red);color:#fff;transform:translateY(-1px)}.viewer-page.reading-mode{--toolbar-height: 0px;--thumbnail-height: 0px;--sectionbar-height: 0px;background:#000;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;padding:0;width:100vw}.viewer-page.reading-mode .toolbar,.viewer-page.reading-mode .floating-controls,.viewer-page.reading-mode .thumbnail-carousel,.viewer-page.reading-mode .editions-panel,.viewer-page.reading-mode .section-bar,.viewer-page.reading-mode .page-nav,.viewer-page.reading-mode .zoom-reset-control{display:none!important}.viewer-page.reading-mode .viewer-content,.viewer-page.reading-mode .viewer-main,.viewer-page.reading-mode .page-wrapper,.viewer-page.reading-mode .page-inner{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;max-width:100vw;min-height:0;padding:0;width:100vw}.viewer-page.reading-mode .viewer-main{background-color:#000;background-image:none}.viewer-page.reading-mode .page-wrapper{overflow:hidden}.page-wrapper{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;height:calc(100vh - var(--toolbar-height) - var(--sectionbar-height) - 8px);overflow:hidden;padding-top:0}.page-wrapper.zoomed .page-nav{display:none!important}.page-wrapper.hide-nav .page-nav{display:none}.viewer-main,.page-wrapper,.page-inner{min-width:0}.viewer-page,.viewer-content{overflow-x:hidden}.page-inner{align-items:center;display:flex;flex:1;height:100%;justify-content:center;max-height:100%;max-width:100%;min-width:0;overflow:hidden}.page-nav{background:#0d1526b8;color:#fff;border:2px solid transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 28px #00000080,inset 0 0 0 1px var(--eu-line);width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:24px;margin:0 14px;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;z-index:340}.page-nav:hover:not(:disabled){background:var(--eu-ink-600);border-color:var(--eu-gold);box-shadow:0 12px 32px #0009,0 0 16px 1px #c9a44c30,inset 0 0 0 1px transparent;transform:scale(1.08)}.page-nav:active:not(:disabled){transform:scale(1)}.page-nav{color:transparent;font-size:0}.page-nav:before{border-right:2.5px solid #fff;border-bottom:2.5px solid #fff;border-radius:1px;content:"";display:block;height:13px;width:13px;transition:border-color .18s ease}.page-nav.left:before{transform:rotate(135deg);margin-left:4px}.page-nav.right:before{transform:rotate(-45deg);margin-right:4px}.page-nav:hover:not(:disabled):before{border-color:var(--eu-gold)}.page-nav:disabled{opacity:.4;cursor:not-allowed}.viewer-loading,.viewer-error,.viewer-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;gap:16px}.spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.1);border-top-color:var(--eu-red);border-radius:50%;animation:spin 1s linear infinite}.viewer-error button{padding:10px 20px;background-color:var(--eu-red);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:background-color .2s}.viewer-error button:hover{background-color:var(--eu-red-dark)}.viewer-empty{font-size:18px;color:#a0aec0}@media(hover:none),(pointer:coarse),(max-width:1024px){.zoom-reset-control{align-items:center;display:inline-flex;justify-content:center;min-width:44px;padding:0;width:44px}.zoom-reset-mobile{display:inline;font-size:24px;line-height:1}.zoom-reset-desktop{display:none}}@media(max-width:768px),(max-height:440px)and (orientation:landscape){.floating-controls{position:fixed;left:10px;top:70px;flex-direction:column;width:auto;align-items:center}.float-btn{min-width:40px;width:40px;min-height:40px;height:40px;border-radius:20px;gap:0;justify-content:center;padding:0;font-size:16px}.float-tooltip{left:calc(100% + 8px);max-width:calc(100vw - 70px)}.zoom-reset-control{right:10px;top:calc(var(--toolbar-height) + 10px);min-width:48px;height:40px;border-radius:20px;font-size:13px}.page-nav{display:none!important}.page-inner{max-height:100%}}@keyframes spin{to{transform:rotate(360deg)}}@media(orientation:landscape)and (any-pointer:coarse),(orientation:landscape)and (hover:none),(orientation:landscape)and (max-height:480px){.viewer-page.mobile-landscape{--toolbar-height: 36px;--sectionbar-height: 0px;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;padding-top:var(--toolbar-height);padding-bottom:0}.viewer-page.mobile-landscape .viewer-content,.viewer-page.mobile-landscape .viewer-main,.viewer-page.mobile-landscape .page-wrapper{height:calc(100vh - var(--toolbar-height));height:calc(100dvh - var(--toolbar-height));max-height:calc(100vh - var(--toolbar-height));max-height:calc(100dvh - var(--toolbar-height))}.viewer-page.mobile-landscape .toolbar{--toolbar-height: 36px;height:var(--toolbar-height);min-height:var(--toolbar-height);padding:4px 10px;gap:8px;flex-wrap:nowrap}.viewer-page.mobile-landscape .toolbar-title{font-size:13px;letter-spacing:.04em;white-space:nowrap}.viewer-page.mobile-landscape .toolbar-button{height:28px;min-height:28px;min-width:32px;border-radius:4px;font-size:12px;padding:0 10px;white-space:nowrap}.viewer-page.mobile-landscape .page-wrapper{padding:0}.viewer-page.mobile-landscape .page-inner{height:100%;max-height:100%}.viewer-page.mobile-landscape .floating-controls{left:8px;top:calc(var(--toolbar-height) + 6px);gap:6px}.viewer-page.mobile-landscape .float-btn{min-width:34px;width:34px;min-height:34px;height:34px;border-radius:17px;font-size:14px}.viewer-page.mobile-landscape .reading-mode-eye{font-size:15px}.viewer-page.mobile-landscape .zoom-reset-control{right:8px;top:calc(var(--toolbar-height) + 6px);min-width:36px;width:36px;height:34px;border-radius:17px;font-size:12px;padding:0}.viewer-page.mobile-landscape .page-nav{display:none!important}.viewer-page.mobile-landscape .section-bar.collapsible{height:42px;padding:6px 74px 6px 8px;gap:6px;justify-content:flex-start;overflow-x:auto;z-index:10020}.viewer-page.mobile-landscape .section-bar.collapsible .section-btn{border-radius:6px;font-size:11px;padding:5px 8px;white-space:nowrap}.viewer-page.mobile-landscape .section-collapse-tab,.viewer-page.mobile-landscape .section-bar-tab{background:#0d1526eb;border:1px solid var(--eu-gold);box-shadow:0 8px 20px #00000080,inset 0 0 0 1px var(--eu-line);color:#fff;cursor:pointer;font-size:11px;font-weight:700;height:28px;line-height:1;padding:0 10px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.viewer-page.mobile-landscape .section-collapse-tab{border-radius:8px 8px 0 0;bottom:42px;position:fixed;right:8px;z-index:10021}.viewer-page.mobile-landscape .section-bar-tab{border-radius:8px 8px 0 0;bottom:0;right:0;position:fixed;transform:translate(-50%);z-index:10021}}.viewer-page.mobile-landscape .floating-controls{align-items:center}.viewer-page.mobile-landscape .float-btn{align-items:center;display:inline-flex;gap:0;justify-content:center;line-height:1;overflow:visible;padding:0;text-align:center}.viewer-page.mobile-landscape .reading-mode-eye{align-items:center;display:inline-flex;justify-content:center;line-height:1;width:1em}@media(orientation:landscape)and (min-width:900px)and (min-height:600px){.viewer-page.mobile-landscape .floating-controls{align-items:flex-start;gap:8px;left:16px;max-width:calc(100vw - 32px);top:80px}.viewer-page.mobile-landscape .float-btn{align-items:center;display:inline-flex;font-size:18px;gap:0;height:44px;justify-content:center;line-height:1;min-height:44px;min-width:44px;overflow:visible;padding:0;text-align:center;width:44px}.viewer-page.mobile-landscape .reading-mode-eye{align-items:center;display:inline-flex;font-size:18px;justify-content:center;line-height:1;width:auto}}*{margin:0;padding:0;box-sizing:border-box}:root{--eu-red: #c8102e;--eu-red-dark: #9a0c23;--eu-red-soft: #c8102e26;--eu-gold: #00AEEF;--eu-ink-900: #0a1020;--eu-ink-800: #0d1526;--eu-ink-700: #101a30;--eu-ink-600: #16223c;--eu-line: #243352;--eu-text: #eef3fb;--eu-text-soft: #aebdd6;--eu-serif: "Work Sans", "Times New Roman", serif}#root{width:100%;height:100vh}
