:root{--bg: #0a0e17;--surface: #111827;--surface-2: #1a2234;--border: #243049;--text: #e8edf5;--muted: #8b9ab8;--accent: #6366f1;--accent-glow: rgba(99, 102, 241, .25);--success: #22c55e;--warning: #f59e0b;--danger: #ef4444;--info: #38bdf8;--radius: 12px;--font: "IBM Plex Sans Arabic", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh}.app{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--surface);border-left:1px solid var(--border);padding:1.5rem;display:flex;flex-direction:column;gap:2rem;position:fixed;top:0;right:0;height:100vh}.brand{display:flex;align-items:center;gap:.75rem}.brand-icon{width:44px;height:44px;background:linear-gradient(135deg,var(--accent),#a855f7);border-radius:10px;display:grid;place-items:center;font-weight:700;font-size:.85rem}.brand h1{font-size:1rem;font-weight:700}.brand p{font-size:.75rem;color:var(--muted)}.sidebar nav{display:flex;flex-direction:column;gap:.35rem}.sidebar nav a{display:flex;align-items:center;gap:.6rem;padding:.65rem .85rem;border-radius:8px;color:var(--muted);text-decoration:none;font-size:.9rem;transition:all .15s}.sidebar nav a:hover{background:var(--surface-2);color:var(--text)}.sidebar nav a.active{background:var(--accent-glow);color:var(--accent);font-weight:600}.nav-icon{font-size:1rem;width:1.2rem;text-align:center}.main{flex:1;margin-right:260px;padding:2rem;max-width:1200px}.page-header{margin-bottom:1.75rem}.page-header h2{font-size:1.5rem;font-weight:700}.page-header p{color:var(--muted);font-size:.9rem;margin-top:.25rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.stat-card .label{font-size:.8rem;color:var(--muted);margin-bottom:.35rem}.stat-card .value{font-size:1.75rem;font-weight:700}.stat-card.pending .value{color:var(--warning)}.stat-card.processing .value{color:var(--info)}.stat-card.completed .value{color:var(--success)}.stat-card.failed .value{color:var(--danger)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.25rem}.card h3{font-size:1rem;margin-bottom:1rem}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1rem;border-radius:8px;border:none;font-family:var(--font);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{filter:brightness(1.1)}.btn-secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--accent)}.btn-danger{background:#ef444426;color:var(--danger);border:1px solid rgba(239,68,68,.3)}.btn:disabled{opacity:.5;cursor:not-allowed}.actions-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.85rem}th,td{padding:.75rem 1rem;text-align:right;border-bottom:1px solid var(--border)}th{color:var(--muted);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}tr:hover td{background:#ffffff05}.badge{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600}.badge-pending{background:#f59e0b26;color:var(--warning)}.badge-processing{background:#38bdf826;color:var(--info)}.badge-completed{background:#22c55e26;color:var(--success)}.badge-failed{background:#ef444426;color:var(--danger)}.badge-retry{background:#a855f726;color:#a855f7}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.35rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.6rem .85rem;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:var(--font);font-size:.9rem}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.alert{padding:.85rem 1rem;border-radius:8px;font-size:.85rem;margin-bottom:1rem}.alert-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5}.alert-success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#86efac}.alert-info{background:#38bdf81a;border:1px solid rgba(56,189,248,.3);color:#7dd3fc}.loading{text-align:center;padding:3rem;color:var(--muted)}.empty{text-align:center;padding:2rem;color:var(--muted)}.link{color:var(--accent);text-decoration:none}.link:hover{text-decoration:underline}.topic-cell{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:grid;place-items:center;z-index:100;padding:1rem}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;width:100%;max-width:520px;max-height:80vh;overflow-y:auto}.modal h3{margin-bottom:1rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-start;margin-top:1.25rem}.status-dot{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem}.status-dot:before{content:"";width:8px;height:8px;border-radius:50%}.status-dot.ok:before{background:var(--success)}.status-dot.warn:before{background:var(--warning)}@media(max-width:768px){.sidebar{width:100%;height:auto;position:relative;border-left:none;border-bottom:1px solid var(--border)}.main{margin-right:0;padding:1rem}.app{flex-direction:column}.form-row{grid-template-columns:1fr}}
