:root{--brand:#0a0f1c;--brand-2:#0f1626;--brand-hover:#ffffff0b;--brand-active:#60a5fa1a;--brand-fg:#e5e7eb;--brand-fg-2:#94a3b8;--brand-fg-3:#64748b;--brand-rule:#ffffff0f;--brand-accent:#60a5fa;--p:#1d4ed8;--p-h:#1e3a8a;--p-tint:#eef4ff;--p-ring:#1d4ed838;--a:#b45309;--a-h:#92400e;--a-bg:#fffbeb;--a-light:#fde68a;--bg:#f3f5f9;--card:#fff;--raise:#fafbfd;--muted:#f5f7fa;--muted-2:#e7ebf2;--border:#e3e8f0;--border-2:#eef2f7;--ink:#0b1120;--ink-2:#1f2937;--ink-3:#475569;--ink-4:#64748b;--ink-5:#94a3b8;--ok-fg:#0f766e;--ok-bg:#ccfbf1;--inf-fg:#1d4ed8;--inf-bg:#dbeafe;--wrn-fg:#b45309;--wrn-bg:#fef3c7;--err-fg:#b91c1c;--err-bg:#fee2e2;--neu-fg:#334155;--neu-bg:#f1f5f9;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:28px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--r:6px;--r-sm:4px;--r-lg:10px;--r-xl:14px;--f:"Vazirmatn", "Noto Sans Arabic", system-ui, sans-serif;--t:.14s ease;--t-slow:.24s cubic-bezier(.2,.6,.2,1);--el-1:0 1px 2px #0f172a0a;--el-2:0 2px 8px #0f172a0f, 0 1px 2px #0f172a0a;--el-3:0 6px 24px #0f172a14, 0 2px 6px #0f172a0d}:root[data-theme=dark]{--bg:#0d1424;--card:#141d30;--raise:#1a2439;--muted:#182239;--muted-2:#243149;--border:#2b3850;--border-2:#22304a;--ink:#f8fafc;--ink-2:#e2e8f0;--ink-3:#cbd5e1;--ink-4:#94a3b8;--ink-5:#64748b;--p-tint:#1d4ed82e;--p-ring:#60a5fa59;--a-bg:#b453092e;--ok-fg:#5eead4;--ok-bg:#10b98126;--inf-fg:#93c5fd;--inf-bg:#3b82f626;--wrn-fg:#fdba74;--wrn-bg:#d977062e;--err-fg:#fca5a5;--err-bg:#dc26262e;--neu-fg:#cbd5e1;--neu-bg:#64748b33;--el-1:0 1px 2px #00000040;--el-2:0 2px 8px #00000059, 0 1px 2px #00000040;--el-3:0 6px 24px #00000073, 0 2px 6px #0000004d}:root[data-theme=dark] .tbl-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--f);background:var(--brand);color:var(--ink);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1, "ss01" 1;direction:rtl;font-size:13px;line-height:1.5;overflow:hidden}svg{display:block}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit}a{color:inherit;text-decoration:none}.app-root{background:var(--bg);height:100vh;padding:var(--sp-3);gap:var(--sp-3);transition:grid-template-columns var(--t-slow);grid-template-rows:1fr;grid-template-columns:232px 1fr;display:grid}.app-root.sb-collapsed{grid-template-columns:76px 1fr}.sb-wrap{height:100%;min-height:0;position:relative}.sidebar{background:var(--brand);border-radius:var(--r-xl);width:100%;height:100%;min-height:0;max-height:100%;box-shadow:var(--el-3), 0 0 0 1px #ffffff0e;flex-direction:column;display:flex;position:relative;overflow:hidden}.sb-collapse-btn{background:var(--card);width:24px;height:24px;color:var(--ink-4);border:1px solid var(--border);box-shadow:var(--el-2);cursor:pointer;z-index:20;transition:background var(--t), color var(--t), box-shadow var(--t);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:-12px;transform:translateY(-50%)}.sb-collapse-btn:hover{background:var(--muted);color:var(--ink-2)}.sb-collapse-btn:focus-visible{box-shadow:0 0 0 3px var(--p-ring);outline:none}.sb-collapse-btn svg{transition:transform var(--t-slow)}.sb-wrap.collapsed .sb-collapse-btn svg{transform:rotate(180deg)}@media (width>=768px){.sb-wrap.collapsed .sb-brand{padding-left:var(--sp-2);padding-right:var(--sp-2);justify-content:center}.sb-wrap.collapsed .sb-brand-text,.sb-wrap.collapsed .sb-search,.sb-wrap.collapsed .sb-label,.sb-wrap.collapsed .sb-link-label,.sb-wrap.collapsed .sb-count,.sb-wrap.collapsed .sb-user-info{display:none}.sb-wrap.collapsed .sb-link,.sb-wrap.collapsed .sb-user,.sb-wrap.collapsed .sb-logout{justify-content:center;padding-left:7px;padding-right:7px}}.sb-brand{padding:18px var(--sp-4) 16px;flex-shrink:0;align-items:center;gap:10px;display:flex}.sb-logo{background:linear-gradient(135deg,#1e3a8a 0%,#1d4ed8 100%);border-radius:7px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid;box-shadow:inset 0 0 0 1px #60a5fa40,inset 0 1px #ffffff14}.sb-brand-text{min-width:0}.sb-co{color:#fff;letter-spacing:-.01em;font-size:13.5px;font-weight:700;line-height:1.15}.sb-tag{color:var(--brand-fg-3);letter-spacing:.08em;text-transform:uppercase;margin-top:3px;font-size:9.5px;font-weight:600}.sb-search{width:calc(100% - var(--sp-4) * 2);margin:0 var(--sp-4) var(--sp-4);color:var(--brand-fg-3);text-align:right;cursor:pointer;transition:all var(--t);background:#ffffff0b;border:1px solid #ffffff12;border-radius:999px;flex-shrink:0;padding:7px 34px 7px 14px;font-size:11.5px;display:block;position:relative}.sb-search:hover,.sb-search:focus-visible{background:#ffffff14;border-color:#60a5fa59;outline:none;box-shadow:0 0 0 3px #60a5fa1f}.sb-search-text{pointer-events:none}.sb-search svg{color:var(--brand-fg-3);pointer-events:none;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.sb-kbd{color:var(--brand-fg-3);pointer-events:none;background:#ffffff0f;border:1px solid #ffffff12;border-radius:999px;padding:1px 6px;font-size:9px;font-weight:600;position:absolute;top:50%;left:6px;transform:translateY(-50%)}.sb-body{min-height:0;padding:0 var(--sp-2) var(--sp-4);scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex:1 1 0;overflow:hidden auto}.sb-body::-webkit-scrollbar{width:4px}.sb-body::-webkit-scrollbar-track{background:0 0}.sb-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:999px}.sb-body::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.sb-group{padding:var(--sp-3) 0 var(--sp-1)}.sb-group+.sb-group{border-top:1px solid var(--brand-rule);margin-top:var(--sp-2);padding-top:var(--sp-4)}.sb-label{letter-spacing:.12em;text-transform:uppercase;color:var(--brand-fg-3);padding:0 var(--sp-3) var(--sp-2);font-size:9.5px;font-weight:700}.sb-link{width:100%;color:var(--brand-fg-2);text-align:right;cursor:pointer;transition:background var(--t), color var(--t), transform var(--t);background:0 0;border:none;border-radius:999px;align-items:center;gap:9px;margin:2px 0;padding:7px 12px;font-size:12.5px;font-weight:500;display:flex;position:relative}.sb-link:hover{background:var(--brand-hover);color:var(--brand-fg)}.sb-link:hover .sb-ic svg{opacity:1}.sb-link:focus-visible{background:var(--brand-hover);box-shadow:0 0 0 2px var(--brand-accent) inset;outline:none}.sb-link.active{color:#fff;background:linear-gradient(135deg,#60a5fa2e,#60a5fa12);font-weight:600;box-shadow:inset 0 0 0 1px #60a5fa38}.sb-ic{width:22px;height:22px;transition:background var(--t);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sb-ic svg{opacity:.7;width:14px;height:14px;transition:opacity var(--t)}.sb-link.active .sb-ic{background:#60a5fa33}.sb-link.active .sb-ic svg{opacity:1;color:var(--brand-accent)}.sb-link-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sb-count{color:var(--brand-fg-2);text-align:center;background:#ffffff12;border-radius:999px;min-width:20px;margin-right:auto;padding:1px 7px;font-size:10px;font-weight:700}.sb-foot{padding:var(--sp-3) var(--sp-3) var(--sp-3);border-top:1px solid var(--brand-rule);flex-shrink:0;margin-top:auto}.sb-user{padding:7px var(--sp-2);border-radius:var(--r-lg);cursor:pointer;margin-bottom:var(--sp-2);transition:background var(--t), border-color var(--t);background:#ffffff08;border:1px solid #ffffff0d;align-items:center;gap:9px;display:flex}.sb-user:hover,.sb-user:focus-visible{background:var(--brand-hover);border-color:#ffffff17;outline:none}.sb-user-av{background:linear-gradient(135deg, var(--p) 0%, var(--p-h) 100%);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:11px;font-weight:800;display:grid}.sb-user-info{flex:1;min-width:0}.sb-user-name{color:var(--brand-fg);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.sb-user-role{color:var(--brand-fg-3);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:10px;overflow:hidden}.sb-logout{width:100%;color:var(--brand-fg-3);transition:all var(--t);cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:8px;padding:7px 12px;font-size:11.5px;font-weight:500;display:flex}.sb-logout:hover{background:var(--brand-hover);color:var(--err-fg)}.sb-logout svg{opacity:.7}.main-col{background:var(--bg);border-radius:var(--r-xl);box-shadow:var(--el-2), 0 0 0 1px var(--border-2);flex-direction:column;height:100%;display:flex;overflow:hidden}.ctx-bar{background:var(--card);border-bottom:1px solid var(--border-2);height:50px;padding:0 var(--sp-5);align-items:center;gap:var(--sp-3);z-index:10;flex-shrink:0;display:flex}.ctx-crumbs{align-items:center;gap:var(--sp-2);color:var(--ink-4);font-size:12.5px;display:flex}.ctx-crumbs span:last-child{color:var(--ink-2);font-weight:600}.ctx-spacer{flex:1}.ctx-search-trigger{background:var(--raise,#f8fafc);border:1px solid var(--border-2,#e2e8f0);color:var(--ink-4,#64748b);cursor:pointer;border-radius:8px;align-items:center;gap:8px;width:280px;max-width:100%;padding:5px 12px;font-size:12px;transition:all .15s;display:flex}.ctx-search-trigger:hover{background:var(--raise,#f1f5f9);color:var(--ink-2,#334155);border-color:var(--border,#cbd5e1)}.ctx-search-trigger:focus-visible{box-shadow:0 0 0 2px var(--p);outline:none}.ctx-search-label{text-align:right;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.ctx-search-kbd{background:var(--card,#fff);border:1px solid var(--border,#cbd5e1);color:var(--ink-4,#64748b);border-radius:4px;flex-shrink:0;padding:1px 5px;font-family:monospace,sans-serif;font-size:10.5px;font-weight:600}@media (width<=768px){.ctx-search-trigger{justify-content:center;width:34px;padding:0}.ctx-search-label,.ctx-search-kbd{display:none}}.ctx-btn{border-radius:var(--r);width:32px;height:32px;color:var(--ink-4);transition:all var(--t);flex-shrink:0;place-items:center;display:grid}.ctx-btn:hover{background:var(--muted);color:var(--ink-2)}.ctx-btn:focus-visible{box-shadow:0 0 0 3px var(--p-ring);outline:none}.sb-toggle{display:none}#main-content{scrollbar-width:thin;scrollbar-color:var(--muted-2) transparent;flex:1;overflow-y:auto}#main-content::-webkit-scrollbar{width:5px}#main-content::-webkit-scrollbar-thumb{background:var(--muted-2);border-radius:4px}.content{padding:var(--sp-6) var(--sp-7)}.skip-link{background:var(--p);color:#fff;padding:var(--sp-2) var(--sp-4);z-index:9999;border-radius:0 0 var(--r) 0;position:absolute;top:-40px;right:0}.skip-link:focus{top:0}.btn{align-items:center;gap:var(--sp-2);padding:0 var(--sp-4);border-radius:var(--r);cursor:pointer;height:34px;transition:all var(--t);white-space:nowrap;border:none;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex}.btn:focus-visible{box-shadow:0 0 0 3px var(--p-ring);outline:none}.btn[disabled],.btn.is-loading{opacity:.55;cursor:not-allowed;pointer-events:none}.btn-p{background:var(--p);color:#fff;box-shadow:var(--el-1)}.btn-p:hover{background:var(--p-h)}.btn-s{background:var(--card);color:var(--ink-2);border:1px solid var(--border)}.btn-s:hover{background:var(--muted);border-color:var(--muted-2)}.btn-a{background:var(--a);color:#fff}.btn-a:hover{background:var(--a-h)}.btn-d{background:var(--err-bg);color:var(--err-fg)}.btn-d:hover{background:#fee2e2}.btn-g{color:var(--ink-3);background:0 0}.btn-g:hover{background:var(--muted)}.btn-sm{height:28px;padding:0 var(--sp-3);font-size:11.5px}.btn-xs{height:24px;padding:0 var(--sp-2);font-size:11px}.badge{white-space:nowrap;letter-spacing:.02em;border-radius:20px;align-items:center;gap:4px;padding:3px 9px;font-size:10.5px;font-weight:700;line-height:1.3;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.b-ok{color:var(--ok-fg);background:var(--ok-bg)}.b-inf{color:var(--inf-fg);background:var(--inf-bg)}.b-wrn{color:var(--wrn-fg);background:var(--wrn-bg)}.b-err{color:var(--err-fg);background:var(--err-bg)}.b-neu{color:var(--neu-fg);background:var(--neu-bg)}.b-plain:before{display:none}.chip{cursor:pointer;border:1px solid var(--border-2);color:var(--ink-3);background:var(--raise);transition:all var(--t);white-space:nowrap;border-radius:20px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:500;line-height:1.4;display:inline-flex}.chip svg{flex-shrink:0}.chip:hover{background:var(--muted-2);color:var(--ink-2);border-color:var(--border)}.chip.on{background:var(--p);color:#fff;border-color:var(--p);font-weight:600}.chip.on svg{color:#fff}.chip:focus-visible{box-shadow:0 0 0 3px var(--p-ring);outline:none}.flash-toast{border-radius:var(--r);white-space:nowrap;flex-shrink:0;align-items:center;gap:7px;padding:5px 12px;font-size:12px;font-weight:500;animation:.2s cubic-bezier(.16,1,.3,1) both fadeInScale;display:inline-flex}.flash-toast svg{flex-shrink:0}.flash-toast span{white-space:nowrap;line-height:1.4}.flash-toast.success{background:var(--ok-bg,#16a34a14);color:var(--ok-fg,#16a34a);border:1px solid var(--ok-bd,#16a34a40)}.flash-toast.error{background:var(--err-bg,#dc262614);color:var(--err-fg,#dc2626);border:1px solid var(--err-bd,#dc262640)}.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);transition:box-shadow var(--t);overflow:hidden}.panel:hover{box-shadow:var(--el-2)}.panel.flush{background:0 0;border:none;border-radius:0}.panel-head{padding:14px var(--sp-5) 12px;justify-content:space-between;align-items:center;gap:var(--sp-3);border-bottom:1px solid var(--border-2);display:flex}.panel-title{letter-spacing:-.01em;color:var(--ink);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.panel-title .pt-pill{background:var(--p-tint);color:var(--p);border-radius:10px;padding:1px 7px;font-size:10px;font-weight:700}.panel-sub{color:var(--ink-4);font-size:11px}.panel-body{padding:var(--sp-5)}.panel-actions{align-items:center;gap:var(--sp-2);display:flex}.settings-form{gap:var(--sp-5);display:grid}.setting-row{justify-content:space-between;align-items:center;gap:var(--sp-5);padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--raise);display:flex}.setting-copy{min-width:0}.setting-title{color:var(--ink-2);font-size:13px;font-weight:700}.setting-description{margin-top:var(--sp-1);color:var(--ink-4);font-size:12px}.setting-status{margin-top:var(--sp-2);color:var(--ink-4);font-size:11px}.setting-status.enabled{color:var(--ok-fg)}.setting-toggle{cursor:pointer;flex:none;display:inline-flex;position:relative}.setting-toggle input{opacity:0;width:1px;height:1px;position:absolute}.setting-toggle-track{background:var(--muted-2);width:44px;height:24px;transition:background var(--t);border-radius:999px;align-items:center;padding:3px;display:flex}.setting-toggle-thumb{background:var(--card);width:18px;height:18px;box-shadow:var(--el-1);transition:transform var(--t-slow);border-radius:50%}.setting-toggle input:checked+.setting-toggle-track{background:var(--p)}.setting-toggle input:checked+.setting-toggle-track .setting-toggle-thumb{transform:translate(-20px)}.setting-toggle input:focus-visible+.setting-toggle-track{box-shadow:0 0 0 3px var(--p-ring)}.settings-actions{justify-content:flex-start;display:flex}.page-hdr{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);margin-bottom:var(--sp-6);display:flex}.page-hdr-text{min-width:0}.page-hdr-actions{align-items:center;gap:var(--sp-2);flex-shrink:0;display:flex}.page-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--a);align-items:center;gap:7px;margin-bottom:6px;font-size:10.5px;font-weight:700;display:flex}.page-eyebrow:before{content:"";background:var(--a);border-radius:1px;flex-shrink:0;width:18px;height:2px}.page-h1{letter-spacing:-.028em;color:var(--ink);font-size:28px;font-weight:800;line-height:1.1}.page-sub{color:var(--ink-4);margin-top:var(--sp-2);font-size:12.5px;line-height:1.5}.field{margin-bottom:var(--sp-4)}.f-label{color:var(--ink-2);margin-bottom:var(--sp-2);font-size:12px;font-weight:600;display:block}.f-label span[aria-hidden]{color:var(--err-fg);margin-right:2px}.input{width:100%;padding:8px var(--sp-3);background:var(--card);border:1.5px solid var(--border);border-radius:var(--r);color:var(--ink);transition:all var(--t);font-size:13px;line-height:1.5}.input::placeholder{color:var(--ink-5)}.input:focus{border-color:var(--p);box-shadow:0 0 0 3px var(--p-ring);outline:none}.input.err{border-color:var(--err-fg)}.input.err:focus{box-shadow:0 0 0 3px #b91c1c2e}.voice-field-wrap{width:100%;display:block;position:relative}.voice-field-wrap>.input{width:100%;padding-left:36px}.voice-field-wrap.has-textarea>.input,.voice-field-wrap>textarea.input{resize:vertical}.voice-field-control{width:26px;height:26px;color:var(--ink-4);border-radius:var(--r-sm);cursor:pointer;transition:all var(--t);z-index:2;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;left:6px;transform:translateY(-50%)}.voice-field-wrap.has-textarea .voice-field-control{top:7px;transform:none}.voice-field-wrap:has(textarea) .voice-field-control{top:7px;transform:none}.voice-field-control:hover,.voice-field-control:focus-visible{color:var(--p);background:var(--p-tint);outline:none}.voice-field-control.is-listening{color:var(--err-fg);background:var(--err-bg);animation:1.2s ease-in-out infinite voicePulse}.voice-field-wrap.has-textarea .voice-field-control.is-listening{animation:1.2s ease-in-out infinite voicePulseTextarea}.voice-field-wrap:has(textarea) .voice-field-control.is-listening{animation:1.2s ease-in-out infinite voicePulseTextarea}.voice-field-icon,.voice-field-icon svg,.voice-field-control svg,.voice-filler-button svg{width:15px;height:15px;display:block}@keyframes voicePulse{0%,to{opacity:1;transform:translateY(-50%)scale(1)}50%{opacity:.85;transform:translateY(-50%)scale(1.15)}}@keyframes voicePulseTextarea{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.15)}}.voice-filler{gap:var(--sp-2);display:grid}.voice-filler-input{width:100%;display:block;position:relative}.voice-filler-textarea{resize:vertical;width:100%;padding-left:36px}.voice-filler-button{border-radius:var(--r-sm);width:26px;height:26px;color:var(--ink-4);cursor:pointer;transition:all var(--t);z-index:2;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:7px;left:6px}.voice-filler-button:hover,.voice-filler-button:focus-visible{color:var(--p);background:var(--p-tint);outline:none}.voice-filler-button.listening{color:var(--err-fg);background:var(--err-bg);animation:1.2s ease-in-out infinite voicePulseTextarea}.voice-filler-interim,.voice-filler-status{color:var(--ink-4);font-size:11.5px}.voice-filler-status.error{color:var(--err-fg)}.f-error{color:var(--err-fg);margin-top:var(--sp-1);font-size:11.5px}.f-hint{color:var(--ink-4);margin-top:var(--sp-1);font-size:11.5px}.auth-shell{background:var(--brand);min-height:100vh;padding:var(--sp-6);place-items:center;display:grid}.auth-card{background:var(--card);border-radius:var(--r-lg);width:100%;max-width:380px;padding:var(--sp-8) var(--sp-7);box-shadow:var(--el-3)}.auth-brand{align-items:center;gap:var(--sp-3);padding-bottom:var(--sp-6);margin-bottom:var(--sp-6);border-bottom:1px solid var(--border-2);display:flex}.auth-logo{background:linear-gradient(135deg,#1e3a8a 0%,#1d4ed8 100%);border-radius:9px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid;box-shadow:inset 0 0 0 1px #60a5fa40}.auth-co{letter-spacing:-.015em;color:var(--ink);font-size:15px;font-weight:700}.auth-tag{color:var(--ink-4);margin-top:2px;font-size:11.5px}.auth-title{letter-spacing:-.02em;margin-bottom:var(--sp-5);font-size:20px;font-weight:700}.auth-row{margin:var(--sp-4) 0 var(--sp-5);justify-content:space-between;align-items:center;display:flex}.auth-remember{align-items:center;gap:var(--sp-2);color:var(--ink-3);cursor:pointer;font-size:12.5px;display:flex}.kpi-hero{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);margin-bottom:var(--sp-6);grid-template-columns:1.4fr 1fr 1fr;display:grid;overflow:hidden}.kpi-pri{padding:var(--sp-5) var(--sp-5) var(--sp-6);border-left:1px solid var(--border);position:relative}.kpi-pri:before{content:"";background:linear-gradient(90deg, var(--p) 0%, var(--a) 100%);height:3px;position:absolute;top:0;left:0;right:0}.kpi-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--a);margin-bottom:var(--sp-2);align-items:center;gap:7px;font-size:10.5px;font-weight:700;display:flex}.kpi-eyebrow:before{content:"";background:var(--a);border-radius:1px;width:14px;height:2px}.kpi-value{letter-spacing:-.035em;color:var(--ink);font-feature-settings:"tnum" 1;font-size:48px;font-weight:800;line-height:1}.kpi-delta{margin-top:var(--sp-2);border-radius:20px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.kpi-delta.up{background:var(--ok-bg);color:var(--ok-fg)}.kpi-delta.down{background:var(--err-bg);color:var(--err-fg)}.kpi-note{color:var(--ink-3);margin-top:var(--sp-2);font-size:11.5px}.kpi-sec{padding:var(--sp-5);border-left:1px solid var(--border);flex-direction:column;display:flex;position:relative}.kpi-sec:last-child{border-left:none}.kpi-sec-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);margin-bottom:8px;font-size:10px;font-weight:700}.kpi-sec-value{letter-spacing:-.025em;color:var(--ink);font-feature-settings:"tnum" 1;font-size:26px;font-weight:800;line-height:1}.kpi-sec-value.warn{color:var(--err-fg)}.kpi-sec-value.ok{color:var(--ok-fg)}.kpi-sec-foot{color:var(--ink-4);align-items:center;gap:5px;margin-top:auto;padding-top:10px;font-size:10.5px;display:flex}.delta-i{font-weight:700}.delta-i.up{color:var(--ok-fg)}.delta-i.down{color:var(--err-fg)}.target-row{gap:var(--sp-4);padding:var(--sp-3) 0;grid-template-columns:1fr auto;align-items:center;display:grid}.target-row+.target-row{border-top:1px solid var(--border-2)}.target-label{color:var(--ink-2);font-size:12.5px;font-weight:600}.target-sub{color:var(--ink-4);margin-top:2px;font-size:11px}.target-bar-wrap{width:100%}.target-bar{background:var(--muted-2);border-radius:3px;height:6px;margin-top:6px;overflow:hidden}.target-fill{background:var(--p);height:100%;transition:width var(--t-slow);border-radius:3px}.target-fill.warn{background:var(--wrn-fg)}.target-fill.ok{background:var(--ok-fg)}.target-pct{color:var(--ink-2);white-space:nowrap;font-feature-settings:"tnum" 1;text-align:left;direction:ltr;min-width:48px;font-size:13px;font-weight:700}.dash-grid{gap:var(--sp-5);margin-top:var(--sp-5);grid-template-columns:1fr 1.2fr;display:grid}.tbl-filters{border-bottom:1px solid var(--border-2);background:var(--raise);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;display:flex}.tbl-search{flex:240px;align-items:center;min-width:180px;max-width:340px;display:flex;position:relative}.tbl-search .input{background:var(--card);border:1.5px solid var(--border);border-radius:var(--r);width:100%;height:34px;color:var(--ink);transition:all var(--t);padding-left:28px;padding-right:34px;font-size:12px}.tbl-search .input:focus{border-color:var(--p);box-shadow:0 0 0 2px var(--p-ring);outline:none}.tbl-search-icon{color:var(--ink-4);pointer-events:none;align-items:center;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.tbl-search-clear{width:22px;height:22px;color:var(--ink-4);cursor:pointer;transition:all var(--t);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:50%;left:6px;transform:translateY(-50%)}.tbl-search-clear:hover{background:var(--muted-2);color:var(--ink)}.tbl-filters-items{flex-wrap:wrap;flex:auto;justify-content:flex-end;align-items:center;gap:8px;display:flex}.tbl-select{background-color:var(--card);border:1.5px solid var(--border);border-radius:var(--r);height:34px;color:var(--ink);cursor:pointer;transition:all var(--t);appearance:none;text-overflow:ellipsis;white-space:nowrap;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:8px;background-repeat:no-repeat;min-width:140px;max-width:100%;padding:0 10px 0 28px;font-family:inherit;font-size:12px;font-weight:500;line-height:normal;overflow:hidden}.tbl-select:focus{border-color:var(--p);box-shadow:0 0 0 2px var(--p-ring);outline:none}.tbl-select:hover{border-color:var(--ink-4)}.tbl-filter-reset{border-radius:var(--r);height:34px;color:var(--ink-4);cursor:pointer;border:1px dashed var(--border);transition:all var(--t);white-space:nowrap;background:0 0;flex-shrink:0;align-items:center;gap:5px;padding:0 12px;font-family:inherit;font-size:11.5px;font-weight:500;display:inline-flex}.tbl-filter-reset:hover{background:var(--muted);color:var(--err-fg);border-color:var(--err-fg)}.panel-flush{overflow:hidden}.panel-flush>.panel-body{padding:0}.tbl-wrap{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:850px}thead th{padding:10px var(--sp-4);text-align:right;letter-spacing:.08em;color:var(--ink-4);text-transform:uppercase;background:var(--card);border-bottom:1px solid var(--border);white-space:nowrap;z-index:100;font-size:10.5px;font-weight:700;position:sticky;top:0;overflow:hidden}thead th.right{text-align:left;direction:ltr}thead th.col-actions{text-align:center;width:140px}tbody td{padding:11px var(--sp-4);border-bottom:1px solid var(--border-2);vertical-align:middle;color:var(--ink);font-size:12.5px;overflow:hidden}tbody td.col-actions{text-align:center;white-space:nowrap;overflow:visible}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background var(--t);cursor:pointer}tbody tr:hover td{background:var(--raise)}.td-mono{color:var(--ink-4);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;font-family:ui-monospace,JetBrains Mono,monospace;font-size:11px;overflow:hidden}.td-num{text-align:left;font-feature-settings:"tnum" 1;white-space:nowrap;direction:ltr;font-weight:700}.td-name{letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600;overflow:hidden}.td-name-sub{color:var(--ink-4);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10.5px;overflow:hidden}.td-desc{-webkit-line-clamp:2;color:var(--ink-3);-webkit-box-orient:vertical;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.td-agent{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.td-date{color:var(--ink-4);white-space:nowrap;direction:ltr;font-size:11px}.td-date.td-overdue{color:var(--err-fg);font-weight:700}[data-tooltip]{position:relative}[data-tooltip]:hover:after{content:attr(data-tooltip);background:var(--ink-2);color:var(--card);border-radius:var(--r-sm);white-space:pre-wrap;z-index:500;max-width:260px;box-shadow:var(--el-2);pointer-events:none;text-align:right;padding:4px 8px;font-size:11px;font-weight:400;line-height:1.5;position:absolute;bottom:calc(100% + 6px);right:0}.tbl-foot{padding:10px var(--sp-5);border-top:1px solid var(--border-2);color:var(--ink-4);background:var(--raise);justify-content:space-between;align-items:center;font-size:11.5px;display:flex}.pagination{align-items:center;gap:var(--sp-1);display:flex}.pg-btn{border-radius:var(--r);width:30px;height:30px;color:var(--ink-3);cursor:pointer;transition:all var(--t);background:0 0;border:none;place-items:center;font-size:12px;font-weight:600;display:grid}.pg-btn:hover{background:var(--muted-2);color:var(--ink)}.pg-btn:focus-visible{box-shadow:0 0 0 3px var(--p-ring);outline:none}.pg-btn.active{background:var(--p);color:#fff}.pg-btn[disabled]{opacity:.4;cursor:not-allowed;pointer-events:none}.pg-dots{padding:0 var(--sp-1);color:var(--ink-4);font-size:12px}.empty-state{padding:var(--sp-10) var(--sp-6);text-align:center;color:var(--ink-4)}.empty-state svg{color:var(--ink-5);margin:0 auto var(--sp-3)}.empty-title{color:var(--ink-3);font-size:13px;font-weight:600}.empty-sub{color:var(--ink-4);margin-top:var(--sp-1);font-size:12.5px}.empty-action{margin-top:var(--sp-4)}.sec-hdr{margin:var(--sp-6) 0 var(--sp-3);justify-content:space-between;align-items:center;gap:var(--sp-4);display:flex}.sec-title{letter-spacing:-.015em;color:var(--ink);align-items:baseline;gap:10px;margin:0;font-size:15px;font-weight:700;display:flex}.sec-count{color:var(--ink-4);letter-spacing:.02em;font-size:11px;font-weight:600}.sb-backdrop{z-index:190;background:#00000080;display:none;position:fixed;inset:0}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.page-in{animation:.22s cubic-bezier(.2,.7,.2,1) both pageIn}.kanban-page{flex-direction:column;height:calc(100vh - 120px);min-height:0;display:flex}.kanban-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.kanban-stage-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-shrink:0;align-items:center;gap:6px;margin-bottom:12px;padding:2px 2px 8px;display:flex;overflow-x:auto}.kanban-stage-tabs::-webkit-scrollbar{display:none}.kanban-tab-pill{background:var(--card);border:1.5px solid var(--border);color:var(--ink-3);white-space:nowrap;cursor:pointer;transition:all var(--t);border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:5px 12px;font-size:11.5px;font-weight:600;display:inline-flex}.kanban-tab-pill:hover{border-color:var(--p);color:var(--ink)}.kanban-tab-pill.active{background:var(--p);border-color:var(--p);color:#fff;box-shadow:0 2px 6px var(--p-ring)}.kanban-tab-pill.active .badge{color:#fff;background:#ffffff40}.kanban-board-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--muted-2) transparent;flex:1;align-items:stretch;gap:14px;min-height:0;padding:2px 2px 14px;display:flex;overflow:auto hidden}.kanban-board-scroll::-webkit-scrollbar{height:6px}.kanban-board-scroll::-webkit-scrollbar-thumb{background:var(--muted-2);border-radius:4px}.kanban-board-scroll::-webkit-scrollbar-track{background:var(--raise);border-radius:4px}.kanban-col{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);width:305px;height:100%;min-height:0;box-shadow:var(--el-1);transition:border-color var(--t), background-color var(--t), box-shadow var(--t);flex-direction:column;flex:0 0 305px;display:flex;position:relative}.kanban-col.is-drag-over{border-color:var(--p)!important;box-shadow:0 0 0 2px var(--p-ring), var(--el-2)!important;background:#10b9810a!important}.kanban-col-hdr{border-bottom:1px solid var(--border);background:var(--raise);border-top-right-radius:var(--r-lg);border-top-left-radius:var(--r-lg);flex-shrink:0;justify-content:space-between;align-items:center;padding:11px 14px;display:flex}.kanban-col-body{scrollbar-width:thin;scrollbar-color:var(--muted-2) transparent;flex-direction:column;flex:1;gap:9px;min-height:0;padding:10px;display:flex;overflow-y:auto}.kanban-col-body::-webkit-scrollbar{width:4px}.kanban-col-body::-webkit-scrollbar-thumb{background:var(--muted-2);border-radius:4px}.kanban-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--el-1);cursor:grab;transition:transform var(--t), box-shadow var(--t), border-color var(--t), opacity var(--t);padding:11px 12px;position:relative}.kanban-card:hover{border-color:var(--border-2);box-shadow:var(--el-2)}.kanban-card.is-dragging{opacity:.45;box-shadow:var(--el-3);transform:scale(.98)}.kanban-next-btn{background:var(--raise);color:var(--ink-2);border:1px solid var(--border);transition:all var(--t);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:10.5px;font-weight:600;display:inline-flex}.kanban-next-btn:hover{background:var(--p);border-color:var(--p);color:#fff}.kanban-stage-selector{justify-content:center;align-items:center;display:inline-flex;position:relative}.kanban-stage-select{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;position:absolute;top:0;left:0}.kanban-stage-select-btn{background:var(--raise);border:1px solid var(--border);width:24px;height:24px;color:var(--ink-4);transition:all var(--t);border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.kanban-stage-selector:hover .kanban-stage-select-btn{background:var(--muted);color:var(--ink);border-color:var(--border-2)}.kanban-stage-focus{flex-direction:column;gap:12px;width:100%;max-width:680px;margin:0 auto;padding-bottom:24px;display:flex}@media (width<=767px){body{overflow:auto}.app-root,.app-root.sb-collapsed{grid-template-columns:1fr;gap:0;padding:0}.sidebar{z-index:200;width:260px;height:100%;transition:transform var(--t-slow);border-radius:0;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.app-root.sb-open .sidebar{transform:translate(0)}.app-root.sb-open .sb-backdrop{display:block}.sb-collapse-btn{display:none}.main-col{box-shadow:none;border-radius:0;height:auto;min-height:100dvh}.sb-toggle{display:grid}.content{padding:var(--sp-4) var(--sp-3)}.page-hdr{margin-bottom:var(--sp-4);flex-direction:column;align-items:stretch;gap:12px}.page-hdr-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px;width:100%}.page-h1{font-size:20px}.tbl-filters{flex-direction:column;align-items:stretch;gap:10px;padding:12px}.tbl-search{width:100%!important;min-width:100%!important;max-width:100%!important}.tbl-search .input{border-radius:8px!important;height:38px!important;padding-right:36px!important;font-size:13px!important}.tbl-filters-items{grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important;display:grid!important}.tbl-filters-items>.tbl-select:only-of-type,.tbl-filters-items>.tbl-select:nth-child(odd):last-of-type{grid-column:span 2!important}.tbl-select{text-overflow:ellipsis!important;white-space:nowrap!important;border-radius:8px!important;width:100%!important;min-width:0!important;max-width:100%!important;height:38px!important;padding:0 10px 0 26px!important;font-size:12.5px!important;overflow:hidden!important}.tbl-filter-reset{background:var(--card)!important;border:1px dashed var(--err-fg)!important;width:100%!important;height:36px!important;color:var(--err-fg)!important;border-radius:8px!important;grid-column:1/-1!important;justify-content:center!important;margin-top:2px!important;font-size:12px!important;font-weight:600!important}.kanban-page{height:auto;min-height:0}.kanban-board-scroll{scroll-snap-type:x mandatory;gap:12px;height:auto;min-height:480px;margin-left:-12px;margin-right:-12px;padding-bottom:24px;padding-left:12px;padding-right:12px}.kanban-col{scroll-snap-align:center;height:calc(100dvh - 210px);max-height:calc(100dvh - 210px);flex:0 0 calc(100vw - 36px)!important;width:calc(100vw - 36px)!important}.kpi-hero{grid-template-columns:1fr}.kpi-pri,.kpi-sec{border-left:none;border-bottom:1px solid var(--border)}.kpi-sec:last-child{border-bottom:none}.kpi-value{font-size:40px}.dash-grid{grid-template-columns:1fr}}@media (width<=420px){.tbl-filters-items{grid-template-columns:1fr!important}.tbl-filters-items>.tbl-select{grid-column:span 1!important}}@media (width>=768px) and (width<=1024px){.app-root{padding:var(--sp-2);gap:var(--sp-2);grid-template-columns:76px 1fr}.tbl-filters{gap:8px;padding:10px 14px}.tbl-search{flex:200px;max-width:260px}.tbl-filters-items{flex:auto;gap:6px}.tbl-select{flex:auto;min-width:120px}.kanban-col{flex:0 0 280px;width:280px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chip.on{background:var(--muted-2);color:var(--ink)}}:root[data-theme=dark] .chip.on{background:var(--muted-2);color:var(--ink)}.leaflet-div-icon.map-pin-icon{background:0 0;border:none}.leaflet-container{font-family:var(--f);background:var(--muted)}
