/* Real first-slide covers share one compact, fixed slot in rows and details. */
.ps-app .ps-ppt-cover {
 display:grid;place-items:center;position:relative;flex:none;box-sizing:border-box;
 width:128px;height:72px;overflow:hidden;border:1px solid var(--ps-line);
 border-radius:3px;background:var(--ps-soft,var(--ps-paper));
}
.ps-app .ps-ppt-cover > .ps-k-file-icon {width:auto;height:auto;background:transparent}
.ps-app .ps-ppt-cover svg {width:24px;height:24px}
.ps-app .ps-ppt-cover img {display:block;width:100%;height:100%;object-fit:contain;background:#fff}
.ps-app .ps-ppt-cover-button {
 cursor:pointer;
 display:block;flex:none;margin:0;padding:0;border:0;border-radius:3px;
 background:transparent;line-height:0;min-height:0;
}
.ps-app .ps-ppt-cover-button:hover {background:transparent}
.ps-app .ps-ppt-cover-button:focus-visible {outline:2px solid var(--ps-accent,#347cf1);outline-offset:2px}

/* 详情 PPT 卡片：有真实首屏封面时替换占位图标并隐藏生成控件 */
.ps-app .ps-media-slot > .ps-ppt-cover-button{display:block;margin:0 auto}
.ps-app .ps-media-slot > .ps-ppt-cover-button ~ svg,
.ps-app .ps-media-slot > .ps-ppt-cover-button ~ .ps-media-status,
.ps-app .ps-media-slot > .ps-ppt-cover-button ~ .ps-media-generate,
.ps-app .ps-media-slot > .ps-ppt-cover-button ~ .ps-media-empty-hint{display:none}
