:root{--bg: #0f1220;--bg2: #171a2e;--card: #1c2039;--line: #2b3055;--text: #e8eaf6;--muted: #9aa0c4;--accent: #6c8cff;--accent2: #8a6cff;--good: #3ecf8e;--warn: #ffc15c;--danger: #ff6b7a;--radius: 16px}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Assistant,system-ui,sans-serif;background:radial-gradient(1200px 600px at 70% -10%,#23305c 0%,transparent 60%),var(--bg);color:var(--text);direction:rtl;min-height:100vh}.page{max-width:900px;margin:0 auto;padding:40px 20px 60px}.hero{text-align:center;margin-bottom:32px}.logo{display:inline-block;font-weight:800;letter-spacing:1px;padding:6px 14px;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--accent2));color:#fff;font-size:14px;margin-bottom:16px}.hero h1{font-size:32px;margin:0 0 12px;line-height:1.25}.sub{color:var(--muted);font-size:16px;line-height:1.7;margin:0}.sub strong{color:var(--good)}.drop{border:2px dashed var(--line);border-radius:var(--radius);background:var(--card);padding:56px 24px;text-align:center;cursor:pointer;transition:.2s}.drop.over{border-color:var(--accent);background:#202545;transform:translateY(-2px)}.drop.busy{cursor:default}.drop-icon{font-size:48px;margin-bottom:12px}.drop-title{font-size:20px;font-weight:700;margin-bottom:6px}.drop-hint{color:var(--muted);font-size:14px}.progress-wrap{display:flex;flex-direction:column;align-items:center;gap:16px}.spinner{width:44px;height:44px;border-radius:50%;border:4px solid var(--line);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.phase-label{font-size:16px;color:var(--text)}.bar{width:100%;max-width:420px;height:8px;background:var(--line);border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .2s}.alert{border-radius:12px;padding:14px 18px;margin-top:20px;font-size:15px;line-height:1.6}.alert.error{background:#3a1d24;color:var(--danger);border:1px solid #5a2b34}.alert.warn{background:#3a331d;color:var(--warn);border:1px solid #5a4f2b;margin-top:16px}.result{margin-top:8px}.result-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px}.result-file{font-size:18px;font-weight:700;color:var(--good);margin-bottom:14px}.stats{display:flex;flex-wrap:wrap;gap:10px}.stat{background:var(--bg2);border:1px solid var(--line);border-radius:10px;padding:8px 14px;text-align:center;min-width:70px}.stat-warn{border-color:var(--warn)}.stat-value{font-size:20px;font-weight:800}.stat-label{font-size:12px;color:var(--muted)}.actions{display:flex;flex-direction:column;gap:10px}.btn{border:none;border-radius:10px;padding:12px 20px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;transition:.15s}.btn.primary{background:linear-gradient(90deg,var(--accent),var(--accent2));color:#fff}.btn.primary:hover{filter:brightness(1.1)}.btn.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}.btn.ghost:hover{color:var(--text);border-color:var(--muted)}.preview{margin-top:20px;background:#fbfbfd;color:#1a1a24;border-radius:var(--radius);padding:32px 40px;line-height:1.9;max-height:560px;overflow:auto;font-family:David,Frank Ruhl Libre,Times New Roman,serif}.preview-title{font-size:12px;color:#888;margin-bottom:16px;font-family:system-ui;letter-spacing:1px}.pv-heading1{font-size:26px;font-weight:800;margin:20px 0 10px}.pv-heading2{font-size:22px;font-weight:800;margin:16px 0 8px}.pv-heading3{font-size:18px;font-weight:700;margin:14px 0 6px}.pv-paragraph{font-size:17px;margin:0 0 12px}.align-right{text-align:right}.align-center{text-align:center}.align-justify{text-align:justify}.fnref,.fn sup{color:var(--accent);font-weight:700;padding:0 2px}.fn-section{margin-top:20px;font-size:14px;color:#444}.fn-section hr{border:none;border-top:1px solid #ccc;margin-bottom:10px}.fn{margin-bottom:6px}.more{color:#999;font-style:italic;margin-top:10px}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:40px}.feature{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;text-align:center}.feature-icon{font-size:30px;margin-bottom:10px}.feature-title{font-weight:700;margin-bottom:6px}.feature-text{color:var(--muted);font-size:14px;line-height:1.6}.foot{text-align:center;color:var(--muted);font-size:13px;margin-top:40px}
