.react-file-preview{min-height:100vh;background:#f5f7fb;padding:1.5rem 1rem 3rem;color:#111827}.react-file-preview .file-preview-shell{max-width:1440px;margin:0 auto;display:grid;grid-template-columns:minmax(320px,380px) minmax(0,1fr);gap:1rem;align-items:stretch}.react-file-preview .fp-panel{background:#fff;border:1px solid #dbe3ef;border-radius:12px;box-shadow:0 8px 28px #0f172a14}.react-file-preview .fp-sidebar{padding:1rem}.react-file-preview .fp-title{margin:0 0 .35rem;font-size:1.35rem;line-height:1.2;font-weight:800;color:#0f172a}.react-file-preview .fp-subtitle{margin:0 0 1rem;color:#64748b;line-height:1.5;font-size:.92rem}.react-file-preview .fp-dropzone{border:1.5px dashed #9db4d6;background:#f8fbff;border-radius:12px;padding:1.25rem;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}.react-file-preview .fp-dropzone:hover,.react-file-preview .fp-dropzone.is-dragging{border-color:#2563eb;background:#eff6ff;transform:translateY(-1px)}.react-file-preview .fp-dropzone input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.react-file-preview .fp-upload-icon{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:1.35rem;font-weight:800;margin-bottom:.85rem}.react-file-preview .fp-dropzone strong{display:block;margin-bottom:.35rem;color:#172033;font-size:.98rem}.react-file-preview .fp-dropzone span{color:#64748b;font-size:.84rem;line-height:1.45}.react-file-preview .fp-actions{display:flex;gap:.5rem;margin-top:.9rem;flex-wrap:wrap}.react-file-preview .fp-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #cbd5e1;border-radius:9px;min-height:2.2rem;padding:0 .85rem;font-weight:700;font-size:.86rem;cursor:pointer;background:#fff;color:#243047;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.react-file-preview .fp-btn-primary{border-color:#2563eb;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.react-file-preview .fp-btn:disabled{opacity:.5;cursor:not-allowed}.react-file-preview .fp-status{margin-top:1rem;padding:.75rem;border-radius:10px;border:1px solid #dbe3ef;background:#f8fafc;color:#475569;font-size:.86rem;line-height:1.45}.react-file-preview .fp-status.is-error{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.react-file-preview .fp-status.is-success{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.react-file-preview .fp-meta{margin-top:1rem;display:grid;gap:.55rem}.react-file-preview .fp-meta-row{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid #edf2f7;color:#64748b;font-size:.84rem}.react-file-preview .fp-meta-row strong{color:#0f172a;text-align:right;word-break:break-all}.react-file-preview .fp-converter-note{margin-top:1rem;border-radius:10px;border:1px solid #e2e8f0;background:#fff;padding:.8rem;color:#475569;font-size:.82rem;line-height:1.55}.react-file-preview .fp-viewer{min-height:calc(100vh - 8rem);display:flex;flex-direction:column;overflow:hidden}.react-file-preview .fp-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1rem;border-bottom:1px solid #e5e7eb;background:#fff}.react-file-preview .fp-viewer-title{min-width:0}.react-file-preview .fp-viewer-title h2{margin:0;font-size:1rem;color:#111827;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-file-preview .fp-viewer-title p{margin:.2rem 0 0;color:#64748b;font-size:.8rem}.react-file-preview .fp-toolbar{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.react-file-preview .fp-toolbar button,.react-file-preview .fp-toolbar span{height:2rem;min-width:2.2rem;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;color:#1f2937;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.82rem}.react-file-preview .fp-toolbar button{cursor:pointer}.react-file-preview .fp-toolbar span{min-width:4.2rem;background:#fff;color:#475569;font-variant-numeric:tabular-nums}.react-file-preview .fp-stage{flex:1;min-height:0;overflow:hidden;position:relative;background:linear-gradient(#e7edf5 1px,transparent 1px),linear-gradient(90deg,#e7edf5 1px,transparent 1px),#f8fafc;background-size:28px 28px}.react-file-preview .fp-stage.is-cad{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.react-file-preview .fp-stage.is-panning{cursor:grabbing}.react-file-preview .fp-empty{height:100%;min-height:460px;display:grid;place-items:center;color:#64748b;padding:2rem;text-align:center}.react-file-preview .fp-preview-svg{display:block;width:100%;height:100%;background:#fff}.react-file-preview .fp-preview-svg line,.react-file-preview .fp-preview-svg polyline,.react-file-preview .fp-preview-svg polygon,.react-file-preview .fp-preview-svg circle,.react-file-preview .fp-preview-svg path{stroke-width:1.35;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.react-file-preview .fp-preview-svg text{font-family:Microsoft YaHei,Arial,sans-serif;dominant-baseline:middle;-webkit-user-select:none;user-select:none}.react-file-preview .fp-layer-panel{position:absolute;top:.75rem;right:.75rem;z-index:3;width:min(240px,calc(100% - 1.5rem));max-height:calc(100% - 1.5rem);overflow:hidden;display:flex;flex-direction:column;border:1px solid #dbe3ef;border-radius:10px;background:#fffffff0;box-shadow:0 14px 38px #0f172a29;cursor:default;touch-action:auto;-webkit-user-select:text;user-select:text}.react-file-preview .fp-layer-panel h3{margin:0;padding:.65rem .75rem;border-bottom:1px solid #edf2f7;font-size:.84rem;color:#0f172a}.react-file-preview .fp-layer-list{min-height:0;overflow:auto;padding:.4rem;display:grid;gap:.15rem}.react-file-preview .fp-layer-item{display:grid;grid-template-columns:auto .75rem minmax(0,1fr) auto;gap:.4rem;align-items:center;min-height:1.75rem;padding:.2rem .28rem;border-radius:6px;color:#334155;font-size:.76rem}.react-file-preview .fp-layer-item:hover{background:#f1f5f9}.react-file-preview .fp-layer-item input{margin:0}.react-file-preview .fp-layer-swatch{width:.65rem;height:.65rem;border-radius:50%;border:1px solid rgba(15,23,42,.18)}.react-file-preview .fp-layer-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.react-file-preview .fp-layer-count{color:#64748b;font-variant-numeric:tabular-nums}.react-file-preview .fp-preview-frame,.react-file-preview .fp-preview-image,.react-file-preview .fp-preview-text{width:100%;height:100%;border:0;background:#fff}.react-file-preview .fp-preview-image{object-fit:contain;padding:1rem;box-sizing:border-box}.react-file-preview .fp-preview-text{margin:0;padding:1rem;overflow:auto;color:#111827;font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;word-break:break-word}@media (max-width: 980px){.react-file-preview .file-preview-shell{grid-template-columns:1fr}.react-file-preview .fp-viewer{min-height:70vh}}.react-file-preview .fp-dropzone:focus-within,.react-file-preview .fp-btn:focus-visible,.react-file-preview .fp-toolbar button:focus-visible,.react-file-preview .fp-layer-item:focus-within{outline:3px solid #2563eb;outline-offset:2px}.react-file-preview .fp-converter-note,.react-file-preview .fp-meta-row strong,.react-file-preview .fp-status{overflow-wrap:anywhere}[data-theme=dark] .react-file-preview{background:#0f172a;color:#f8fafc}[data-theme=dark] .react-file-preview .fp-panel,[data-theme=dark] .react-file-preview .fp-viewer-head,[data-theme=dark] .react-file-preview .fp-converter-note{background:#1e293b;border-color:#334155;color:#cbd5e1}[data-theme=dark] .react-file-preview .fp-title,[data-theme=dark] .react-file-preview .fp-viewer-title h2,[data-theme=dark] .react-file-preview .fp-meta-row strong{color:#f8fafc}[data-theme=dark] .react-file-preview .fp-dropzone{background:#172554;border-color:#3b82f6}[data-theme=dark] .react-file-preview .fp-dropzone strong{color:#f8fafc}[data-theme=dark] .react-file-preview .fp-status{background:#334155;border-color:#475569;color:#e2e8f0}[data-theme=dark] .react-file-preview .fp-status.is-error{background:#450a0a;border-color:#b91c1c;color:#fecaca}[data-theme=dark] .react-file-preview .fp-status.is-success{background:#052e16;border-color:#166534;color:#bbf7d0}[data-theme=dark] .react-file-preview .fp-stage{background-color:#1e293b}[data-theme=dark] .react-file-preview .fp-layer-panel{background:#1e293b;border-color:#475569}[data-theme=dark] .react-file-preview .fp-layer-panel h3,[data-theme=dark] .react-file-preview .fp-layer-item{color:#f8fafc}[data-theme=dark] .react-file-preview .fp-layer-item:hover{background:#334155}@media (prefers-reduced-motion: reduce){.react-file-preview .fp-dropzone{transition:none}}
