.nweb-empty{padding:14px;background:#fff4f4;border:1px solid #efcaca;border-radius:14px}
.nweb-archive-filter{margin:0 0 18px}
.nweb-filter-bar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:16px 18px;border:1px solid rgba(34,113,177,.14);border-radius:18px;background:rgba(255,255,255,.82);backdrop-filter:blur(8px)}
.nweb-filter-bar label{display:flex;flex-direction:column;gap:6px;font-weight:600}
.nweb-filter-bar select,.nweb-filter-bar input[type="date"]{min-width:180px;padding:10px 12px;border:1px solid #ccd0d4;border-radius:12px;background:#fff}
.nweb-filter-submit,.nweb-clear-filter{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:12px;background:#f6f7f7;color:#1d2327;text-decoration:none;border:1px solid #dcdcde;cursor:pointer;font-weight:600}.nweb-filter-submit{background:#0b5ed7;color:#fff;border-color:#0b5ed7}
.nweb-archive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}
.nweb-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;box-shadow:0 8px 18px rgba(15,23,42,.05)}
.nweb-card-link{display:block;color:inherit;text-decoration:none;height:100%}
.nweb-card-thumb{aspect-ratio:3/4;background:#f1f5f9;overflow:hidden}
.nweb-card-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.nweb-card-thumb-empty{display:flex;align-items:center;justify-content:center;color:#64748b;font-weight:600}
.nweb-card-body{padding:10px}
.nweb-card-body h3{margin:0 0 6px;font-size:15px;line-height:1.3}
.nweb-card-meta{color:#475569;margin:2px 0;font-size:13px}
.nweb-card-cats,.nweb-viewer-cats{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.nweb-card-cat,.nweb-viewer-cat{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:700}

body.nweb-has-viewer #secondary,
body.nweb-has-viewer .widget-area,
body.nweb-has-viewer .sidebar,
body.nweb-has-viewer .right-sidebar{display:none!important}
body.nweb-has-viewer #primary,
body.nweb-has-viewer .content-area,
body.nweb-has-viewer .site-main,
body.nweb-has-viewer .entry-content,
body.nweb-has-viewer .post,
body.nweb-has-viewer .page{width:100%!important;max-width:100%!important}

.nweb-viewer{width:100%;max-width:100%;padding:8px 10px;box-sizing:border-box;background:#f2f2f2;border:1px solid #ddd}
.nweb-viewer-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0 8px;border-bottom:1px solid #d7d7d7}
.nweb-title-box{display:flex;align-items:center;gap:12px;min-width:0}
.nweb-meta-box-compact .nweb-title{margin:0;font-size:22px;line-height:1.1;font-weight:700;color:#222}
.nweb-meta-box-compact .nweb-sub{margin-top:4px;color:#666;font-size:12px;font-weight:600}
.nweb-nav-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.nweb-nav-btn,.nweb-page-tab{height:28px;padding:0 10px;border:1px solid #cfcfcf;background:#fff;color:#333;border-radius:2px;font-size:12px;line-height:26px;cursor:pointer;box-shadow:none}
.nweb-nav-btn:hover,.nweb-page-tab:hover,.nweb-thumb:hover{background:#f7f7f7}
.nweb-indicator{display:inline-flex;align-items:center;justify-content:center;min-width:62px;height:28px;border:1px solid #cfcfcf;background:#fff;color:#444;font-size:12px}
.nweb-page-strip{display:flex;gap:4px;flex-wrap:wrap;margin:8px 0 12px;padding:0}
.nweb-page-tab.active{background:#2b5cab;border-color:#2b5cab;color:#fff}

.nweb-main{display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;align-items:start}
.nweb-sidebar{display:flex;flex-direction:column;gap:10px}
.nweb-thumb{padding:0;border:1px solid #d2d2d2;background:#fff;border-radius:0;cursor:pointer;overflow:hidden}
.nweb-thumb.active{border-color:#ff9f1c;box-shadow:0 0 0 2px #ffd28c inset}
.nweb-thumb-label{display:block;padding:4px 6px;border-bottom:1px solid #e6e6e6;background:#fafafa;font-size:10px;color:#666;text-align:left}
.nweb-thumb-preview{display:block;padding:4px;background:#fff}
.nweb-thumb-canvas{position:relative;display:block;width:72px;height:102px;overflow:hidden;background:#fff;border:1px solid #e0e0e0;transform-origin:top left;transform:scale(calc(72 / 1100))}
.nweb-thumb-section{position:absolute;background-size:cover;background-position:center;background-repeat:no-repeat}

.nweb-stage{min-width:0;width:100%}
.nweb-page{display:none;width:100%}
.nweb-page.active{display:block}
.nweb-canvas-shell{position:relative;width:100%;overflow:auto;background:#d7d7d7;padding:0;box-sizing:border-box;border:1px solid #c7c7c7}
.nweb-canvas{position:relative;width:1100px;height:1550px;margin:0 auto;background:#fff;border:none;box-shadow:none;overflow:hidden;border-radius:0;isolation:isolate;transform-origin:top center}
.nweb-section{position:absolute;background-size:cover;background-position:center;background-repeat:no-repeat;cursor:pointer;border:1px solid transparent;transition:border-color .15s ease, box-shadow .15s ease;z-index:30;overflow:hidden}
.nweb-section::before{content:"";position:absolute;inset:0;border:2px solid #ff8c00;opacity:0;pointer-events:none;box-sizing:border-box}
.nweb-section.is-active-hover::before{opacity:1}
.nweb-section.is-active-hover{box-shadow:0 0 0 1px rgba(255,140,0,.25) inset;z-index:40}

.nweb-popup[hidden]{display:none}
.nweb-popup{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px;box-sizing:border-box}
.nweb-popup.is-open{display:flex}
.nweb-popup-overlay{position:absolute;inset:0;background:rgba(0,0,0,.72)}
.nweb-popup-box{position:relative;z-index:2;width:min(96vw,1200px);max-height:92vh;overflow:auto;background:#fff;padding:14px;border-radius:4px;box-shadow:0 24px 60px rgba(0,0,0,.3)}
.nweb-popup-close{position:absolute;top:8px;right:8px;width:34px;height:34px;border:none;background:#111;color:#fff;font-size:22px;cursor:pointer;border-radius:2px}
.nweb-popup-tools{display:flex;justify-content:center;gap:8px;margin-bottom:10px}
.nweb-zoom-btn{height:30px;padding:0 12px;border:1px solid #ccc;background:#fff;cursor:pointer}
.nweb-popup-image-wrap{max-height:80vh;overflow:auto;text-align:center}
.nweb-popup-image{max-width:100%;transform-origin:center center;transition:transform .2s ease}
body.nweb-popup-open{overflow:hidden}

@media (max-width:900px){
  .nweb-viewer-top{flex-direction:column;align-items:flex-start}
  .nweb-main{grid-template-columns:1fr}
  .nweb-sidebar{flex-direction:row;flex-wrap:wrap}
  .nweb-thumb-canvas{transform:scale(calc(60 / 1100))}
}


/* Hide original single post title/featured section and keep only ePaper viewer */
body.single-nweb_epaper .entry-header,
body.single-nweb_epaper header.entry-header,
body.single-nweb_epaper .post-thumbnail,
body.single-nweb_epaper .wp-post-image,
body.single-nweb_epaper .featured-image,
body.single-nweb_epaper .featured-media,
body.single-nweb_epaper .entry-title,
body.single-nweb_epaper .post-title,
body.single-nweb_epaper .single-post-thumbnail,
body.single-nweb_epaper .inside-article > h1:first-child,
body.single-nweb_epaper article .post-image {
  display:none !important;
}

body.single-nweb_epaper .entry-content,
body.single-nweb_epaper .inside-article,
body.single-nweb_epaper .site-main article {
  padding-top:0 !important;
}

.nweb-viewer{position:relative;z-index:5}
.nweb-popup{align-items:center !important;justify-content:center !important}
.nweb-popup-box{margin:0 auto}


/* Responsive/full-screen fixes */
body.single-nweb_epaper #primary,
body.single-nweb_epaper .content-area,
body.single-nweb_epaper .site-main,
body.single-nweb_epaper .inside-article,
body.single-nweb_epaper article,
body.single-nweb_epaper .entry-content,
body.single-nweb_epaper .post-content,
body.single-nweb_epaper .container,
body.single-nweb_epaper .site-content,
body.single-nweb_epaper .content-wrapper,
body.single-nweb_epaper .ast-container,
body.single-nweb_epaper .wp-block-group {
  width:100% !important;
  max-width:100% !important;
}

body.single-nweb_epaper #secondary,
body.single-nweb_epaper .sidebar,
body.single-nweb_epaper .widget-area,
body.single-nweb_epaper .right-sidebar,
body.single-nweb_epaper .left-sidebar,
body.single-nweb_epaper .site-sidebar {
  display:none !important;
}

.nweb-viewer{width:100%;max-width:100%;box-sizing:border-box}
.nweb-main{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px}
.nweb-stage,.nweb-canvas-shell{width:100%;max-width:100%}
.nweb-canvas-shell{overflow:auto hidden}
.nweb-popup{position:fixed !important; inset:0 !important; width:100vw !important; height:100vh !important; padding:20px !important;}
.nweb-popup-box{width:min(96vw,1280px) !important; max-width:1280px !important; max-height:92vh !important; margin:0 auto !important;}
.nweb-popup-image-wrap{display:flex;align-items:center;justify-content:center;max-height:80vh;overflow:auto}

@media (max-width: 1200px){
  .nweb-viewer-top{gap:10px}
  .nweb-main{grid-template-columns:84px minmax(0,1fr)}
}

@media (max-width: 900px){
  .nweb-viewer{padding:0}
  .nweb-main{grid-template-columns:1fr;gap:12px}
  .nweb-sidebar{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding-bottom:4px}
  .nweb-thumb{min-width:80px;flex:0 0 auto}
  .nweb-page-strip{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}
  .nweb-page-tab{flex:0 0 auto}
  .nweb-popup{padding:12px !important}
  .nweb-popup-box{width:100% !important; max-height:94vh !important}
}

@media (max-width: 640px){
  .nweb-nav-top{width:100%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  .nweb-nav-btn,.nweb-indicator{width:100%;min-width:0;padding:0 6px;font-size:11px}
  .nweb-title{font-size:20px}
  .nweb-thumb-canvas{transform:scale(calc(58 / 1100)) !important}
}


/* Hide theme title/featured area on single ePaper */
body.single-nweb_epaper .entry-title,
body.single-nweb_epaper .post-thumbnail,
body.single-nweb_epaper .featured-image,
body.single-nweb_epaper .wp-post-image,
body.single-nweb_epaper .entry-header,
body.single-nweb_epaper header.entry-header,
body.single-nweb_epaper .single-post-thumbnail{display:none!important}

/* Full-screen popup centered on desktop/laptop */
.nweb-popup{position:fixed!important;inset:0!important;z-index:9999999!important;display:none;align-items:center;justify-content:center;padding:24px;box-sizing:border-box}
.nweb-popup[hidden]{display:none!important}
.nweb-popup.is-open{display:flex!important}
.nweb-popup-overlay{position:absolute;inset:0;background:rgba(0,0,0,.72)}
.nweb-popup-box{position:relative;z-index:1;width:min(94vw,1400px);max-height:92vh;background:#fff;border-radius:12px;box-shadow:0 24px 80px rgba(0,0,0,.38);overflow:auto;margin:0 auto}
.nweb-popup-tools{position:sticky;top:0;display:flex;justify-content:flex-end;gap:8px;padding:12px;background:rgba(255,255,255,.96);border-bottom:1px solid #e5e7eb;z-index:2}
.nweb-popup-close{position:absolute;top:12px;right:12px;width:38px;height:38px;border:none;border-radius:999px;background:#1f2937;color:#fff;font-size:26px;line-height:38px;cursor:pointer;z-index:3}
.nweb-popup-image-wrap{padding:24px;display:flex;align-items:center;justify-content:center;min-height:220px;background:#f8fafc;overflow:auto}
.nweb-popup-image{display:block;max-width:100%;height:auto;transform-origin:center center;transition:transform .18s ease}
.nweb-zoom-btn{min-width:44px;height:36px;padding:0 12px;border:1px solid #d1d5db;background:#fff;border-radius:8px;cursor:pointer;font-weight:700}
body.nweb-popup-open{overflow:hidden!important}

@media (max-width: 900px){
  .nweb-main{grid-template-columns:72px minmax(0,1fr);gap:8px}
  .nweb-popup{padding:12px}
  .nweb-popup-box{width:96vw;max-height:94vh}
  .nweb-popup-image-wrap{padding:12px}
}
