:root{--red:#b91c1c;--red-dark:#991b1b;--line:#e5e7eb;--ink:#1f2937;--muted:#6b7280}
*{box-sizing:border-box}
html,body{margin:0;padding:0;width:100%;max-width:100%;overflow-x:hidden}
body{font-family:'Noto Sans Devanagari',sans-serif;background:#f5f5f4;color:var(--ink)}
button,a{font:inherit}
.brand-title,.brand-mark{font-family:'Yatra One','Playfair Display',serif}
.reader-card{width:100%;max-width:100%;background:#fff;border:1px solid #d1d5db;box-shadow:0 10px 35px rgba(0,0,0,.08);overflow:hidden;border-radius:4px}
.paper-reader{display:grid;grid-template-columns:110px minmax(0,1fr);width:100%;max-width:100%;min-width:0;background:#fff}
.page-rail{border-right:1px solid var(--line);padding:12px;background:#fafafa;min-width:0}
.rail-title{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800;margin-bottom:10px}.rail-title small{color:var(--muted)}
.thumbnails{display:grid;gap:8px;max-height:70vh;overflow:auto}.thumb{border:1px solid #d1d5db;background:#fff;border-radius:4px;padding:3px;cursor:pointer}.thumb img{display:block;width:100%;height:auto}.thumb span{display:block;text-align:center;font-size:9px;color:#6b7280;padding:3px}.thumb.active{border:2px solid var(--red);padding:2px}.thumb.active span{color:var(--red);font-weight:800}.rail-loading{font-size:11px;color:var(--muted);text-align:center;padding:12px}
.paper-stage{position:relative;min-width:0;max-width:100%;background:#f1f2f4;overflow:visible}
.stage-toolbar{position:absolute;z-index:5;top:10px;right:10px;display:flex;align-items:center;gap:2px;padding:4px;background:#fff;border:1px solid #dfe3e8;border-radius:4px;box-shadow:0 5px 16px rgba(0,0,0,.08)}
.stage-toolbar button{height:34px;min-width:34px;padding:0 9px;border:1px solid transparent;border-radius:3px;background:#fff;color:var(--ink);font-weight:800;cursor:pointer}.stage-toolbar button:hover{background:#f5f5f5;border-color:#d9dde3}.stage-toolbar span{min-width:46px;text-align:center;color:#6b7280;font-size:11px}.toolbar-sep{width:1px;height:20px;background:#e5e7eb;margin:0 2px}
.paper-viewport{position:relative;width:100%;max-width:100%;min-width:0;min-height:420px;display:block;padding:58px 14px 18px;overflow:visible;-webkit-overflow-scrolling:touch;overscroll-behavior:auto;touch-action:auto;scroll-behavior:auto}
.paper-viewport>img{display:block;width:100%;max-width:100%;height:auto;margin:0 auto;background:#fff;box-shadow:0 10px 28px rgba(0,0,0,.14);user-select:none;-webkit-user-drag:none;transform:none!important;transition:none!important}
.paper-viewport.is-zoomed{overflow:auto;touch-action:pan-x pan-y}.paper-viewport>img.zoomed{width:auto;max-width:none;margin:0;cursor:grab}.paper-viewport>img.dragging{cursor:grabbing}
.reader-side-nav{position:absolute;z-index:8;top:50%;transform:translateY(-50%);width:42px;height:48px;border:1px solid rgba(255,255,255,.25);background:rgba(55,65,81,.72);color:#fff;border-radius:3px;font-size:34px;line-height:1;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.18);cursor:pointer;user-select:none;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.reader-side-nav:hover{background:rgba(31,41,55,.86)}.reader-side-nav:disabled{opacity:.28;cursor:not-allowed}.reader-side-prev{left:6px}.reader-side-next{right:6px}
.paper-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:12px;background:rgba(255,255,255,.84);z-index:2}.spinner{width:28px;height:28px;border:3px solid #e5e7eb;border-top-color:var(--red);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.paper-empty[hidden]{display:none!important}.paper-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:30px;color:var(--muted)}.paper-empty h2{color:var(--ink);font-size:20px;margin:8px 0 4px}.paper-empty p{font-size:12px;margin:0}.empty-icon{font-size:36px}
.mobile-page-nav{display:none}
.edition-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px}.edition-head h1{margin:4px 0 0;font-size:clamp(25px,3vw,38px);line-height:1.25}.edition-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.eyebrow{font-size:11px;color:var(--red);font-weight:800;letter-spacing:.08em}.edition-controls{display:flex;align-items:center;gap:7px}.round-control{width:44px;height:42px;border:1px solid #d1d5db;border-radius:4px;background:#fff;font-size:25px;font-weight:800}.round-control:disabled{opacity:.35}.page-counter{min-width:86px;height:42px;border:1px solid #dfe3e8;border-radius:4px;background:#fff;display:flex;align-items:center;justify-content:center;gap:6px;color:var(--muted);font-size:13px}.page-counter strong{color:var(--ink);font-size:17px}
.reader-shell{width:min(1500px,100%);margin:0 auto;padding:20px clamp(12px,3vw,42px) 10px}
.below-reader{display:grid;gap:12px}.page-switcher{display:flex;align-items:center;justify-content:center;gap:10px}.page-switcher button{width:48px;height:42px;border:1px solid #d1d5db;border-radius:4px;background:#fff;color:var(--ink);font-size:27px;font-weight:800}.page-switcher button:disabled{opacity:.35}.page-switcher button:not(:disabled):hover{border-color:var(--red);color:var(--red)}
.page-list-card{background:#fff;border:1px solid var(--line);border-radius:4px;padding:12px}.page-list-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.page-list-head b{display:block;font-size:13px}.page-list-head span{display:block;color:#8a9099;font-size:10px;margin-top:2px}.page-list-head>strong{font-size:11px;color:var(--muted);white-space:nowrap}.thumbnails-bottom{display:flex;gap:9px;overflow-x:auto;padding:2px 2px 5px}.thumbnails-bottom .thumb{width:92px;min-width:92px}
.date-drawer{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.28);opacity:0;pointer-events:none;transition:.2s;display:flex;justify-content:flex-end}.date-drawer.open{opacity:1;pointer-events:auto}.date-panel{height:100%;width:min(430px,92vw);background:#fff;padding:22px;overflow:auto;transform:translateX(20px);transition:.22s}.date-drawer.open .date-panel{transform:none}.date-panel-head{display:flex;align-items:flex-start;justify-content:space-between}.date-panel-head h2{margin:3px 0 0;font-size:24px}.date-panel-head button{width:38px;height:38px;border:1px solid var(--line);background:#f7f8fa;border-radius:4px;font-size:24px}.date-help{color:var(--muted);font-size:12px;margin:10px 0 18px}.edition-list{display:grid;gap:9px}.edition-item{width:100%;text-align:left;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:4px;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.edition-item:hover,.edition-item.active{border-color:#ef4444;background:#fff5f5}.edition-item b{font-size:13px}.edition-item small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.edition-arrow{font-size:20px;color:#888}
.recent-editions{width:min(1500px,100%);margin:8px auto 0;padding:8px clamp(12px,3vw,42px) 28px}.recent-head{padding:0 2px 14px}.recent-head h2{margin:5px 0 2px;font-size:clamp(21px,2.6vw,29px)}.recent-head p{margin:0;color:var(--muted);font-size:12px}.recent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.recent-card{display:flex;gap:12px;align-items:center;text-align:left;border:1px solid var(--line);background:#fff;border-radius:4px;padding:10px;cursor:pointer;color:var(--ink);width:100%}.recent-card:hover{border-color:#fca5a5}.recent-thumb{width:66px;height:84px;flex:0 0 66px;background:#f0f1f3;border-radius:4px;overflow:hidden;display:flex;align-items:flex-start;justify-content:center}.recent-thumb img{width:100%;height:auto;display:block}.recent-card b{display:block;font-size:12px;line-height:1.45}.recent-card small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.recent-arrow{margin-left:auto;color:#888;font-size:19px}
.zoom-view{position:fixed;inset:0;z-index:9998;display:none;overflow:hidden;background:#111}.zoom-view.open{display:block}.zoom-view-backdrop{position:absolute;inset:-30px;background-position:center;background-size:cover;background-repeat:no-repeat;filter:blur(22px);transform:scale(1.08);opacity:.55;background-color:#202124}.zoom-view-backdrop:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.48)}.zoom-view-topbar{position:absolute;z-index:4;left:0;right:0;top:0;height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;background:rgba(255,255,255,.96);border-bottom:1px solid #e5e7eb}.zoom-view-title{display:flex;align-items:center;gap:10px;font-size:12px}.zoom-view-title span{color:var(--muted);font-weight:700}.zoom-view-actions{display:flex;gap:5px}.zoom-view-actions button{width:38px;height:38px;border:1px solid #d1d5db;background:#fff;color:var(--ink);border-radius:4px;font-size:22px;font-weight:800}.zoom-view-stage{position:absolute;inset:54px 0 0;z-index:2;display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:18px 56px 28px;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.zoom-view-stage img{display:block;width:auto;height:auto;max-width:min(92vw,1200px);max-height:none;background:#fff;box-shadow:0 10px 35px rgba(0,0,0,.45);user-select:none;-webkit-user-drag:none}.zoom-view-nav{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:44px;height:52px;border:1px solid rgba(255,255,255,.25);background:rgba(55,65,81,.78);color:#fff;border-radius:3px;font-size:35px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.22)}.zoom-view-nav:hover{background:rgba(31,41,55,.92)}.zoom-view-nav:disabled{opacity:.3}.zoom-view-prev{left:10px}.zoom-view-next{right:10px}
.fullscreen-reader{position:fixed;inset:0;z-index:9999;background:#111;display:none;flex-direction:column}.fullscreen-reader.open{display:flex}.fullscreen-bar{height:56px;flex:0 0 56px;display:flex;align-items:center;justify-content:center;position:relative;background:#fff;border-bottom:1px solid #e5e7eb}.fs-center{display:flex;align-items:center;gap:10px;font-size:12px}.fs-center span{color:var(--muted);font-weight:700}.fs-actions{position:absolute;right:10px;display:flex;gap:5px}.fs-nav,.fs-download,.fs-close{width:38px;height:38px;border:1px solid #d1d5db;background:#fff;color:var(--ink);border-radius:4px;font-size:22px;font-weight:800}.fs-nav:disabled{opacity:.35}.fullscreen-stage{flex:1;min-height:0;overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:14px;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.fullscreen-stage img{display:block;width:auto;height:auto;max-width:100%;object-fit:contain;background:#fff;box-shadow:0 10px 40px rgba(0,0,0,.4);user-select:none;-webkit-user-drag:none}
.reader-footer{display:flex;justify-content:space-between;color:#60636d;font-size:10px;padding:10px clamp(14px,3vw,42px) 18px}
@media(min-width:801px){.thumbnails-bottom{display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));overflow:visible}.thumbnails-bottom .thumb{width:auto;min-width:0}}
@media(max-width:800px){
 .reader-shell{padding:16px 8px 8px}.edition-head{align-items:flex-start;margin-bottom:10px}.edition-head h1{font-size:22px}.edition-head p{font-size:11px}.edition-controls{display:none}
 .paper-reader{display:block;min-height:0}.page-rail{display:none}.paper-stage{width:100%;max-width:100%;overflow:visible}
 .paper-viewport{width:100%;max-width:100%;min-height:0;height:auto;padding:58px 8px 16px;overflow:visible;touch-action:auto;}
 .paper-viewport>img{width:100%;max-width:100%;height:auto;margin:0;box-shadow:0 8px 24px rgba(0,0,0,.13)}
 .paper-viewport.is-zoomed{height:calc(100vh - 150px);max-height:calc(100vh - 150px);overflow:auto;touch-action:pan-x pan-y}.paper-viewport>img.zoomed{width:auto;max-width:none;margin:0}
 .reader-side-nav{width:36px;height:48px;font-size:30px;top:50%;}.reader-side-prev{left:4px}.reader-side-next{right:4px}
 .zoom-view-topbar{height:52px}.zoom-view-title b{display:none}.zoom-view-stage{inset:52px 0 0;padding:10px 46px 22px}.zoom-view-stage img{max-width:100%;box-shadow:0 8px 26px rgba(0,0,0,.4)}.zoom-view-nav{width:38px;height:46px;font-size:31px}.zoom-view-prev{left:5px}.zoom-view-next{right:5px}.zoom-view-actions button{width:36px;height:36px}
 .stage-toolbar{top:7px;right:7px;max-width:calc(100% - 14px)}.stage-toolbar button{height:32px;min-width:31px;padding:0 7px}.stage-toolbar span{min-width:40px}.stage-toolbar .toolbar-sep{display:none}
 .mobile-page-nav{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 9px;border-top:1px solid #e5e7eb;background:#fff}.mobile-page-nav button{border:1px solid #d1d5db;background:#fff;color:var(--ink);border-radius:4px;padding:6px 9px;font-size:11px;font-weight:800}.mobile-page-nav span{font-size:11px;color:var(--muted)}
 .below-reader{margin-top:12px}.page-switcher button{width:46px;height:42px}.page-counter{height:42px;min-width:84px}.page-list-card{padding:11px}.page-list-head span{max-width:230px}.thumbnails-bottom .thumb{width:88px;min-width:88px}.recent-editions{padding-top:4px}.recent-grid{grid-template-columns:1fr}.date-panel{padding:18px;width:min(420px,94vw)}.fs-center b{display:none}.fs-download{display:none}.fullscreen-bar{height:54px;flex-basis:54px}.fullscreen-stage{padding:10px 8px 24px}.fullscreen-stage img{max-width:100%;box-shadow:none}
}
@media(max-width:430px){.stage-toolbar #fit-btn{display:inline-block}.stage-toolbar button{min-width:29px;padding:0 6px}.stage-toolbar span{min-width:38px}.recent-thumb{width:62px;flex-basis:62px;height:80px}}

/* V28 public reader polish */
.reader-topbar{height:70px;background:rgba(255,255,255,.96);border-bottom:1px solid #e3e5e8;position:sticky;top:0;z-index:40;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.topbar-inner{height:100%;width:min(1500px,100%);margin:0 auto;padding:0 clamp(14px,3vw,42px);display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand-mark{font-size:29px;font-weight:700;letter-spacing:-.03em;color:#171717;text-decoration:none;white-space:nowrap}.brand-mark b{color:#b91c1c}
.reader-actions{display:flex;align-items:center;gap:7px}.tool-btn{height:42px;min-width:74px;border:1px solid #d6d9de;border-radius:4px;background:#fff;color:#20252c;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;text-decoration:none;font-size:12px;font-weight:800;cursor:pointer}.tool-btn:hover{border-color:#b91c1c;color:#991b1b;background:#fffafa}.tool-icon{font-size:18px;line-height:1}
.reader-breadcrumb{display:flex;gap:8px;align-items:center;color:#858b93;font-size:10px;margin:2px 0 12px}.reader-breadcrumb a{color:#858b93;text-decoration:none}.reader-breadcrumb strong{color:#b91c1c}
.reader-shell{padding-top:18px}.edition-heading{min-width:0}.edition-head h1{letter-spacing:-.025em}.edition-head{padding:0 2px 2px}
.paper-reader{box-shadow:0 10px 35px rgba(17,24,39,.08);border:1px solid #d9dde2}.paper-stage{background:#e9ebee}.reader-canvas-bg{position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.95),rgba(233,235,238,.96) 58%,rgba(222,225,229,.98));pointer-events:none}
.paper-viewport{z-index:1}.stage-toolbar{top:12px;right:12px;box-shadow:0 8px 22px rgba(17,24,39,.12)}
.reader-side-nav{z-index:9}.paper-viewport>img{position:relative;z-index:2}
.mobile-page-nav{position:relative;z-index:4}
.below-reader{padding-top:2px}.page-switcher{background:#fff;border:1px solid #e1e4e8;padding:8px 10px}.page-switcher button{width:auto;min-width:72px;padding:0 13px;font-size:12px}.page-switcher .page-counter{border:0;background:transparent}
.page-list-card{box-shadow:0 5px 20px rgba(17,24,39,.04)}
.recent-editions{padding-top:18px}.recent-head{border-bottom:1px solid #e1e4e8;margin-bottom:12px}.recent-card{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.recent-card:hover{transform:translateY(-1px);box-shadow:0 7px 20px rgba(17,24,39,.07)}
.zoom-view{background:#121416}.zoom-view-backdrop{opacity:.65}.zoom-view-topbar{box-shadow:0 4px 18px rgba(0,0,0,.15)}
@media(max-width:800px){.reader-topbar{height:62px}.topbar-inner{padding:0 10px}.brand-mark{font-size:25px}.reader-actions{gap:4px}.tool-btn{height:38px;min-width:40px;padding:0 8px;font-size:10px}.tool-btn .tool-icon{font-size:16px}.login-tool{min-width:40px}.reader-shell{padding-top:13px}.reader-breadcrumb{margin-bottom:8px}.edition-heading .eyebrow{font-size:9px}.edition-head h1{font-size:22px}.reader-canvas-bg{background:linear-gradient(180deg,#eef0f2,#e5e7ea)}.stage-toolbar{top:8px;right:8px}.page-switcher{padding:7px}.page-switcher button{min-width:70px}.recent-editions{padding-top:12px}}
@media(max-width:430px){.brand-mark{font-size:22px}.tool-btn span:not(.tool-icon){display:none}.tool-btn{min-width:36px;padding:0 8px}.edition-head h1{font-size:20px}}
/* V29 fullscreen zoom controls */
.fs-actions{align-items:center}
.fs-zoom{width:38px;height:38px;border:1px solid #d1d5db;background:#fff;color:var(--ink);border-radius:4px;font-size:22px;font-weight:800;cursor:pointer}
.fs-zoom-value{height:38px;min-width:48px;display:flex;align-items:center;justify-content:center;border:1px solid #e1e4e8;background:#fafafa;color:#4b5563;font-size:11px;font-weight:800}
.fs-fit{height:38px;min-width:48px;border:1px solid #d1d5db;background:#fff;color:var(--ink);border-radius:4px;font-size:11px;font-weight:800;cursor:pointer}
.fs-zoom:hover,.fs-fit:hover{background:#f5f5f5;border-color:#b91c1c}
.fullscreen-stage{overscroll-behavior:contain}
.fullscreen-stage img.fs-zoomed{max-width:none;cursor:grab}
@media(max-width:800px){.fs-actions{gap:3px}.fs-zoom,.fs-fit{width:34px;height:34px;min-width:34px;padding:0}.fs-zoom-value{height:34px;min-width:40px;font-size:10px}.fs-download{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center}.fullscreen-bar{padding:0 5px}.fs-actions{right:5px}.fs-nav{width:34px;height:34px}.fs-center{font-size:10px}}
@media(max-width:430px){.fs-center{display:none}.fs-actions{left:50%;right:auto;transform:translateX(-50%)}.fullscreen-bar>#fs-prev{position:absolute;left:5px}.fs-zoom,.fs-fit,.fs-download,.fs-close,.fs-nav{width:32px;height:32px;min-width:32px}.fs-zoom-value{height:32px;min-width:38px}}

/* Lokmadat integration polish */
.epaper-section .reader-shell{border:1px solid #d3d5d8;background:#f0f1f3}
.epaper-section .reader-topline{display:flex;justify-content:space-between;gap:18px;align-items:center;background:#fff;border:1px solid #d8d8d8;border-bottom:0;padding:18px 20px}
.epaper-section .reader-kicker{display:block;color:#b40018;font-weight:900;font-size:12px}
.epaper-section .reader-topline h2{margin:4px 0;font-size:25px}.epaper-section .reader-topline p{margin:0;color:#777;font-size:13px}
.date-button{border:1px solid #cfd1d4;background:#fff;padding:11px 14px;font-weight:800;cursor:pointer}.date-button:hover{border-color:#b40018;color:#b40018}
@media(max-width:700px){.epaper-section .reader-topline{align-items:flex-start}.epaper-section .reader-topline h2{font-size:20px}.date-button{font-size:12px;padding:9px}.epaper-section .page-rail{display:none}}


/* V30 reader controls cleanup
   - One page-navigation row only (the below-reader row)
   - Clean fullscreen controls
   - Reliable two-finger pinch zoom
*/
.mobile-page-nav{display:none!important}

.fullscreen-reader{background:#101214}
.fullscreen-bar{
  height:54px;flex:0 0 54px;display:grid;grid-template-columns:42px 1fr 42px 42px;
  align-items:center;gap:6px;padding:0 8px;background:rgba(255,255,255,.98);
  border-bottom:1px solid #dfe3e8;z-index:20
}
.fullscreen-bar .fs-nav,
.fullscreen-bar .fs-close{
  width:38px;height:38px;min-width:38px;border:1px solid #d1d5db;
  border-radius:5px;background:#fff;color:var(--ink);font-size:24px;
  font-weight:800;display:flex;align-items:center;justify-content:center;cursor:pointer
}
.fullscreen-bar .fs-nav:disabled{opacity:.35}
.fullscreen-bar .fs-center{
  min-width:0;text-align:center;display:flex;align-items:center;justify-content:center;
  gap:10px;font-size:12px;white-space:nowrap;overflow:hidden
}
.fullscreen-bar .fs-center b{overflow:hidden;text-overflow:ellipsis}
.fullscreen-bar .fs-center span{color:var(--muted);font-weight:800}
.fullscreen-stage{
  position:relative;flex:1;min-height:0;overflow:auto;display:flex;align-items:flex-start;
  justify-content:center;padding:16px 12px 100px;-webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;touch-action:pan-x pan-y;scroll-behavior:auto
}
.fullscreen-stage img{
  display:block;width:auto;height:auto;max-width:100%;object-fit:contain;background:#fff;
  box-shadow:0 10px 40px rgba(0,0,0,.42);user-select:none;-webkit-user-drag:none;
  transform-origin:top center;flex:none
}
.fullscreen-stage img.fs-zoomed{max-width:none;cursor:grab}
.fs-control-dock{
  position:absolute;left:50%;bottom:16px;transform:translateX(-50%);
  z-index:30;display:flex;align-items:center;gap:5px;padding:7px;
  background:rgba(255,255,255,.97);border:1px solid #d8dce1;border-radius:7px;
  box-shadow:0 10px 28px rgba(0,0,0,.25)
}
.fs-control-dock .fs-zoom,
.fs-control-dock .fs-fit,
.fs-control-dock .fs-download{
  width:40px;height:40px;min-width:40px;border:1px solid #d1d5db;border-radius:5px;
  background:#fff;color:var(--ink);font-weight:800;display:flex;align-items:center;
  justify-content:center;cursor:pointer
}
.fs-control-dock .fs-zoom{font-size:23px}
.fs-control-dock .fs-fit{font-size:12px}
.fs-control-dock .fs-download{font-size:21px}
.fs-control-dock .fs-zoom-value{
  width:54px;height:40px;min-width:54px;display:flex;align-items:center;justify-content:center;
  border:1px solid #e1e4e8;border-radius:5px;background:#fafafa;color:#4b5563;
  font-size:11px;font-weight:800
}
.fs-control-dock button:hover{border-color:#b91c1c}
@media(max-width:600px){
  .fullscreen-bar{grid-template-columns:38px 1fr 38px 38px;height:50px;flex-basis:50px;padding:0 6px;gap:3px}
  .fullscreen-bar .fs-nav,.fullscreen-bar .fs-close{width:34px;height:34px;min-width:34px;font-size:22px}
  .fullscreen-bar .fs-center{font-size:10px;gap:6px}
  .fullscreen-stage{padding:10px 8px 88px}
  .fs-control-dock{bottom:12px;padding:6px;gap:4px}
  .fs-control-dock .fs-zoom,.fs-control-dock .fs-fit,.fs-control-dock .fs-download{width:38px;height:38px;min-width:38px}
  .fs-control-dock .fs-zoom-value{width:48px;min-width:48px;height:38px}
}
@media(max-width:390px){
  .fullscreen-bar .fs-center b{display:none}
  .fs-control-dock .fs-download{display:none}
}

/* Fullscreen zoom/pan fix: make the stage a true 2-axis scrolling surface. */
.fullscreen-stage{
  display:block;
  overflow:auto;
  width:100%;
  box-sizing:border-box;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  touch-action:pan-x pan-y;
}
.fullscreen-stage img{
  position:relative;
  display:block;
  flex:none;
}
.fullscreen-stage.zoomed-stage{
  overflow:auto;
  touch-action:pan-x pan-y;
}
.fullscreen-stage.zoomed-stage img{
  cursor:grab;
}
.fullscreen-stage.zoomed-stage img:active{
  cursor:grabbing;
}

/* Requested e-paper option-box alignment only */
.epaper-toolbar{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex-wrap:nowrap;
  padding:8px;
  box-sizing:border-box;
}
.epaper-toolbar > *{
  box-sizing:border-box;
}
.epaper-toolbar button{
  min-width:42px;
  height:42px;
  padding:0 10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  white-space:nowrap;
  border:1px solid #d4d8dd;
  border-radius:6px;
  background:#fff;
}
.epaper-toolbar .zoom-value{
  min-width:56px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 8px;
  border:1px solid #e0e3e7;
  border-radius:6px;
  background:#fafafa;
}
@media(max-width:600px){
  .epaper-toolbar{gap:5px;padding:7px}
  .epaper-toolbar button{min-width:40px;height:40px;padding:0 8px}
  .epaper-toolbar .zoom-value{min-width:52px;height:40px}
}

/* Requested e-paper toolbar polish only */
.stage-toolbar{
  gap:6px;
  padding:6px;
  border-radius:7px;
  align-items:center;
}
.stage-toolbar button{
  height:40px;
  min-width:42px;
  padding:0 10px;
  border:1px solid #d1d5db;
  border-radius:6px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  line-height:1;
  white-space:nowrap;
  background:#fff;
}
.stage-toolbar #zoom-value{
  min-width:58px;
  height:40px;
  padding:0 8px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  border:1px solid #e1e4e8;
  border-radius:6px;
  background:#fafafa;
  line-height:1;
}
.stage-toolbar #zoom-view-btn{
  min-width:72px;
  font-size:13px;
  gap:5px;
}
.stage-toolbar #fit-btn{
  min-width:62px;
  font-size:13px;
}
.stage-toolbar #download-btn,
.stage-toolbar #fullscreen-btn{
  min-width:42px;
  width:42px;
  padding:0;
  font-size:20px;
}
.stage-toolbar .toolbar-sep{
  height:26px;
  margin:0 1px;
}
@media(max-width:600px){
  .stage-toolbar{
    gap:5px;
    padding:6px;
  }
  .stage-toolbar button{
    height:38px;
    min-width:40px;
    padding:0 8px;
    border-radius:6px;
  }
  .stage-toolbar #zoom-value{
    min-width:54px;
    height:38px;
  }
  .stage-toolbar #zoom-view-btn{min-width:68px}
  .stage-toolbar #fit-btn{min-width:58px}
  .stage-toolbar #download-btn,
  .stage-toolbar #fullscreen-btn{
    width:40px;
    min-width:40px;
  }
}

/* v15 — keep the previous reader width; only reduce the gap between toolbar and newspaper. */
@media(max-width:700px){
  .stage-toolbar{
    margin-bottom:2px !important;
  }
  .paper-stage{
    padding-top:2px !important;
  }
}

/* v16 — only the remaining zoom/download/fullscreen controls are balanced. */
@media(max-width:700px){
  .stage-toolbar{
    left:8px !important;
    right:8px !important;
    width:auto !important;
    justify-content:space-between !important;
    gap:6px !important;
    box-sizing:border-box !important;
  }
  .stage-toolbar #zoom-out,
  .stage-toolbar #zoom-in,
  .stage-toolbar #download-btn,
  .stage-toolbar #fullscreen-btn{
    flex:1 1 0;
    min-width:0;
    width:auto;
    max-width:none;
  }
  .stage-toolbar #zoom-value{
    flex:1 1 0;
    min-width:0;
  }
}

/* v17 — small visual separation between toolbar and newspaper only */
.stage-toolbar{
  margin-bottom:8px !important;
}
@media(max-width:600px){
  .stage-toolbar{
    margin-bottom:8px !important;
  }
}

/* v18 — actual small gap between toolbar and newspaper */
@media(max-width:700px){
  .paper-viewport{
    padding-top:64px !important;
  }
}

/* v19 — polished fullscreen reader ONLY */
.fullscreen-reader{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  flex-direction:column;
  background:#101214;
}
.fullscreen-reader.open{display:flex}

.fullscreen-bar{
  position:relative;
  z-index:50;
  flex:0 0 auto;
  width:100%;
  min-height:58px;
  box-sizing:border-box;
  padding:8px 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  background:rgba(255,255,255,.98);
  border-bottom:1px solid #d9dde2;
  box-shadow:0 3px 14px rgba(0,0,0,.16);
}
.fullscreen-bar .fs-nav,
.fullscreen-bar .fs-close,
.fullscreen-bar .fs-zoom,
.fullscreen-bar .fs-download{
  flex:0 0 auto;
  height:42px;
  min-width:42px;
  box-sizing:border-box;
  border:1px solid #cfd4da;
  border-radius:7px;
  background:#fff;
  color:#202832;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  cursor:pointer;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.fullscreen-bar .fs-nav,
.fullscreen-bar .fs-close{font-size:25px;font-weight:800}
.fullscreen-bar .fs-zoom{font-size:24px;font-weight:800}
.fullscreen-bar .fs-download{font-size:23px;font-weight:800}
.fullscreen-bar button:hover{border-color:#b40018}
.fullscreen-bar button:disabled{opacity:.35;cursor:default}

.fullscreen-bar .fs-center{
  min-width:66px;
  max-width:180px;
  height:42px;
  padding:0 8px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
}
.fullscreen-bar .fs-center b{
  max-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
.fullscreen-bar .fs-center span{
  color:#303842;
  font-size:13px;
  font-weight:800;
}
.fs-zoom-group{
  display:flex;
  align-items:center;
  gap:4px;
  flex:0 0 auto;
  height:42px;
  padding:0;
}
.fs-zoom-group .fs-zoom-value{
  width:58px;
  min-width:58px;
  height:42px;
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d7dbe0;
  border-radius:7px;
  background:#fafafa;
  color:#4b5563;
  font-size:12px;
  font-weight:800;
}

.fullscreen-stage{
  position:relative;
  flex:1 1 auto;
  min-height:0;
  width:100%;
  box-sizing:border-box;
  display:block;
  overflow:auto;
  padding:18px 14px 24px;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  touch-action:pan-x pan-y;
}
.fullscreen-stage img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  margin:0 auto;
  object-fit:contain;
  background:#fff;
  box-shadow:0 8px 32px rgba(0,0,0,.42);
  user-select:none;
  -webkit-user-drag:none;
  transform-origin:top center;
}
.fullscreen-stage img.fs-zoomed{
  max-width:none;
  cursor:grab;
}
.fullscreen-stage img.fs-zoomed:active{cursor:grabbing}

@media(max-width:700px){
  .fullscreen-bar{
    min-height:54px;
    padding:6px 7px;
    gap:5px;
    justify-content:space-between;
  }
  .fullscreen-bar .fs-nav,
  .fullscreen-bar .fs-close,
  .fullscreen-bar .fs-zoom,
  .fullscreen-bar .fs-download{
    width:38px;
    min-width:38px;
    height:38px;
    border-radius:7px;
  }
  .fullscreen-bar .fs-center{
    min-width:48px;
    max-width:54px;
    height:38px;
    padding:0 2px;
  }
  .fullscreen-bar .fs-center b{display:none}
  .fullscreen-bar .fs-center span{font-size:12px}
  .fs-zoom-group{height:38px;gap:3px}
  .fs-zoom-group .fs-zoom-value{
    width:48px;
    min-width:48px;
    height:38px;
    font-size:11px;
  }
  .fullscreen-stage{
    padding:14px 8px 24px;
  }
}

@media(max-width:390px){
  .fullscreen-bar{gap:3px;padding-left:5px;padding-right:5px}
  .fullscreen-bar .fs-nav,
  .fullscreen-bar .fs-close,
  .fullscreen-bar .fs-zoom,
  .fullscreen-bar .fs-download{
    width:34px;
    min-width:34px;
    height:34px;
  }
  .fullscreen-bar .fs-center{min-width:42px;max-width:45px}
  .fullscreen-bar .fs-center span{font-size:11px}
  .fs-zoom-group{height:34px}
  .fs-zoom-group .fs-zoom-value{
    width:42px;
    min-width:42px;
    height:34px;
    font-size:10px;
  }
}
