@import "https://fonts.googleapis.com/css2?family=Vazirmatn:wght@400;500;600;700&display=swap";:root{--gray-25:#fcfcfd;--gray-50:#f9fafb;--gray-100:#f2f4f7;--gray-200:#eaecf0;--gray-300:#d0d5dd;--gray-400:#98a2b3;--gray-500:#667085;--gray-600:#475467;--gray-700:#344054;--gray-800:#182230;--gray-900:#101828;--brand-25:#fcfaff;--brand-50:#f9f5ff;--brand-100:#f4ebff;--brand-200:#e9d7fe;--brand-300:#d6bbfb;--brand-400:#b692f6;--brand-500:#9e77ed;--brand-600:#7f56d9;--brand-700:#6941c6;--brand-800:#53389e;--success-50:#ecfdf3;--success-200:#abefc6;--success-500:#17b26a;--success-700:#067647;--warning-50:#fffaeb;--warning-200:#fedf89;--warning-500:#f79009;--warning-700:#b54708;--error-50:#fef3f2;--error-200:#fecdca;--error-300:#fda29b;--error-500:#f04438;--error-700:#b42318;--bg:var(--gray-50);--card:#fff;--ink:var(--gray-900);--muted:var(--gray-500);--line:var(--gray-200);--brand:var(--brand-600);--brand-soft:var(--brand-50);--ok:var(--success-700);--ok-soft:var(--success-50);--warn:var(--warning-700);--warn-soft:var(--warning-50);--bad:var(--error-700);--bad-soft:var(--error-50);--r-sm:8px;--r-md:10px;--r-lg:12px;--r-xl:16px;--sh-xs:0 1px 2px #1018280d;--sh-sm:0 1px 3px #1018281a, 0 1px 2px #1018280f;--sh-md:0 4px 8px -2px #1018281a, 0 2px 4px -2px #1018280f;--sh-lg:0 12px 16px -4px #10182814, 0 4px 6px -2px #10182808;--sh-xl:0 20px 24px -4px #10182814, 0 8px 8px -4px #10182808;--ring:0 0 0 4px var(--brand-100)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--gray-50);color:var(--gray-900);-webkit-font-smoothing:antialiased;direction:rtl;font-family:Vazirmatn,Tahoma,sans-serif;font-size:14px}.shell{max-width:1216px;margin:0 auto;padding:24px 32px 48px}.topbar{border:1px solid var(--gray-200);border-radius:var(--r-lg);box-shadow:var(--sh-xs);background:#fff;justify-content:space-between;align-items:center;margin-bottom:20px;padding:12px 20px;display:flex}.brand{color:var(--gray-900);align-items:center;gap:10px;font-size:16px;font-weight:700;display:flex}.brand small{color:var(--gray-500);font-size:12.5px;font-weight:400}.brandmark{background:linear-gradient(135deg, var(--brand-600), var(--brand-800));color:#fff;width:36px;height:36px;box-shadow:var(--sh-xs);border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:800;display:flex}.card{border:1px solid var(--gray-200);border-radius:var(--r-lg);box-shadow:var(--sh-xs);background:#fff;margin-bottom:20px;padding:20px 24px}.card h3{color:var(--gray-900);margin:0 0 4px;font-size:15px;font-weight:600}.card .card-sub{color:var(--gray-500);margin:0 0 14px;font-size:13px}.card h3+.row,.card h3+.tablewrap,.card h3+div{margin-top:12px}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.grow{flex:1}button{cursor:pointer;border-radius:var(--r-sm);background:var(--brand-600);color:#fff;box-shadow:var(--sh-xs);border:1px solid #0000;padding:9px 16px;font-family:inherit;font-size:13.5px;font-weight:600;transition:background .12s,box-shadow .12s,border-color .12s}button:hover{background:var(--brand-700)}button:focus-visible{box-shadow:var(--ring);outline:none}button.ghost{color:var(--gray-700);border-color:var(--gray-300);background:#fff}button.ghost:hover{background:var(--gray-50);color:var(--gray-800)}button.danger{color:var(--error-700);border-color:var(--error-300);background:#fff}button.danger:hover{background:var(--error-50)}button:disabled{opacity:.45;cursor:default;box-shadow:none}button.link{box-shadow:none;color:var(--brand-700);background:0 0;border:none;padding:2px 4px}button.link:hover{background:var(--brand-50)}input,select{color:var(--gray-900);border:1px solid var(--gray-300);border-radius:var(--r-sm);box-shadow:var(--sh-xs);background:#fff;padding:9px 13px;font-family:inherit;font-size:13.5px;transition:border-color .12s,box-shadow .12s}input::placeholder{color:var(--gray-400)}input:focus,select:focus{border-color:var(--brand-300);box-shadow:var(--sh-xs), var(--ring);outline:none}.tablewrap{border:1px solid var(--gray-200);border-radius:var(--r-md);overflow-x:auto}table{border-collapse:collapse;background:#fff;width:100%}th{text-align:right;white-space:nowrap;background:var(--gray-50);color:var(--gray-500);border-bottom:1px solid var(--gray-200);padding:10px 14px;font-size:12px;font-weight:500}td{text-align:right;white-space:nowrap;color:var(--gray-600);border-bottom:1px solid var(--gray-100);padding:11px 14px;font-size:13px}tr:last-child td{border-bottom:none}tbody tr{transition:background .1s}tbody tr:hover{background:var(--gray-25)}td:first-child{color:var(--gray-900);font-weight:500}.chip{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;font-weight:500;display:inline-flex}.chip:before{content:"";opacity:.85;background:currentColor;border-radius:50%;width:6px;height:6px}.chip.ok{background:var(--success-50);color:var(--success-700);border-color:var(--success-200)}.chip.warn{background:var(--warning-50);color:var(--warning-700);border-color:var(--warning-200)}.chip.bad{background:var(--error-50);color:var(--error-700);border-color:var(--error-200)}.chip.mut{background:var(--gray-50);color:var(--gray-600);border-color:var(--gray-200)}.chip.brand{background:var(--brand-50);color:var(--brand-700);border-color:var(--brand-200)}.tabs{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--r-md);gap:4px;margin-bottom:20px;padding:4px;display:inline-flex}.tabs button{color:var(--gray-500);box-shadow:none;background:0 0;border:none;border-radius:7px;padding:7px 18px;font-size:13.5px}.tabs button:hover{color:var(--gray-700);background:0 0}.tabs button.active{color:var(--gray-800);box-shadow:var(--sh-sm);background:#fff}.stats{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:20px;display:grid}.statcard{border:1px solid var(--gray-200);border-radius:var(--r-lg);box-shadow:var(--sh-xs);background:#fff;padding:18px 20px}.statcard .l{color:var(--gray-500);margin-bottom:6px;font-size:13px;display:block}.statcard .v{color:var(--gray-900);font-size:24px;font-weight:700;line-height:1.2}.statcard .v small{color:var(--gray-500);margin-inline-start:4px;font-size:13px;font-weight:500}.statcard .d{color:var(--gray-500);margin-top:4px;font-size:12px}.stat{flex-direction:column;gap:4px;display:flex}.stat .v{font-size:20px;font-weight:700}.stat .l{color:var(--gray-500);font-size:12px}.dropzone{border:1.5px dashed var(--gray-300);border-radius:var(--r-lg);background:var(--gray-25);text-align:center;cursor:pointer;padding:28px;transition:border-color .15s,background .15s}.dropzone:hover,.dropzone.drag{border-color:var(--brand-400);background:var(--brand-25)}.dropzone .dz-icon{background:var(--brand-50);border:6px solid var(--brand-25);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;margin:0 auto 10px;font-size:18px;display:flex}.dropzone b{color:var(--brand-700)}.dropzone .dz-hint{color:var(--gray-500);margin-top:4px;font-size:12.5px}.stepper{align-items:flex-start;margin:6px 0 18px;display:flex}.step{text-align:center;color:var(--gray-500);flex:1;font-size:12px;position:relative}.step .dot{border:1.5px solid var(--gray-300);width:22px;height:22px;color:var(--gray-400);z-index:1;background:#fff;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 6px;font-size:11px;display:flex;position:relative}.step:before{content:"";background:var(--gray-200);width:100%;height:2px;position:absolute;top:11px;right:50%}.step:first-child:before{display:none}.step.done .dot{background:var(--brand-600);border-color:var(--brand-600);color:#fff}.step.done:before{background:var(--brand-600)}.step.done{color:var(--gray-700)}.step.active .dot{border-color:var(--brand-600);color:var(--brand-700);box-shadow:var(--ring)}.step.active{color:var(--brand-700);font-weight:600}.step.active:before{background:var(--brand-600)}.overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:60;background:#10182880;justify-content:flex-start;align-items:stretch;display:flex;position:fixed;inset:0}.overlay.center{justify-content:center;align-items:center}.drawer{width:420px;max-width:94vw;height:100%;box-shadow:var(--sh-xl);border-left:1px solid var(--gray-200);background:#fff;padding:20px 24px;overflow-y:auto}.modal{border-radius:var(--r-xl);box-shadow:var(--sh-xl);background:#fff;max-height:85vh;padding:22px 24px;overflow-y:auto}.drawer-head{align-items:center;gap:12px;margin-bottom:14px;display:flex}.featured-icon{border-radius:var(--r-md);background:var(--brand-50);border:1px solid var(--brand-100);flex:none;justify-content:center;align-items:center;width:44px;height:44px;font-size:19px;display:flex}.drawer-section{margin-top:16px}.drawer-section h3{color:var(--gray-500);margin:0 0 4px;font-size:13px;font-weight:600}.kv{border-bottom:1px solid var(--gray-100);justify-content:space-between;gap:12px;padding:7px 0;font-size:13px;display:flex}.kv .k{color:var(--gray-500)}.kv .val{color:var(--gray-800);text-align:left;font-weight:500}.login-wrap{background:radial-gradient(48rem 24rem at 85% -10%, var(--brand-100), transparent), radial-gradient(40rem 20rem at 10% 110%, var(--brand-50), transparent), var(--gray-50);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{width:380px;box-shadow:var(--sh-lg);padding:28px}.login-card h2{color:var(--gray-900);margin:12px 0 2px;font-size:19px}.login-card .card-sub{margin-bottom:18px}.login-card input{width:100%;margin-bottom:12px}.login-card button{width:100%;padding:11px}.hint{color:var(--gray-500);font-size:12.5px}.err{color:var(--error-700);font-size:13px}.mono{word-break:break-all;text-align:left;direction:ltr;unicode-bidi:embed;font-family:Consolas,monospace;font-size:12px}.divider{border-top:1px solid var(--gray-200);margin:14px 0}.banner{border-radius:var(--r-md);background:var(--brand-50);border:1px solid var(--brand-200);color:var(--brand-800);margin-bottom:16px;padding:10px 14px;font-size:13px}
