/* PPT 预览：缩略图、画布和幻灯片内部定位 */
.ppt-thumbs{max-height:22rem;overflow:auto;padding:.5rem;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(11rem,12rem));gap:.5rem}
.ppt-thumb{width:100%;border:2px solid transparent;border-radius:.5rem;background:var(--bs-body-bg);
  cursor:pointer;padding:.2rem;text-align:center}
.ppt-thumb:hover{border-color:var(--bs-border-color)}
.ppt-thumb.is-on{border-color:var(--site-primary)}
.ppt-thumb-box{position:relative;overflow:hidden;border:1px solid var(--bs-border-color);
  border-radius:.35rem;background:#fff}
.ppt-thumb-no{margin-top:.2rem;font-size:.6875rem;color:var(--bs-secondary-color)}
.ppt-stage{display:flex;align-items:center;justify-content:center;min-height:26rem;padding:1rem;
  background:var(--bs-tertiary-bg);overflow:auto}
.pv-slide{position:relative;flex:none;background:#fff;box-shadow:0 2px 12px rgba(15,23,42,.18);overflow:hidden}
.pv-shape{position:absolute;overflow:hidden;white-space:pre-wrap;word-break:break-word}
.pv-shape img{width:100%;height:100%;object-fit:contain}
.pv-tbl{position:absolute;border-collapse:collapse;table-layout:fixed}
.pv-tbl td{border:1px solid rgba(120,130,140,.45);padding:.15em .3em;vertical-align:top;overflow:hidden}
@media print{
  .site-header,.site-sidebar,.site-nav,.card-header,.drop,#pptToolbar,
  #pptThumbLabel,#pptThumbCell,#pptNotes,.col-form-label{display:none!important}
  #pptResultWrap>.row{display:block!important}
  #pptResultWrap>.row>div{width:100%!important;max-width:none!important}
  .ppt-stage{display:block;padding:0;background:#fff;min-height:0;overflow:visible;border:0!important}
  .pv-slide{page-break-after:always;box-shadow:none;margin:0 auto}
}
