/* OCR/transcript settings and per-media result previews. */
.badge.extraction-on{background:#2563a8;color:#fff}
.badge.extraction-off{background:#64748b;color:#fff}
.badge.extraction-mixed{background:#a16207;color:#fff}
.qz-media-with-extraction{display:flex;flex:1 1 240px;min-width:0;flex-direction:column;align-items:stretch;gap:6px}
.discussion-media .qz-media-with-extraction{width:100%}
.qz-media-with-extraction>img,.qz-media-with-extraction>video,.qz-media-with-extraction>audio{width:100%;max-width:100%}
.qz-media-with-extraction>.qz-video-preview{flex:1 1 auto;min-height:0}
.qz-media-extraction-card{min-width:0;padding:9px 10px;border:1px solid #dbe4ec;background:#fbfdff;color:#263746}
.qz-media-extraction-card>strong{display:block;margin-bottom:4px;color:#38657f;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.qz-media-extraction-card>p{overflow:hidden;margin:0;color:#3d4f5c;font-size:12px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}
.qz-media-extraction-card details{margin-top:4px}
.qz-media-extraction-card summary{display:inline-block;color:#216ca0;cursor:pointer;font-size:12px;font-weight:600;list-style:none;text-decoration:underline;text-underline-offset:2px}
.qz-media-extraction-card summary::-webkit-details-marker{display:none}
.qz-media-extraction-card details>div{max-height:18rem;overflow:auto;margin-top:7px;padding-top:7px;border-top:1px solid #e6edf2;font-size:12px;line-height:1.55;white-space:normal}

/* Canonical extended-media viewer: video preview never plays inline. */
.qz-video-preview{position:relative;display:block;width:100%;min-width:0;min-height:150px;aspect-ratio:16/9;padding:0;border:0;background:#0f172a;cursor:pointer;overflow:hidden}
.qz-video-preview>video{display:block;width:100%;height:100%;max-height:none;object-fit:cover;pointer-events:none;background:#0f172a}
.qz-video-preview-play{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(255,255,255,.72);border-radius:50%;color:#fff;background:rgba(15,23,42,.76);font-size:20px;line-height:1;transform:translate(-50%,-50%);pointer-events:none}
.qz-video-preview:hover .qz-video-preview-play,.qz-video-preview:focus-visible .qz-video-preview-play{background:#4f46e5}
.qz-video-preview:focus-visible{outline:3px solid #a5b4fc;outline-offset:2px}
.qz-video-transcript-pending,.qz-media-extraction-state{margin:0;padding:10px 12px;border:1px solid #dbe4ec;color:#526779;background:#f8fbfd;font-size:12px;font-weight:600;line-height:1.5}
.qz-media-viewer{z-index:3000;cursor:default}
.qz-media-viewer-card{position:relative;display:flex;flex-direction:column;width:min(1180px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:hidden;border:1px solid rgba(255,255,255,.22);background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.45)}
.qz-media-viewer-head{display:flex;flex:none;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:10px 14px 10px 18px;border-bottom:1px solid #dbe4ec;background:#fff}
.qz-media-viewer-head h2{margin:0;color:#17212b;font-size:18px;line-height:1.35}
.qz-media-viewer .qz-media-viewer-close{position:static;display:grid;place-items:center;flex:none;width:40px;height:40px;border:1px solid #cbd5e1;color:#17212b;background:#fff;font-size:26px;line-height:1;cursor:pointer}
.qz-media-viewer .qz-media-viewer-close:hover{background:#f1f5f9}
.qz-media-viewer .qz-media-viewer-close:focus-visible{outline:3px solid #818cf8;outline-offset:2px}
.qz-media-viewer-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);min-height:0;overflow:hidden}
.qz-media-viewer-grid.is-video-only{grid-template-columns:minmax(0,1fr)}
.qz-media-viewer-player{display:grid;place-items:center;min-width:0;min-height:0;padding:16px;background:#050a12}
.qz-media-viewer-player video{display:block;width:100%;height:auto;max-height:calc(100vh - 138px);object-fit:contain;background:#000}
.qz-media-viewer-transcript{min-width:0;overflow:auto;padding:18px;border-left:1px solid #dbe4ec;background:#f8fafc;overscroll-behavior:contain}
.qz-media-viewer-transcript h3{margin:0 0 12px;color:#17212b;font-size:15px}
.qz-media-viewer-transcript>section>div:empty{display:none}
.qz-frame-ocr-panel{margin-top:20px;padding-top:18px;border-top:1px solid #dbe4ec}
.qz-frame-ocr-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.qz-frame-ocr-panel>header h3{margin-bottom:4px}.qz-frame-ocr-panel>header p{margin:0;font-size:12px;line-height:1.45}
.qz-frame-ocr-capture{display:flex;align-items:center;gap:8px;margin:12px 0}.qz-frame-ocr-capture output{min-width:82px;padding:7px 9px;border:1px solid #cbd5e1;background:#fff;font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}
.qz-frame-ocr-notice{margin:10px 0;font-size:12px}.qz-frame-ocr-notice.is-error,.qz-frame-ocr-error{color:#9b2c2c}
.qz-frame-ocr-list{display:grid;gap:8px}.qz-frame-ocr-item{padding:10px;border:1px solid #dbe4ec;background:#fff}.qz-frame-ocr-item>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.qz-frame-ocr-item .badge{padding:3px 7px;font-size:10px}.qz-frame-ocr-item.is-failed{border-color:#f3c4c4;background:#fff7f7}.qz-frame-ocr-item.is-completed{border-color:#bbdfc8;background:#f6fff9}.qz-frame-ocr-item p{margin:8px 0 0;font-size:12px;line-height:1.5}.qz-frame-ocr-text{white-space:normal}.qz-frame-ocr-actions{display:flex;gap:8px;margin-top:10px}
.qz-media-viewer-transcript .qz-media-extraction-card{padding:0;border:0;background:transparent}
.qz-media-viewer-transcript .qz-media-extraction-card>strong{display:none}
.qz-media-viewer-transcript .qz-media-extraction-card>p{white-space:normal}
.pcomment-media-item.is-video{padding:0;overflow:hidden}
.pcomment-media-item.is-video>.qz-video-preview{width:100%;min-height:150px;height:100%}
.pcomment-media-item.is-video>.pcomment-video-meta{display:none}
@media(max-width:760px){.qz-media-viewer{padding:0}.qz-media-viewer-card{width:100vw;height:100vh;max-height:none}.qz-media-viewer-grid{grid-template-columns:1fr;grid-template-rows:minmax(240px,55vh) minmax(0,1fr)}.qz-media-viewer-player{padding:8px}.qz-media-viewer-player video{max-height:calc(55vh - 16px)}.qz-media-viewer-transcript{border-top:1px solid #dbe4ec;border-left:0}}

.qz-video-transcript-error,.qz-video-transcript-empty,.qz-video-transcript-unavailable{margin:0;padding:10px 12px;border:1px solid #dbe4ec;color:#526779;background:#f8fbfd;font-size:12px;font-weight:600;line-height:1.5}.qz-video-transcript-error,.qz-media-extraction-state.is-error{border-color:#f3c4c4;color:#9b2c2c;background:#fff7f7}

/* LOI 21: o thu nho dung chung + lop phu toan man hinh cho cua so xem media.
   Truoc day khong tep CSS nao dinh nghia .pmedia-viewer nen cua so bi chen xuong cuoi trang. */
.pmedia-viewer.qz-media-viewer{position:fixed;inset:0;display:grid;place-items:center;padding:24px;background:rgba(5,10,18,.86);overflow:auto}
/* 100vw tinh ca thanh cuon doc -> card tran ngang, nut Dong bi cat. Dung 100% cua lop phu. */
.pmedia-viewer.qz-media-viewer{box-sizing:border-box}
.pmedia-viewer.qz-media-viewer .qz-media-viewer-card{box-sizing:border-box;width:min(1180px,100%);max-width:100%;max-height:100%}
@media(max-width:760px){.pmedia-viewer.qz-media-viewer{padding:0}.pmedia-viewer.qz-media-viewer .qz-media-viewer-card{width:100%;height:100%}}
body.qz-media-viewer-open{overflow:hidden}
.qz-media-viewer-player img{display:block;max-width:100%;max-height:calc(100vh - 138px);object-fit:contain;background:#000}
.qz-media-viewer-transcript[hidden]{display:none}
/* LOI 26: dong ket qua ghim la luoi 4 cot (cham | nhan | nhan xet | nut); trong o hep hai cot chu
   bi ep 0px nen moi dong mot ky tu. O chi-xem: cham + nhan tren mot hang, phan con lai xuong dong. */
.qz-pin-readonly .ppin-row{grid-template-columns:auto minmax(0,1fr);align-items:start}
.qz-pin-readonly .ppin-row>:nth-child(n+3){grid-column:1/-1;min-width:0;overflow-wrap:anywhere}

/* LOI 27 - BAT BIEN TOAN HE THONG: moi anh/video trong bai nghien cuu (media dap vien, anh goi y,
   anh lua chon, the phan loai/cham diem, bang ghim, bang cam hung, video xem, Observer, People,
   Responses) giu NGUYEN HINH va TY LE GOC: khong cat (object-fit:cover), khong bo goc, khong vien,
   khong nen, khong khung ep ty le. Tep nay nap SAU bundle staff + dap vien nen ghi de duoc. */
.qz-media-gallery{display:flex;flex-wrap:wrap;align-items:flex-start;gap:14px;margin-top:10px}
.qz-media-item{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0;max-width:100%;min-width:0}
.qz-media-thumb{display:block;max-width:100%;margin:0;padding:0;border:0;border-radius:0;background:none;box-shadow:none;line-height:0;cursor:zoom-in}
.qz-media-thumb>img,.qz-media-thumb>video{display:block;width:auto;height:auto;max-width:100%;max-height:280px;margin:0;border:0;border-radius:0;background:none;object-fit:contain;pointer-events:none}
.qz-media-thumb:focus-visible{outline:2px solid #1F5FBF;outline-offset:3px}
.qz-media-item.is-audio audio{width:min(320px,100%)}
.qz-media-name{max-width:100%;color:#475569;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.pimgtile>.qz-media-item{width:100%;align-items:center}
.pimgtile .qz-media-thumb>img,.pimgtile .qz-media-thumb>video{max-height:150px}

:is(.ptask-workspace,#post-list,.pmedia,.pmedia-item,.pidea-media,.pprompt-hero,.pwelcome,.qz-static-image,.pchoice,.pranking-label,.pallocation-choice,.qz-cards-compose,.qz-cards-readonly,.qz-card-chip,.qz-card-result-item,.qz-card-score-pool-card,.qz-card-score-token,.ppin-board,.ppin-read-board,.qz-canvas-item,.qz-video-card,.pai-concept,.discussion-media,.response-media,.qz-media-with-extraction,.people-timeline-media,.people-media-thumb,.rsp-choice-answer,.task-visual,.activity-introduction,.pfile-preview,.pimgtile,.qz-media-viewer-player) :is(img,video){object-fit:contain!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;aspect-ratio:auto!important}
:is(.pmedia,.pidea-media,.discussion-media,.response-media,.qz-media-with-extraction,.pai-concept,.people-media-thumb,.pfile-preview,.pimgtile,.qz-card-result-item) :is(img,video){width:auto!important;height:auto!important;max-width:100%!important}
.qz-card-result-item img{max-height:140px!important}
/* Chieu cao co dinh cu (the 100px, anh goi y 160px...) lam khoi anh sai ty le du hinh khong bi cat. */
:is(.pmedia,.pmedia-item,.pidea-media,.pprompt-hero,.pwelcome,.qz-static-image,.pchoice,.pranking-label,.pallocation-choice,.qz-card-chip,.qz-card-result-item,.qz-card-score-pool-card,.qz-card-score-token,.ppin-board,.ppin-read-board,.pai-concept,.discussion-media,.response-media,.qz-media-with-extraction,.people-timeline-media,.people-media-thumb,.rsp-choice-answer,.task-visual,.activity-introduction,.pfile-preview,.pimgtile) :is(img,video){height:auto!important}
:is(.pfile-preview,.pimgtile:not(.add)){aspect-ratio:auto!important;border-radius:0!important;background:transparent!important}
:is(.pfile-preview,.pimgtile:not(.add)) :is(img,video){max-height:180px!important}
.people-media-thumb{height:auto!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
.people-media-thumb :is(img,video){max-height:180px!important;max-width:260px!important}
.pprompt-hero{border-radius:0!important;background:none!important}
.ppin-board,.ppin-read-board{border:0!important;background:none!important}
.qz-video-card{padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
video.qz-video-player{height:auto!important;aspect-ratio:auto!important;border:0!important;border-radius:0!important;background:none!important}
iframe.qz-video-player{border:0!important;border-radius:0!important;background:none!important}
.qz-media-viewer-player{background:transparent!important}
.qz-media-viewer-player :is(img,video){background:transparent!important}

