/* V5.2: filters, covers, folders, inline previews. Self-contained, no Tailwind CDN. */
.dv-body .dv-cover{background:#182658;border:1px solid #dce2f5;border-radius:24px;padding:9px;transform:none!important;box-shadow:0 26px 65px #1e34532c,0 0 0 1px #e7eafa;animation:dv-cover-pop .6s both}
.dv-body .dv-cover img{width:100%;height:auto;aspect-ratio:16/9;display:block;object-fit:cover;border-radius:15px;min-height:0;box-shadow:0 1px 2px #13162b2b}
.dv-body .dv-cover-foot{font-size:10px;letter-spacing:.13em;color:#fafbff;display:flex;justify-content:space-between;align-items:center;padding:9px 12px 1px}
.dv-body .dv-cover:after{display:none}
.dv-copy-link{display:inline-flex;align-items:center;gap:9px;margin:16px 0 10px;padding:12px 16px;border:1px solid #dce3fd;border-radius:12px;background:#f3f5ff;color:#485bd8;font-weight:800;cursor:pointer;transition:background .2s,transform .2s}
.dv-copy-link:hover{background:#e7ecff;transform:translateY(-1px)}
.dv-seo-context{color:#65718c;line-height:1.86}
/* Folder icon must be a real icon glyph, not a fallback text rectangle. */
.ft-folder>summary .ft-folder-ic{display:inline-grid;place-items:center;background:#fff0d6!important;color:#bf852a!important;border:1px solid #f3dca8;border-radius:11px;width:37px;height:37px;flex:0 0 37px;font-size:17px}
.ft-folder>summary .ft-chevron{display:inline-grid;place-items:center;width:18px;height:18px;transition:transform .25s;color:#818fb0}
.ft-folder[open]>summary .ft-chevron{transform:rotate(90deg)}
.ft-folder[open]>summary .ft-folder-ic .fa-folder:before{content:"\f07c"}
.ft-file-icon{display:inline-grid;place-items:center;min-width:35px;height:35px;border-radius:9px;background:#eff2ff;color:#5c6fe8;font-size:15px}
.ft-file-link{cursor:pointer}.ft-file-name{overflow-wrap:anywhere;flex:1;min-width:0}
.dv-body .dv-action{min-width:0}.dv-action-wrap{min-width:0}
.dv-preview-dialog{width:min(1090px,calc(100vw - 24px));max-width:1090px;height:min(92dvh,900px);max-height:92dvh;border:1px solid #e2e6f7;background:#fff;color:#1e2852;box-shadow:0 32px 100px #080e2d70;border-radius:22px;padding:0;overflow:hidden}
.dv-preview-dialog::backdrop{background:rgba(11,20,46,.75);backdrop-filter:blur(7px)}
.dv-preview-dialog[open]{display:flex;flex-direction:column;animation:dv-modal-in .24s ease-out}
.dv-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 19px;border-bottom:1px solid #e8ecf9;background:#fff}
.dv-preview-heading{display:flex;align-items:center;gap:12px;min-width:0;font-size:14px}.dv-preview-heading strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dv-preview-heading i{font-size:21px;color:#6370dd}
.dv-preview-close{border:1px solid #dce4f4;border-radius:11px;background:#f4f6fd;color:#42547b;width:38px;height:38px;cursor:pointer;flex:0 0 38px}
.dv-preview-view{position:relative;flex:1;min-height:0;background:#f3f5fa}.dv-preview-view iframe{display:block;width:100%;height:100%;border:0;background:#f3f5fa}
.dv-preview-loader{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:10px;color:#6675a0;background:#f8faff;font-size:14px;pointer-events:none}.dv-preview-loader[hidden]{display:none}
.dv-preview-footer{padding:12px 19px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #e8ecf9}.dv-preview-footer p{font-size:11px;color:#7d8aa7;line-height:1.5;margin:0}.dv-preview-footer>div{display:flex;align-items:center;gap:10px;flex-shrink:0}
.dv-preview-copy,.dv-preview-download{border:1px solid #dce4f4;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:12px;padding:12px 15px;background:#fff;color:#3a4a84;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap;text-decoration:none}
.dv-preview-download{color:white!important;border-color:#5161e5;background:linear-gradient(110deg,#5161e5,#765de9)}.dv-preview-download:hover{filter:brightness(1.08)}
@keyframes dv-modal-in{from{opacity:0;transform:translateY(13px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes dv-cover-pop{from{opacity:.1;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:720px){.dv-preview-dialog{width:100vw;height:100dvh;max-height:100dvh;border-radius:0;margin:0;max-width:100vw}.dv-preview-footer{align-items:stretch;flex-direction:column;gap:10px}.dv-preview-footer>div{justify-content:flex-end}.dv-copy-link{width:100%;justify-content:center}.dv-body .dv-cover{padding:6px;border-radius:17px}.dv-body .dv-cover img{border-radius:12px}}
@media(prefers-reduced-motion:reduce){.dv-preview-dialog[open],.dv-body .dv-cover{animation:none!important}}
