@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-arabic.woff2) format("woff2");font-weight:100 900;font-display:swap;unicode-range:u+06??,u+0750-077f,u+08a0-08ff,u+fb50-fdff,u+fe70-feff,u+200c-200d,u+2010-2011}@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-latin.woff2) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/SpaceGrotesk.woff2) format("woff2");font-weight:300 700;font-display:swap}:root{--bg:#f4f2ec;--surface:#ffffff;--surface2:#eceae2;--border:#ddd9cd;--text:#1d1b16;--text2:#736e60;--accent:#d97706;--accent-soft:rgba(217,119,6,.13);--ok:#16a34a;--ok-soft:rgba(22,163,74,.12);--bad:#dc2626;--bad-soft:rgba(220,38,38,.11);--info:#2563eb;--info-soft:rgba(37,99,235,.11);--shadow:0 1px 2px rgba(29,27,22,.04),0 10px 28px -14px rgba(29,27,22,.14);--shadow-lift:0 4px 10px rgba(29,27,22,.06),0 18px 36px -14px rgba(29,27,22,.22)}[data-theme=dark]{--bg:#121110;--surface:#1c1a17;--surface2:#262320;--border:#37332b;--text:#f1efe8;--text2:#a39d8d;--accent:#f59e0b;--accent-soft:rgba(245,158,11,.16);--ok:#4ade80;--ok-soft:rgba(74,222,128,.14);--bad:#f87171;--bad-soft:rgba(248,113,113,.13);--info:#60a5fa;--info-soft:rgba(96,165,250,.13);--shadow:0 1px 2px rgba(0,0,0,.25),0 12px 30px -14px rgba(0,0,0,.5);--shadow-lift:0 6px 14px rgba(0,0,0,.35),0 22px 44px -16px rgba(0,0,0,.6)}:root{--accent-deep:#b45309;--accent-line:rgba(217,119,6,.22);--sheen:rgba(255,255,255,.6);--glow1:rgba(217,119,6,.09);--glow2:rgba(124,92,214,.06)}[data-theme=dark]{--accent-deep:#d97706;--accent-line:rgba(245,158,11,.28);--sheen:rgba(255,255,255,.05);--glow1:rgba(245,158,11,.13);--glow2:rgba(164,135,240,.09)}*{box-sizing:border-box;transition:background-color .35s ease,border-color .35s ease,color .35s ease,fill .35s ease,stroke .35s ease,box-shadow .25s ease,transform .22s ease,filter .2s ease}html{background:var(--bg)}body,html{margin:0;padding:0;transition:background-color .4s ease,background .4s ease}body{background:transparent;color:var(--text);font-family:Vazirmatn,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:-10%;z-index:-1;pointer-events:none;background:radial-gradient(620px 460px at 88% -6%,var(--glow1),transparent 62%),radial-gradient(560px 460px at 6% 108%,var(--glow2),transparent 60%);animation:drift 22s ease-in-out infinite alternate}a{color:var(--accent);text-decoration:none}a:hover{color:var(--text)}button,input,select,textarea{font-family:Vazirmatn,sans-serif;color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}button:focus-visible{outline:2px solid var(--accent)}::placeholder{color:var(--text2);opacity:.7}.num{font-family:Space Grotesk,Vazirmatn,sans-serif}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:translateY(8px) scale(.96)}}@keyframes modalIn{0%{opacity:0;transform:translateY(18px) scale(.95)}}@keyframes growW{0%{width:0}}@keyframes growH{0%{height:0}}@keyframes blink{0%,to{opacity:1}50%{opacity:.35}}@keyframes float{to{transform:translateY(34px) scale(1.06)}}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-26px,22px,0) scale(1.06)}}@keyframes shine{0%,55%{transform:translateX(-130%)}to{transform:translateX(130%)}}@keyframes ping{0%{box-shadow:0 0 0 0 rgba(220,38,38,.45)}70%{box-shadow:0 0 0 7px rgba(220,38,38,0)}to{box-shadow:0 0 0 0 rgba(220,38,38,0)}}@keyframes sheetUp{0%{opacity:0;transform:translateY(120%)}to{opacity:1;transform:none}}@keyframes sheetDown{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(120%)}}.view{animation:fadeUp .45s cubic-bezier(.22,1,.36,1) both}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 1px 2px rgba(15,23,42,.05),0 16px 34px -20px rgba(15,23,42,.2),inset 0 1px 0 var(--sheen)}.card.hoverable:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift);border-color:var(--accent)}.card.kpi{position:relative;overflow:hidden}.card.kpi:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift);border-color:var(--accent-line)}.btn{border:none;cursor:pointer;border-radius:10px;font-weight:700;font-size:13px}.btn-primary{background:linear-gradient(140deg,var(--accent),var(--accent-deep));color:#fff;box-shadow:0 8px 18px -8px var(--accent);padding:11px 18px;position:relative;overflow:hidden}.btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn-primary:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 35%,rgba(255,255,255,.4) 50%,transparent 65%);transform:translateX(-130%);transition:transform .7s ease;pointer-events:none}.btn-primary:hover:after{transform:translateX(130%)}.btn-ghost{background:var(--surface2);color:var(--text);padding:8px 14px}.btn-ghost:hover{background:var(--accent-soft);color:var(--accent)}.growbar{animation:growW .9s cubic-bezier(.22,1,.36,1) .15s both;transition:width .5s ease}.navitem{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text2);transition:color .2s ease}.navitem:hover{color:var(--text);transform:translateX(-2px)}.navitem.active{color:var(--accent);font-weight:700}.thead{font-size:11px;color:var(--text2);font-weight:700;text-align:start;padding:8px 10px}.tcell,.thead{border-bottom:1px solid var(--border)}.tcell{font-size:12.5px;padding:9px 10px}input.inp,select.inp,textarea.inp{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:11px 14px;font-size:14px;box-sizing:border-box}.lbl{display:block;font-size:11.5px;font-weight:700;color:var(--text2);margin-bottom:5px}.split-admin{display:grid;grid-template-columns:minmax(200px,260px) 1fr;grid-gap:16px;gap:16px}.split-side{display:grid;grid-template-columns:minmax(220px,300px) 1fr;grid-gap:16px;gap:16px}.split-aside{display:grid;grid-template-columns:minmax(260px,1fr) minmax(200px,280px);grid-gap:14px;gap:14px}.split-chat{display:grid;grid-template-columns:minmax(140px,220px) 1fr;grid-gap:14px;gap:14px}.split-new{display:grid;grid-template-columns:minmax(280px,1fr) minmax(220px,300px);grid-gap:16px;gap:16px}@media (max-width:760px){.split-admin,.split-aside,.split-chat,.split-new,.split-side{grid-template-columns:1fr}.split-aside,.split-chat{height:auto!important}}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px 14px;gap:12px 14px}@media (max-width:520px){.form-grid{grid-template-columns:1fr}}.form-grid .col-2{grid-column:1/-1}.modcard{background:var(--surface2);border:1px solid var(--border);border-radius:14px;padding:14px}.acl-chip{cursor:pointer;border-radius:99px;padding:6px 12px;font-size:11.5px;font-weight:700;display:inline-flex;align-items:center;gap:6px;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:transform .12s ease,background-color .15s ease,color .15s ease}.acl-chip:active{transform:scale(.95)}@keyframes scanline{0%{transform:translateY(-46%)}50%{transform:translateY(46%)}to{transform:translateY(-46%)}}@keyframes scanspin{to{transform:rotate(1turn)}}.scan-mesh{inset:0;border-radius:50%;opacity:.5;background:repeating-linear-gradient(0deg,transparent 0 13px,rgba(217,119,6,.1) 13px 14px),repeating-linear-gradient(90deg,transparent 0 13px,rgba(217,119,6,.1) 13px 14px)}.scan-line,.scan-mesh{position:absolute;pointer-events:none}.scan-line{left:6%;right:6%;height:3px;top:50%;border-radius:99px;background:linear-gradient(90deg,transparent,var(--ok),transparent);box-shadow:0 0 12px 2px var(--ok);animation:scanline 2s ease-in-out infinite}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.hexload{position:relative}.hexload,.socket{width:200px;height:200px}.socket{position:absolute;left:50%;margin-left:-100px;top:50%;margin-top:-100px}.socket .hex-brick{background:#ff5e0e;width:30px;height:17px;position:absolute;top:5px;animation:fade00 2s infinite}.socket .h2{transform:rotate(60deg)}.socket .h3{transform:rotate(-60deg)}.socket .gel{height:30px;width:30px;transition:all .3s;position:absolute;top:50%;left:50%}.socket .center-gel{margin-left:-15px;margin-top:-15px;animation:pulse00 2s infinite}.socket .c1{margin-left:-47px;margin-top:-15px}.socket .c2{margin-left:-31px;margin-top:-43px}.socket .c3{margin-left:1px;margin-top:-43px}.socket .c4{margin-left:17px;margin-top:-15px}.socket .c5{margin-left:-31px;margin-top:13px}.socket .c6{margin-left:1px;margin-top:13px}.socket .c7{margin-left:-63px;margin-top:-43px}.socket .c8{margin-left:33px;margin-top:-43px}.socket .c9{margin-left:-15px;margin-top:41px}.socket .c10{margin-left:-63px;margin-top:13px}.socket .c11{margin-left:33px;margin-top:13px}.socket .c12{margin-left:-15px;margin-top:-71px}.socket .c13{margin-left:-47px;margin-top:-71px}.socket .c14{margin-left:17px;margin-top:-71px}.socket .c15{margin-left:-47px;margin-top:41px}.socket .c16{margin-left:17px;margin-top:41px}.socket .c17{margin-left:-79px;margin-top:-15px}.socket .c18{margin-left:49px;margin-top:-15px}.socket .c19{margin-left:-63px;margin-top:-99px}.socket .c20{margin-left:33px;margin-top:-99px}.socket .c21{margin-left:1px;margin-top:-99px}.socket .c22{margin-left:-31px;margin-top:-99px}.socket .c23{margin-left:-63px;margin-top:69px}.socket .c24{margin-left:33px;margin-top:69px}.socket .c25{margin-left:1px;margin-top:69px}.socket .c26{margin-left:-31px;margin-top:69px}.socket .c28{margin-left:-95px;margin-top:-43px}.socket .c29{margin-left:-95px;margin-top:13px}.socket .c30{margin-left:49px;margin-top:41px}.socket .c31{margin-left:-79px;margin-top:-71px}.socket .c32{margin-left:-111px;margin-top:-15px}.socket .c33{margin-left:65px;margin-top:-43px}.socket .c34{margin-left:65px;margin-top:13px}.socket .c35{margin-left:-79px;margin-top:41px}.socket .c36{margin-left:49px;margin-top:-71px}.socket .c37{margin-left:81px;margin-top:-15px}.socket .r1{animation:pulse00 2s infinite;animation-delay:.2s}.socket .r2{animation:pulse00 2s infinite;animation-delay:.4s}.socket .r3{animation:pulse00 2s infinite;animation-delay:.6s}.socket .r1>.hex-brick{animation:fade00 2s infinite;animation-delay:.2s}.socket .r2>.hex-brick{animation:fade00 2s infinite;animation-delay:.4s}.socket .r3>.hex-brick{animation:fade00 2s infinite;animation-delay:.6s}@keyframes pulse00{0%{transform:scale(1)}50%{transform:scale(.01)}to{transform:scale(1)}}@keyframes fade00{0%{background:#ff8c00}50%{background:#ff5e0e}to{background:#ff8c00}}