/* Place after brief.css. Page-level pinch zoom remains enabled. */
#videoDialog{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}
#evidencePlayer{max-height:52vh;max-height:52dvh}
.reader-media-tools{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 6px}
.reader-media-tools button,.reader-image-viewer button{min-height:44px;padding:8px 13px;border:1px solid #668894;border-radius:8px;background:#193c48;color:#edf7f7;font:inherit;font-size:.9rem;line-height:1.4;cursor:pointer;touch-action:manipulation}
.reader-media-tools button:focus-visible,.reader-image-viewer button:focus-visible,.reader-image-stage:focus-visible{outline:3px solid #f4ce82;outline-offset:3px}
.reader-media-tools button:disabled,.reader-image-viewer button:disabled{opacity:.45;cursor:default}
.reader-media-status{font-size:.87rem;line-height:1.6;margin:0 0 14px;color:#b8cbd0;overflow-wrap:anywhere}
.reader-media-status:empty{display:none}
.reader-media-status.reader-error{color:#f4ce82}
body.reader-viewer-open{overflow:hidden}
.reader-dialog-backdrop{position:fixed;inset:0;z-index:59;background:rgba(0,9,16,.88)}
.reader-dialog-backdrop.reader-viewer-backdrop{z-index:69}
.reader-fallback-dialog{position:fixed;inset:auto;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;z-index:60;box-sizing:border-box}
.reader-fallback-dialog:not([open]){display:none}
.reader-fallback-dialog[open]{display:block}
.reader-image-viewer{color:#eef6f7;background:#081b25;border:1px solid #658793;border-radius:12px;padding:14px;width:min(1200px,calc(100% - 16px));height:calc(100vh - 24px);height:calc(100dvh - 24px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow:hidden;box-sizing:border-box;gap:10px}
.reader-image-viewer[open]{display:flex;flex-direction:column}
.reader-image-viewer.reader-fallback-dialog{z-index:70}
.reader-image-viewer::backdrop{background:rgba(0,6,11,.94)}
.reader-viewer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex:none}
.reader-image-viewer h2{font-size:1.03rem;line-height:1.55;margin:0;overflow-wrap:anywhere;padding:6px 0;min-width:0}
#readerImageClose{flex:none;white-space:nowrap}
.reader-viewer-note,.reader-viewer-status{margin:0;color:#bed0d5;font-size:.86rem;line-height:1.5;flex:none}
.reader-zoom-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:none}
#readerZoomIn,#readerZoomOut{font-size:1.25rem;line-height:1;min-width:48px}
.reader-zoom-label{color:#dbecee;font-size:.9rem;font-variant-numeric:tabular-nums;min-width:3.5em}
.reader-image-stage{flex:1 1 auto;position:relative;overflow:hidden;background:#02070a;min-height:100px;min-width:0;width:100%;border:1px solid #375562;border-radius:7px;touch-action:none;user-select:none;-webkit-user-select:none;overscroll-behavior:contain}
.reader-image-stage.reader-can-pan{cursor:grab}
.reader-image-stage.reader-can-pan:active{cursor:grabbing}
.reader-image-stage .reader-zoom-image{position:absolute;left:50%;top:50%;display:block;max-width:none;max-height:none;object-fit:fill;transform-origin:center center;pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
@media(max-width:480px){.reader-image-viewer{padding:10px;gap:8px}.reader-media-tools{gap:7px}.reader-media-tools button{padding-inline:10px;font-size:.86rem}.reader-image-viewer h2{font-size:.94rem}.reader-viewer-header{gap:8px}#readerImageClose{font-size:.85rem;padding-inline:10px}.reader-viewer-note,.reader-viewer-status{font-size:.8rem}}
@media(max-height:480px) and (orientation:landscape){.reader-image-viewer{height:calc(100vh - 12px);height:calc(100dvh - 12px);max-height:calc(100vh - 12px);max-height:calc(100dvh - 12px);padding:8px;gap:6px}.reader-viewer-note{display:none}.reader-image-viewer button{min-height:40px;padding-block:6px}.reader-image-viewer h2{font-size:.94rem;padding-block:3px}.reader-viewer-status{font-size:.78rem}.reader-image-stage{min-height:60px}}
@media print{.reader-media-tools,.reader-media-status,.reader-image-viewer,.reader-dialog-backdrop{display:none!important}}

/* WeChat-friendly reading resume. Kept outside the report flow so the original
   briefing and all clip paths remain unchanged. */
.reader-resume{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:20px;z-index:45;width:min(420px,calc(100% - 28px));box-sizing:border-box;padding:14px;border:1px solid #62838e;border-radius:12px;background:rgba(8,27,37,.97);color:#edf7f7;box-shadow:0 12px 34px rgba(0,0,0,.42)}
.reader-resume[hidden]{display:none}
.reader-resume-copy{margin:0 0 10px;font-size:.93rem;line-height:1.6;overflow-wrap:anywhere}
.reader-resume-copy strong{display:block;color:#fff;font-size:1rem;line-height:1.5}
.reader-resume-copy span{display:block;color:#bfd0d5;margin-top:2px}
.reader-resume-actions{display:flex;gap:8px;flex-wrap:wrap}
.reader-resume button{min-height:44px;padding:8px 14px;border-radius:8px;border:1px solid #668894;font:inherit;font-weight:700;line-height:1.4;cursor:pointer;touch-action:manipulation}
.reader-resume-continue{background:#f0ca72;color:#10242c;border-color:#f0ca72!important;flex:1 1 170px}
.reader-resume-later{background:#193c48;color:#edf7f7;flex:0 1 auto}
.reader-resume button:focus-visible{outline:3px solid #fff;outline-offset:3px}
@media(max-width:760px){.reader-resume{left:14px;right:14px;bottom:calc(72px + env(safe-area-inset-bottom));width:auto;padding:12px}.reader-resume-copy{font-size:.9rem}.reader-resume-copy strong{font-size:.96rem}}
@media print{.reader-resume{display:none!important}}
