/* News Hub E-Paper */
.wph-ep-hero{text-align:center;margin-bottom:28px}
.wph-ep-hero-title{margin:0 0 6px;color:var(--wph-text)}
.wph-ep-hero p{margin:0;color:var(--wph-text-muted)}
.wph-ep-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}
.wph-ep-card{background:#fff;border:1px solid var(--wph-border);border-radius:10px;overflow:hidden;transition:box-shadow .2s,transform .2s}
.wph-ep-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.1);transform:translateY(-2px)}
.wph-ep-card-link{display:block;text-decoration:none;color:inherit}
.wph-ep-card-thumb{aspect-ratio:3/4;background:#f1f3f5;overflow:hidden;position:relative}
.wph-ep-card-thumb img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.wph-ep-card-fallback{height:100%;display:flex;align-items:center;justify-content:center;font-size:48px;color:var(--wph-primary)}
.wph-ep-card-body{padding:12px 14px}
.wph-ep-card-body h3{margin:0 0 4px;font-size:15px;line-height:1.35;color:var(--wph-text)}
.wph-ep-card-date{font-size:13px;color:var(--wph-text-muted)}
.wph-ep-block{margin:30px 0}
.wph-ep-block-title{margin:0 0 14px}
.wph-ep-more{display:inline-block;margin-top:14px;color:var(--wph-primary);font-weight:600;text-decoration:none}
.wph-ep-head{margin-bottom:16px}
.wph-ep-head h1{margin:0 0 4px;color:var(--wph-text)}
.wph-ep-viewer{border:1px solid var(--wph-border);border-radius:10px;overflow:hidden;background:#fff}
.wph-ep-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;background:#f8f9fa;border-bottom:1px solid var(--wph-border);position:sticky;top:0;z-index:5}
.wph-ep-toolbar button,.wph-ep-dl{border:1px solid var(--wph-border);background:#fff;color:var(--wph-text);border-radius:6px;padding:7px 12px;cursor:pointer;font:inherit;text-decoration:none;line-height:1}
.wph-ep-toolbar button:hover,.wph-ep-dl:hover{background:var(--wph-primary);color:#fff;border-color:var(--wph-primary)}
.wph-ep-pageinfo input{width:60px;padding:6px;border:1px solid var(--wph-border);border-radius:6px;text-align:center;font:inherit}
.wph-ep-sep{flex:1}
.wph-ep-stage{padding:12px;background:#e9ecef;text-align:center;box-sizing:border-box}
.wph-ep-stage.is-zoom{overflow-x:auto}
.wph-ep-stage canvas{display:block;margin:0 auto;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.2);max-width:none}
.wph-ep-loading{padding:40px;color:var(--wph-text-muted)}
@media (max-width:600px){.wph-ep-grid{grid-template-columns:repeat(2,1fr);gap:12px}.wph-ep-sep{display:none}}

.wph-ep-thumb-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;background:#fff;opacity:0;transition:opacity .3s}
.wph-ep-thumb-canvas.is-ready{opacity:1}

/* ---- page wrapper + clips overlay ---- */
.wph-ep-pagewrap{position:relative;display:inline-block;line-height:0;max-width:none}
.wph-ep-stage canvas{margin:0}
.wph-ep-clips{position:absolute;inset:0;pointer-events:none}
.wph-ep-clip{position:absolute;display:block;pointer-events:auto;cursor:pointer;box-sizing:border-box;border:0;background:transparent;transition:background .15s,box-shadow .15s}
.wph-ep-clip:hover{background:rgba(214,0,42,.14);box-shadow:inset 0 0 0 2px var(--wph-primary)}
.wph-ep-cliphint{font-size:13px;color:var(--wph-text-muted)}
.wph-ep-cliphint i{color:var(--wph-primary)}

/* ---- thumbnail strip ---- */
.wph-ep-strip{position:relative;display:flex;gap:10px;overflow-x:auto;padding:12px;background:#f8f9fa;border-top:1px solid var(--wph-border);scroll-behavior:smooth}
.wph-ep-thumb{flex:0 0 auto;width:84px;padding:4px;border:2px solid transparent;border-radius:6px;background:#fff;cursor:pointer;text-align:center;font:inherit}
.wph-ep-thumb canvas{display:block;width:100%;height:auto;min-height:100px;background:#eef0f2}
.wph-ep-thumb span{display:block;margin-top:4px;font-size:12px;color:var(--wph-text-muted)}
.wph-ep-thumb:hover{border-color:var(--wph-border)}
.wph-ep-thumb.is-active{border-color:var(--wph-primary)}
.wph-ep-thumb.is-active span{color:var(--wph-primary);font-weight:700}

/* ---- clip modal ---- */
body.wph-ep-modal-open{overflow:hidden}
.wph-ep-modal{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.75);display:flex;align-items:center;justify-content:center;padding:16px}
.wph-ep-modal[hidden]{display:none}
.wph-ep-modal-box{position:relative;background:#fff;border-radius:12px;max-width:960px;width:100%;max-height:94vh;overflow:auto;padding:18px 18px 16px}
.wph-ep-modal-close{position:absolute;top:8px;right:10px;border:0;background:transparent;font-size:30px;line-height:1;cursor:pointer;color:var(--wph-text)}
.wph-ep-modal-title{margin:0 36px 12px 0;font-size:20px;line-height:1.35;color:var(--wph-text)}
.wph-ep-modal-body{text-align:center;background:#f1f3f5;border-radius:8px;padding:8px}
.wph-ep-modal-canvas{max-width:100%;height:auto;background:#fff}
.wph-ep-modal-loading{padding:40px;color:var(--wph-text-muted)}
.wph-ep-modal-actions{display:flex;flex-wrap:nowrap;gap:8px;margin-top:14px}
.wph-ep-share{display:flex;flex:1 1 0;min-width:0;align-items:center;justify-content:center;height:44px;padding:0;border:0;border-radius:8px;color:#fff;font-size:18px;line-height:1;cursor:pointer;text-decoration:none}
.wph-ep-share.wa{background:#25d366}
.wph-ep-share.fb{background:#1877f2}
.wph-ep-share.tw{background:#111}
.wph-ep-share.li{background:#0a66c2}
.wph-ep-share.tg{background:#229ed9}
.wph-ep-share.mail{background:#ea4335}
.wph-ep-share.copy{background:#6c757d}
.wph-ep-share.print{background:#495057}
.wph-ep-share.dl{background:var(--wph-primary)}
.wph-ep-share:hover{opacity:.88;color:#fff}
@media (max-width:600px){.wph-ep-thumb{width:68px}.wph-ep-modal-box{padding:14px 12px}.wph-ep-modal-actions{gap:5px}.wph-ep-share{height:40px;font-size:16px;border-radius:6px}}
