@font-face{font-family:Vazirmatn;src:url(/assets/Vazirmatn-Variable-BeciDpKm.woff2)format("woff2-variations"),url(/assets/Vazirmatn-Variable-BeciDpKm.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font:"Vazirmatn", system-ui, -apple-system, "Segoe UI", Tahoma, sans-serif;--brand-50:#e8f6f6;--brand-100:#c6eaea;--brand-200:#91d5d7;--brand-300:#55bcc0;--brand-400:#22a2a8;--brand-500:#0e8a91;--brand-600:#0b7179;--brand-700:#0b5b61;--brand-800:#0c484d;--gold-400:#f2b544;--gold-500:#e8a317;--gold-600:#c9850a;--bg:#f4f6f8;--bg-subtle:#eef1f4;--surface:#fff;--surface-2:#f8fafb;--surface-3:#f1f4f6;--surface-hover:#f3f6f8;--overlay:#09101c73;--text:#0f1b2a;--text-2:#475467;--text-3:#6b7a8c;--text-on-brand:#fff;--border:#e2e7ec;--border-strong:#cbd3db;--divider:#edf0f3;--primary:var(--brand-500);--primary-hover:var(--brand-600);--primary-soft:var(--brand-50);--primary-text:var(--brand-700);--focus-ring:0 0 0 3px #0e8a9147;--success:#13895a;--success-soft:#e5f6ee;--warning:#b97503;--warning-soft:#fdf3dd;--danger:#d43f44;--danger-soft:#fdeceb;--info:#3557d4;--info-soft:#ebefff;--series-1:#2a78d6;--series-3:#1baf7a;--radius-xs:6px;--radius-sm:8px;--radius:12px;--radius-lg:16px;--radius-xl:22px;--shadow-xs:0 1px 2px #1018280d;--shadow-sm:0 1px 3px #10182812, 0 1px 2px #1018280a;--shadow:0 6px 18px -6px #1018281f, 0 2px 6px -2px #1018280f;--shadow-lg:0 24px 48px -16px #10182838;--sidebar-w:264px;--sidebar-w-collapsed:76px;--topbar-h:64px;--ease:cubic-bezier(.2, .8, .2, 1)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1220;--bg-subtle:#0e1627;--surface:#121b2d;--surface-2:#162036;--surface-3:#1b2740;--surface-hover:#1a2539;--overlay:#02060ea8;--text:#e8edf4;--text-2:#b3bfcd;--text-3:#8795a8;--border:#243149;--border-strong:#33425e;--divider:#1d2840;--primary:#22a8ae;--primary-hover:#3bbcc2;--primary-soft:#22a8ae24;--primary-text:#6fd3d6;--focus-ring:0 0 0 3px #3bbcc259;--success:#3dc48b;--success-soft:#3dc48b24;--warning:#f0b23a;--warning-soft:#f0b23a24;--danger:#f2696d;--danger-soft:#f2696d24;--info:#7d97f2;--info-soft:#7d97f226;--series-1:#3987e5;--series-3:#199e70;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 3px #00000059;--shadow:0 8px 22px -8px #0000008c;--shadow-lg:0 24px 48px -12px #0009}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body{margin:0;padding:0}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01";transition:background-color .2s var(--ease), color .2s var(--ease);direction:rtl;font-size:14px;line-height:1.65}#root{min-height:100dvh}h1,h2,h3,h4,h5{color:var(--text);margin:0;font-weight:700;line-height:1.35}h1{font-size:22px;font-weight:800}h2{font-size:17px}h3{font-size:15px}p{margin:0}a{color:var(--primary-text);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{box-shadow:var(--focus-ring);outline:none}::selection{background:var(--brand-200);color:var(--brand-800)}.num,.tabular{font-variant-numeric:tabular-nums}.ltr{text-align:start;direction:ltr;unicode-bidi:isolate}.muted{color:var(--text-3)}.text-2{color:var(--text-2)}.small{font-size:12.5px}.strong{font-weight:600}.pre-line{white-space:pre-line}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.flip-rtl{transform:scaleX(-1)}.stack{gap:var(--gap,12px);flex-direction:column;display:flex}.row{align-items:center;gap:var(--gap,8px);display:flex}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.grow{flex:1;min-width:0}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}@media (max-width:760px){.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:padding-box;border:3px solid #0000;border-radius:10px}::-webkit-scrollbar-track{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.btn{--btn-bg:var(--surface);--btn-fg:var(--text);--btn-border:var(--border-strong);border-radius:var(--radius-sm);border:1px solid var(--btn-border);background:var(--btn-bg);height:38px;color:var(--btn-fg);white-space:nowrap;transition:background-color .15s var(--ease), border-color .15s var(--ease), box-shadow .15s var(--ease), transform 50ms;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:13.5px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-hover)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn svg{flex-shrink:0;width:17px;height:17px}.btn-primary{--btn-bg:var(--primary);--btn-fg:var(--text-on-brand);--btn-border:var(--primary);box-shadow:0 1px 2px #0b717940,inset 0 1px #ffffff1f}.btn-primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn-danger{--btn-bg:var(--danger);--btn-fg:#fff;--btn-border:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger);filter:brightness(.95)}.btn-ghost{--btn-bg:transparent;--btn-border:transparent;--btn-fg:var(--text-2)}.btn-ghost:hover:not(:disabled){color:var(--text)}.btn-soft{--btn-bg:var(--primary-soft);--btn-border:transparent;--btn-fg:var(--primary-text)}.btn-soft:hover:not(:disabled){background:var(--primary-soft);filter:brightness(.97)}.btn-sm{height:32px;padding:0 10px;font-size:12.5px}.btn-lg{height:46px;padding:0 20px;font-size:15px}.btn-icon{width:38px;padding:0}.btn-icon.btn-sm{width:32px}.btn-block{width:100%}.btn .spinner{width:16px;height:16px}.spinner{border:2.5px solid;opacity:.8;border-inline-end-color:#0000;border-radius:50%;width:22px;height:22px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg, var(--surface-3) 25%, var(--surface-hover) 37%, var(--surface-3) 63%);border-radius:var(--radius-xs);background-size:400% 100%;animation:1.3s infinite shimmer}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}.page-loader{min-height:40vh;color:var(--primary);place-items:center;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.card-header{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:14px 18px;display:flex}.card-header h2,.card-header h3{align-items:center;gap:8px;font-size:15px;display:flex}.card-header h2 svg,.card-header h3 svg{width:18px;height:18px;color:var(--primary)}.card-body{padding:18px}.card-body.flush{padding:0}.card-footer{border-top:1px solid var(--divider);padding:12px 18px}.stats{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px 18px;position:relative;overflow:hidden}.stat-label{color:var(--text-2);align-items:center;gap:8px;font-size:13px;display:flex}.stat-icon{background:var(--primary-soft);width:30px;height:30px;color:var(--primary-text);border-radius:9px;place-items:center;display:grid}.stat-icon svg{width:16px;height:16px}.stat-value{letter-spacing:-.3px;font-variant-numeric:tabular-nums;margin-top:10px;font-size:24px;font-weight:800}.stat-sub{color:var(--text-3);margin-top:2px;font-size:12.5px}.stat.is-alert .stat-icon{background:var(--danger-soft);color:var(--danger)}.stat.is-gold .stat-icon{background:color-mix(in srgb, var(--gold-500) 16%, transparent);color:var(--gold-600)}.badge{--badge-color:var(--text-3);white-space:nowrap;height:24px;color:color-mix(in srgb, var(--badge-color) 82%, var(--text));background:color-mix(in srgb, var(--badge-color) 13%, transparent);border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:0 9px;font-size:12px;font-weight:600;display:inline-flex}.badge-dot:before{content:"";background:var(--badge-color);border-radius:50%;flex-shrink:0;width:7px;height:7px}.badge svg{width:13px;height:13px}.badge.success{--badge-color:var(--success)}.badge.warning{--badge-color:var(--warning)}.badge.danger{--badge-color:var(--danger)}.badge.info{--badge-color:var(--info)}.badge.brand{--badge-color:var(--primary)}.badge.outline{border:1px solid var(--border-strong);color:var(--text-2);background:0 0}.chip{background:var(--surface-3);border:1px solid var(--border);height:26px;color:var(--text-2);border-radius:999px;align-items:center;gap:4px;padding-inline:10px 6px;font-size:12.5px;display:inline-flex}.chip button{width:18px;height:18px;color:var(--text-3);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.chip button:hover{background:var(--border);color:var(--text)}.chip svg{width:12px;height:12px}.avatar{--av:var(--primary);width:32px;height:32px;color:color-mix(in srgb, var(--av) 85%, var(--text));background:color-mix(in srgb, var(--av) 16%, var(--surface));-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;place-items:center;font-size:12.5px;font-weight:700;display:inline-grid}.avatar.sm{width:24px;height:24px;font-size:10.5px}.avatar.lg{width:48px;height:48px;font-size:17px}.person{align-items:center;gap:8px;min-width:0;display:inline-flex}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{color:var(--text-2);align-items:center;gap:4px;font-size:13px;font-weight:600;display:flex}.field-label .req{color:var(--danger)}.field-hint{color:var(--text-3);font-size:12px}.field-error{color:var(--danger);align-items:center;gap:4px;font-size:12px;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.form-grid .span-2{grid-column:1/-1}@media (max-width:640px){.form-grid{grid-template-columns:minmax(0,1fr)}}.form-section{flex-direction:column;gap:14px;display:flex}.form-section+.form-section{border-top:1px dashed var(--border);margin-top:22px;padding-top:22px}.form-section-title{color:var(--text-3);font-size:13px;font-weight:700}.control{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);align-items:center;min-height:40px;transition:border-color .15s,box-shadow .15s,background-color .15s;display:flex;position:relative}.control:hover{border-color:color-mix(in srgb, var(--primary) 40%, var(--border-strong))}.control:focus-within,.control.is-open{border-color:var(--primary);box-shadow:var(--focus-ring)}.control.is-invalid{border-color:var(--danger)}.control.is-invalid:focus-within{box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 25%, transparent)}.control.is-disabled{background:var(--surface-3);opacity:.75;cursor:not-allowed}.control input,.control textarea,.control .control-value{background:0 0;border:0;outline:0;flex:1;min-width:0;height:38px;padding:0 12px;font-size:14px}.control textarea{resize:vertical;height:auto;min-height:84px;padding:10px 12px;line-height:1.8}.control input::placeholder,.control textarea::placeholder,.control .placeholder{color:var(--text-3);opacity:.85}.control input:disabled{cursor:not-allowed}.control-adorn{color:var(--text-3);white-space:nowrap;align-items:center;padding-inline:10px;font-size:13px;display:flex}.control-adorn svg{width:17px;height:17px}.control-adorn.divided{border-inline-start:1px solid var(--border);align-self:stretch}.control .icon-btn{width:28px;height:28px;color:var(--text-3);background:0 0;border:0;border-radius:6px;place-items:center;margin-inline-end:6px;display:grid}.control .icon-btn:hover{background:var(--surface-3);color:var(--text)}.control .icon-btn svg{width:15px;height:15px}.control-trigger{text-align:start;cursor:pointer;border-radius:inherit;background:0 0;border:0;align-items:center;gap:6px;width:100%;min-height:38px;padding:0 12px;display:flex}.control-trigger:focus-visible{box-shadow:none}.control-trigger .chevron{width:16px;height:16px;color:var(--text-3);flex-shrink:0;margin-inline-start:auto;transition:transform .2s}.control.is-open .chevron{transform:rotate(180deg)}.control-trigger .value-chips{flex-wrap:wrap;gap:4px;min-width:0;padding:5px 0;display:flex}.money-words{color:var(--text-3);font-size:12px}.check{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:9px;font-size:13.5px;display:inline-flex}.check input{appearance:none;border:1.5px solid var(--border-strong);background:var(--surface);cursor:pointer;border-radius:5px;flex-shrink:0;place-items:center;width:18px;height:18px;margin:2px 0 0;transition:all .15s;display:grid}.check input[type=radio]{border-radius:50%}.check input:checked{background:var(--primary);border-color:var(--primary)}.check input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-top:0;border-right:0;width:9px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.check input[type=radio]:checked:after{content:"";background:#fff;border-radius:50%;width:7px;height:7px}.check input:disabled{opacity:.5;cursor:not-allowed}.check .check-desc{color:var(--text-3);font-size:12px;display:block}.switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:13.5px;display:inline-flex}.switch button{background:var(--border-strong);border:0;border-radius:999px;flex-shrink:0;width:38px;height:22px;padding:0;transition:background-color .2s;position:relative}.switch button:after{content:"";top:3px;width:16px;height:16px;transition:inset-inline-start .2s var(--ease);background:#fff;border-radius:50%;position:absolute;inset-inline-start:3px;box-shadow:0 1px 3px #00000040}.switch button[aria-checked=true]{background:var(--primary)}.switch button[aria-checked=true]:after{inset-inline-start:19px}.switch button:disabled{opacity:.5;cursor:not-allowed}.radio-cards{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;display:grid}.radio-card{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;text-align:start;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.radio-card[aria-checked=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-text);font-weight:600}.radio-card svg{width:16px;height:16px}.popover{z-index:1200;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:pop-in .14s var(--ease);position:fixed;overflow:hidden}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.listbox-search{border-bottom:1px solid var(--divider);color:var(--text-3);align-items:center;gap:6px;padding:8px 10px;display:flex}.listbox-search input{background:0 0;border:0;outline:0;flex:1;min-width:0;height:30px}.listbox-search svg{width:16px;height:16px}.listbox{max-height:280px;margin:0;padding:6px;list-style:none;overflow-y:auto}.option{cursor:pointer;color:var(--text);border-radius:8px;align-items:center;gap:9px;padding:8px 10px;font-size:13.5px;display:flex}.option[aria-selected=true]{color:var(--primary-text);font-weight:600}.option.is-active{background:var(--surface-hover)}.option .check-mark{width:16px;height:16px;color:var(--primary);margin-inline-start:auto}.option-desc{color:var(--text-3);font-size:12px;font-weight:400;display:block}.option-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.listbox-empty{text-align:center;color:var(--text-3);padding:18px 12px;font-size:13px}.menu{min-width:200px;padding:6px}.menu-item{text-align:start;width:100%;color:var(--text);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;text-decoration:none;display:flex}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-hover);box-shadow:none;text-decoration:none}.menu-item svg{width:17px;height:17px;color:var(--text-3)}.menu-item.danger,.menu-item.danger svg{color:var(--danger)}.menu-sep{background:var(--divider);height:1px;margin:6px 4px}.menu-label{color:var(--text-3);padding:6px 10px 4px;font-size:11.5px;font-weight:700}.datepicker{width:296px;padding:12px}.dp-head{justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;display:flex}.dp-title{gap:4px;display:flex}.dp-title select{border:1px solid var(--border);background:var(--surface-2);border-radius:7px;padding:3px 6px;font-size:13px;font-weight:700}.dp-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.dp-wd{color:var(--text-3);padding:4px 0;font-size:11.5px;font-weight:700}.dp-day{font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:9px;height:36px;font-size:13px}.dp-day:hover{background:var(--surface-hover)}.dp-day.is-today{color:var(--primary-text);box-shadow:inset 0 0 0 1px var(--primary);font-weight:800}.dp-day.is-selected{background:var(--primary);color:#fff;font-weight:700}.dp-day.is-friday{color:var(--danger)}.dp-day.is-selected.is-friday{color:#fff}.dp-day:disabled{opacity:.3;cursor:not-allowed}.dp-foot{border-top:1px solid var(--divider);align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.dp-time{direction:ltr;align-items:center;gap:4px;display:flex}.dp-time input{text-align:center;border:1px solid var(--border-strong);background:var(--surface);border-radius:7px;width:44px;height:32px}.table-wrap{overflow-x:auto}.table{border-collapse:separate;border-spacing:0;width:100%;font-size:13.5px}.table th{z-index:1;background:var(--surface-2);color:var(--text-3);text-align:start;border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 14px;font-size:12px;font-weight:700;position:sticky;top:0}.table th button{color:inherit;font:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.table th button svg{width:13px;height:13px}.table td{border-bottom:1px solid var(--divider);vertical-align:middle;padding:11px 14px}.table tbody tr{transition:background-color .12s}.table tbody tr.is-clickable{cursor:pointer}.table tbody tr:hover{background:var(--surface-hover)}.table tbody tr:last-child td{border-bottom:0}.table .cell-title{color:var(--text);font-weight:600}.table .cell-sub{color:var(--text-3);font-size:12px}.table .cell-actions{text-align:end;white-space:nowrap;width:1%}@media (max-width:760px){.table.responsive thead{display:none}.table.responsive,.table.responsive tbody,.table.responsive tr,.table.responsive td{width:100%;display:block}.table.responsive tr{border-bottom:1px solid var(--divider);padding:12px 14px}.table.responsive td{border:0;justify-content:space-between;align-items:center;gap:10px;padding:3px 0;display:flex}.table.responsive td[data-label]:before{content:attr(data-label);color:var(--text-3);flex-shrink:0;font-size:12px}.table.responsive td.is-primary{padding-bottom:6px;display:block}.table.responsive td.is-primary:before{content:none}.table.responsive .cell-actions{justify-content:flex-end;width:100%}}.pagination{border-top:1px solid var(--divider);color:var(--text-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;font-size:13px;display:flex}.pagination .pages{gap:4px;display:flex}.pagination .page-btn{border:1px solid var(--border);background:var(--surface);font-variant-numeric:tabular-nums;border-radius:8px;min-width:32px;height:32px;font-size:13px}.pagination .page-btn[aria-current=page]{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:700}.pagination .page-btn:disabled{opacity:.45;cursor:not-allowed}.toolbar{border-bottom:1px solid var(--divider);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 14px;display:flex}.toolbar .search{flex:220px;max-width:340px}.toolbar .filter{flex:0 190px;min-width:150px}@media (max-width:760px){.toolbar .search{flex-basis:100%;max-width:none}.toolbar .filter{flex:calc(50% - 8px)}}.active-filters{border-bottom:1px solid var(--divider);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:6px;padding:8px 14px;display:flex}.seg{background:var(--surface-3);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.seg button{height:30px;color:var(--text-2);background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.seg button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.seg button svg{width:15px;height:15px}.tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{color:var(--text-2);white-space:nowrap;background:0 0;border:0;align-items:center;gap:7px;padding:11px 14px;font-size:13.5px;font-weight:600;display:inline-flex;position:relative}.tab:hover{color:var(--text)}.tab[aria-selected=true]{color:var(--primary-text)}.tab[aria-selected=true]:after{content:"";inset-inline:10px;background:var(--primary);border-radius:3px 3px 0 0;height:2.5px;position:absolute;bottom:-1px}.tab .count{background:var(--surface-3);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11.5px;display:inline-grid}.tab .count.alert{background:var(--danger-soft);color:var(--danger)}.overlay{z-index:1000;background:var(--overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;padding:16px;animation:.15s fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}}.modal{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:calc(100dvh - 32px);box-shadow:var(--shadow-lg);animation:modal-in .2s var(--ease);flex-direction:column;display:flex}.modal.lg{max-width:820px}.modal.sm{max-width:420px}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.98)}}.modal-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 22px 12px;display:flex}.modal-head h2{font-size:17px}.modal-head p{color:var(--text-3);margin-top:2px;font-size:13px}.modal-body{padding:8px 22px 20px;overflow-y:auto}.modal-foot{border-top:1px solid var(--divider);background:var(--surface-2);border-radius:0 0 var(--radius-xl) var(--radius-xl);justify-content:flex-end;gap:8px;padding:14px 22px;display:flex}@media (max-width:640px){.overlay{align-items:flex-end;padding:0}.modal{border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:92dvh;animation:sheet-in .25s var(--ease);max-width:none!important}.modal-foot{padding-bottom:calc(14px + env(safe-area-inset-bottom));border-radius:0}}@keyframes sheet-in{0%{opacity:.5;transform:translateY(40%)}}.drawer-overlay{justify-content:flex-start;align-items:stretch;padding:0}.drawer{background:var(--surface);width:min(560px,100vw);height:100dvh;box-shadow:var(--shadow-lg);animation:drawer-in .24s var(--ease);flex-direction:column;display:flex}@keyframes drawer-in{0%{opacity:0;transform:translate(40px)}}.drawer .modal-body{flex:1}.drawer .modal-foot{border-radius:0}.toasts{z-index:2000;bottom:20px;pointer-events:none;flex-direction:column;gap:8px;width:min(420px,100vw - 32px);display:flex;position:fixed;inset-inline-start:50%;transform:translate(50%)}.toast{background:var(--text);color:var(--bg);border-radius:var(--radius);box-shadow:var(--shadow-lg);pointer-events:auto;animation:toast-in .22s var(--ease);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13.5px;display:flex}.toast svg{flex-shrink:0;width:18px;height:18px;margin-top:2px}.toast.success svg{color:var(--brand-300)}.toast.error svg{color:#ff8a8d}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}.empty{text-align:center;color:var(--text-3);flex-direction:column;align-items:center;gap:8px;padding:40px 20px;display:flex}.empty-icon{background:var(--primary-soft);width:56px;height:56px;color:var(--primary-text);border-radius:18px;place-items:center;margin-bottom:4px;display:grid}.empty-icon svg{width:26px;height:26px}.empty h3{color:var(--text)}.empty.compact{padding:22px 14px}.empty.compact .empty-icon{border-radius:12px;width:40px;height:40px}.empty.compact .empty-icon svg{width:19px;height:19px}.alert{border-radius:var(--radius);background:var(--info-soft);color:color-mix(in srgb, var(--info) 70%, var(--text));align-items:flex-start;gap:10px;padding:12px 14px;font-size:13.5px;display:flex}.alert svg{flex-shrink:0;width:18px;height:18px;margin-top:2px}.alert.danger{background:var(--danger-soft);color:color-mix(in srgb, var(--danger) 75%, var(--text))}.alert.warning{background:var(--warning-soft);color:color-mix(in srgb, var(--warning) 70%, var(--text))}.alert.success{background:var(--success-soft);color:color-mix(in srgb, var(--success) 70%, var(--text))}.dl{grid-template-columns:minmax(110px,38%) 1fr;gap:10px 14px;margin:0;font-size:13.5px;display:grid}.dl dt{color:var(--text-3)}.dl dd{overflow-wrap:anywhere;min-width:0;margin:0}.timeline{margin:0;padding:0;list-style:none;position:relative}.timeline-item{gap:12px;padding-bottom:18px;display:flex;position:relative}.timeline-item:before{content:"";inset-inline-start:15px;background:var(--divider);width:2px;position:absolute;top:34px;bottom:0}.timeline-item:last-child:before{display:none}.timeline-icon{--ti:var(--text-3);width:32px;height:32px;color:var(--ti);background:color-mix(in srgb, var(--ti) 13%, var(--surface));border-radius:10px;flex-shrink:0;place-items:center;display:grid}.timeline-icon svg{width:16px;height:16px}.timeline-content{flex:1;min-width:0;padding-top:4px}.timeline-title{font-size:13.5px;font-weight:600}.timeline-meta{color:var(--text-3);flex-wrap:wrap;gap:4px 10px;margin-top:2px;font-size:12px;display:flex}.timeline-body{background:var(--surface-2);border:1px solid var(--divider);white-space:pre-line;overflow-wrap:anywhere;border-radius:10px;margin-top:8px;padding:10px 12px;font-size:13.5px}.kanban{scroll-snap-type:x proximity;align-items:flex-start;gap:14px;padding:2px 2px 16px;display:flex;overflow-x:auto}.kanban-col{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-lg);scroll-snap-align:start;flex-direction:column;flex:0 0 290px;max-height:calc(100dvh - 230px);transition:background-color .15s,border-color .15s;display:flex}.kanban-col.is-over{border-color:var(--primary);background:var(--primary-soft)}.kanban-head{border-top:3px solid var(--col,var(--border-strong));border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:12px 14px 10px}.kanban-head h3{align-items:center;gap:8px;font-size:14px;display:flex}.kanban-head .meta{color:var(--text-3);flex-wrap:wrap;gap:8px;margin-top:2px;font-size:12px;display:flex}.kanban-body{flex-direction:column;flex:1;gap:8px;min-height:80px;padding:4px 10px 10px;display:flex;overflow-y:auto}.kanban-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xs);cursor:grab;text-align:start;width:100%;font:inherit;color:inherit;padding:11px 12px;transition:box-shadow .15s,transform .15s,border-color .15s}.kanban-card:hover{box-shadow:var(--shadow);border-color:var(--border-strong)}.kanban-card.is-dragging{opacity:.5}.kanban-card .title{font-size:13.5px;font-weight:700;line-height:1.5}.kanban-card .sub{color:var(--text-3);margin-top:2px;font-size:12.5px}.kanban-card .foot{color:var(--text-2);justify-content:space-between;align-items:center;gap:8px;margin-top:10px;font-size:12px;display:flex}.kanban-card .amount{color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.palette{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:620px;box-shadow:var(--shadow-lg);animation:modal-in .18s var(--ease);align-self:flex-start;margin-top:10vh;overflow:hidden}.palette-input{border-bottom:1px solid var(--divider);align-items:center;gap:10px;padding:14px 18px;display:flex}.palette-input svg{width:20px;height:20px;color:var(--text-3)}.palette-input input{background:0 0;border:0;outline:0;flex:1;height:32px;font-size:16px}.palette-results{max-height:60vh;padding:8px;overflow-y:auto}.palette-group{color:var(--text-3);padding:8px 10px 4px;font-size:11.5px;font-weight:700}kbd{border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-3);border-bottom-width:2px;border-radius:5px;padding:1px 6px;font-family:inherit;font-size:11px}.stagebar{gap:4px;display:flex;overflow-x:auto}.stagebar button{background:var(--surface-3);min-width:96px;height:36px;color:var(--text-2);clip-path:polygon(100% 0,10px 0,0 50%,10px 100%,100% 100%,calc(100% - 10px) 50%);border:0;flex:1 0 auto;padding:0 14px;font-size:12.5px;font-weight:600;position:relative}.stagebar button:first-child{clip-path:polygon(100% 0,10px 0,0 50%,10px 100%,100% 100%);border-radius:0 9px 9px 0}.stagebar button.is-done{background:color-mix(in srgb, var(--primary) 22%, var(--surface));color:var(--primary-text)}.stagebar button.is-current{background:var(--primary);color:#fff}.stagebar button:disabled{cursor:default}.progress{background:var(--surface-3);border-radius:99px;height:6px;overflow:hidden}.progress>span{border-radius:inherit;background:var(--primary);height:100%;display:block}.chart-wrap{position:relative}.chart-svg{width:100%;display:block;overflow:visible}.chart-svg text{fill:var(--text-3);font-size:11px;font-family:var(--font)}.chart-grid line{stroke:var(--divider)}.chart-tooltip{pointer-events:none;z-index:5;background:var(--surface);border:1px solid var(--border);min-width:140px;box-shadow:var(--shadow);border-radius:10px;padding:8px 10px;font-size:12.5px;position:absolute;transform:translate(50%,-100%)}.legend{color:var(--text-2);flex-wrap:wrap;gap:14px;font-size:12.5px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:2px;width:12px;height:3px;display:inline-block}.barlist{flex-direction:column;gap:12px;display:flex}.barlist-row{grid-template-columns:minmax(90px,30%) 1fr auto;align-items:center;gap:12px;font-size:13px;display:grid}.barlist-track{background:var(--surface-3);border-radius:4px;height:10px;overflow:hidden}.barlist-fill{background:var(--series-1);height:100%;transition:width .5s var(--ease);border-radius:4px;min-width:2px}.barlist-value{font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap;font-weight:600}.filters-toggle{display:none}@media (max-width:760px){.toolbar .search{flex:1 1 0}.filters-toggle{display:inline-flex}.toolbar:not(.show-filters)>.filter,.toolbar:not(.show-filters)>.row{display:none}}@media (min-width:761px){.table td:not(.is-primary):not(:first-child){white-space:nowrap}}.stat-value small{color:var(--text-3);margin-inline-start:4px;font-size:13px;font-weight:600}.stat-value{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.palette-input input:focus-visible{box-shadow:none}.modal.xl{max-width:1120px}.template-editor{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.template-preview{border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);flex-direction:column;gap:12px;padding:16px;display:flex;position:sticky;top:0}@media (max-width:900px){.template-editor{grid-template-columns:minmax(0,1fr)}.template-preview{position:static}}.var-chip{cursor:pointer;color:var(--primary-text);background:var(--primary-soft);border-color:#0000;padding-inline:10px;font-family:inherit}.var-chip:hover{filter:brightness(.96)}.sms-phone{background:var(--bg);border:1px solid var(--border);border-radius:22px;min-height:140px;padding:18px 14px}.sms-bubble{background:var(--surface);border:1px solid var(--border);max-width:85%;box-shadow:var(--shadow-xs);white-space:pre-wrap;overflow-wrap:anywhere;unicode-bidi:plaintext;border-radius:18px 18px 4px;padding:10px 14px;font-size:14px;line-height:1.9}.email-preview{border:1px solid var(--border);background:#f4f6f8;border-radius:10px;width:100%;height:460px}.shell{min-height:100dvh;display:flex}.sidebar{height:100dvh;width:var(--sidebar-w);background:var(--surface);border-inline-end:1px solid var(--border);transition:width .22s var(--ease);z-index:40;flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0}.sidebar.is-collapsed{width:var(--sidebar-w-collapsed)}.sidebar-brand{height:var(--topbar-h);border-bottom:1px solid var(--divider);align-items:center;gap:10px;padding:0 18px;display:flex}.brand-text{flex-direction:column;line-height:1.2;display:flex}.brand-text strong{letter-spacing:-.2px;font-size:18px;font-weight:900}.brand-text span{letter-spacing:2.5px;color:var(--text-3);font-size:10.5px;font-weight:600}.sidebar-nav{flex:1;padding:12px 10px;overflow-y:auto}.nav-group+.nav-group{margin-top:14px}.nav-group-title{color:var(--text-3);padding:4px 12px 6px;font-size:11.5px;font-weight:700}.nav-link{height:40px;color:var(--text-2);white-space:nowrap;border-radius:10px;align-items:center;gap:12px;padding:0 12px;font-size:13.5px;font-weight:600;transition:background-color .15s,color .15s;display:flex;position:relative}.nav-link:hover{background:var(--surface-hover);color:var(--text);text-decoration:none}.nav-link svg{flex-shrink:0;width:19px;height:19px}.nav-link.active{background:var(--primary-soft);color:var(--primary-text)}.nav-link.active:before{content:"";inset-inline-start:-10px;background:var(--primary);border-radius:0 3px 3px 0;width:3px;position:absolute;top:9px;bottom:9px}.nav-link .nav-count{background:var(--danger);color:#fff;border-radius:99px;place-items:center;min-width:20px;height:20px;margin-inline-start:auto;padding:0 6px;font-size:11px;display:grid}.sidebar.is-collapsed .nav-label,.sidebar.is-collapsed .nav-group-title,.sidebar.is-collapsed .brand-text,.sidebar.is-collapsed .nav-count{display:none}.sidebar.is-collapsed .nav-link{justify-content:center;padding:0}.sidebar-foot{border-top:1px solid var(--divider);padding:10px}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{z-index:30;height:var(--topbar-h);background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(160%)blur(10px);backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--divider);align-items:center;gap:10px;padding:0 24px;display:flex;position:sticky;top:0}.search-trigger{border:1px solid var(--border);background:var(--surface);width:min(420px,100%);height:40px;color:var(--text-3);text-align:start;border-radius:10px;align-items:center;gap:10px;padding:0 12px;font-size:13.5px;display:flex}.search-trigger:hover{border-color:var(--border-strong)}.search-trigger svg{width:17px;height:17px}.search-trigger kbd{margin-inline-start:auto}.topbar-actions{align-items:center;gap:6px;margin-inline-start:auto;display:flex}.product-switch{border:1px solid var(--border);background:var(--surface);border-radius:10px;align-items:center;gap:8px;max-width:220px;height:38px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.product-dot{border-radius:3px;flex-shrink:0;width:10px;height:10px}.user-btn{background:0 0;border:0;border-radius:999px;align-items:center;gap:8px;padding:4px;padding-inline-end:10px;display:flex}.user-btn:hover{background:var(--surface-hover)}.user-btn .user-name{max-width:140px;font-size:13px;font-weight:600}.content{flex:1;width:100%;max-width:1480px;margin:0 auto;padding:24px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 16px;margin-bottom:20px;display:flex}.page-head .subtitle{color:var(--text-3);margin-top:4px;font-size:13.5px}.page-head .actions{flex-wrap:wrap;gap:8px;display:flex}.breadcrumb{color:var(--text-3);align-items:center;gap:6px;margin-bottom:6px;font-size:12.5px;display:flex}.breadcrumb a{color:var(--text-3)}.breadcrumb svg{width:14px;height:14px}.detail-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:20px;display:grid}.detail-side{top:calc(var(--topbar-h) + 16px);flex-direction:column;gap:16px;display:flex;position:sticky}@media (max-width:1100px){.detail-layout{grid-template-columns:minmax(0,1fr)}.detail-side{order:-1;position:static}}.hero{align-items:center;gap:16px;padding:20px;display:flex}.hero-mark{background:linear-gradient(140deg, var(--brand-400), var(--brand-600));color:#fff;border-radius:16px;flex-shrink:0;place-items:center;width:56px;height:56px;font-size:22px;font-weight:800;display:grid}.dash-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;display:grid}.dash-grid>.w-12{grid-column:span 12}.dash-grid>.w-8{grid-column:span 8}.dash-grid>.w-6{grid-column:span 6}.dash-grid>.w-4{grid-column:span 4}@media (max-width:1200px){.dash-grid>.w-8,.dash-grid>.w-4{grid-column:span 12}}@media (max-width:900px){.dash-grid>.w-6{grid-column:span 12}}.list-item{border-bottom:1px solid var(--divider);color:inherit;align-items:center;gap:12px;padding:11px 18px;display:flex}.list-item:last-child{border-bottom:0}a.list-item:hover,button.list-item:hover{background:var(--surface-hover);text-decoration:none}button.list-item{border-inline:0;text-align:start;width:100%;font:inherit;background:0 0;border-top:0}.offline-banner{bottom:0;z-index:1500;text-align:center;background:var(--warning);color:#1b1300;padding:8px 16px;font-size:13px;font-weight:600;position:fixed;inset-inline:0}.mobile-nav,.sidebar-backdrop,.fab{display:none}@media (max-width:960px){.sidebar{transition:transform .25s var(--ease);box-shadow:var(--shadow-lg);position:fixed;inset-block:0;inset-inline-start:0;transform:translate(100%);width:min(300px,86vw)!important}.sidebar.is-mobile-open{transform:none}.sidebar .nav-label,.sidebar .nav-group-title,.sidebar .brand-text{display:initial!important}.sidebar .nav-link{justify-content:flex-start!important;padding:0 12px!important}.sidebar-backdrop.is-open{z-index:35;background:var(--overlay);display:block;position:fixed;inset:0}.topbar{padding:0 12px}.search-trigger kbd,.search-trigger .label,.product-switch .label,.user-btn .user-name,.hide-mobile{display:none}.search-trigger{justify-content:center;width:40px;padding:0}.content{padding:16px 16px calc(84px + env(safe-area-inset-bottom))}.mobile-nav{bottom:0;z-index:30;height:calc(64px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--border);display:flex;position:fixed;inset-inline:0}.mobile-nav a,.mobile-nav button{color:var(--text-3);background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:600;text-decoration:none;display:flex}.mobile-nav svg{width:21px;height:21px}.mobile-nav .active{color:var(--primary-text)}.fab{z-index:31;bottom:calc(76px + env(safe-area-inset-bottom));background:var(--primary);color:#fff;width:54px;height:54px;box-shadow:0 10px 24px -6px color-mix(in srgb, var(--primary) 60%, transparent);border:0;border-radius:18px;place-items:center;display:grid;position:fixed;inset-inline-end:16px}.fab svg{width:24px;height:24px}.page-head h1{font-size:19px}.offline-banner{bottom:calc(64px + env(safe-area-inset-bottom))}}@media (min-width:961px){.mobile-only{display:none!important}}.auth-page{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);min-height:100dvh;display:grid}.auth-panel{background:var(--surface);flex-direction:column;justify-content:center;padding:40px clamp(20px,6vw,80px);display:flex}.auth-form{width:100%;max-width:400px;margin:0 auto}.auth-art{color:#fff;background:radial-gradient(1200px 600px at 110% -10%,#f2b54459,#0000 55%),radial-gradient(900px 600px at -20% 120%,#22a2a88c,#0000 60%),linear-gradient(160deg,#0b5b61 0%,#0c3a4a 55%,#0b1f33 100%);flex-direction:column;justify-content:space-between;padding:48px;display:flex;position:relative;overflow:hidden}.auth-art h2{color:#fff;max-width:460px;font-size:30px;font-weight:900;line-height:1.5}.auth-art p{color:#ffffffc7;max-width:460px;margin-top:12px;font-size:15px}.auth-art .pattern{opacity:.09;pointer-events:none;background-image:radial-gradient(circle at 1px 1px,#fff 1px,#0000 0);background-size:22px 22px;position:absolute;inset:0}.auth-features{gap:14px;display:grid;position:relative}.auth-features div{color:#ffffffe6;align-items:center;gap:12px;display:flex}.auth-features svg{width:20px;height:20px;color:var(--gold-400)}@media (max-width:900px){.auth-page{grid-template-columns:1fr}.auth-art{display:none}}.settings-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:20px;display:grid}.settings-nav{top:calc(var(--topbar-h) + 16px);padding:8px;position:sticky}.settings-nav .nav-link.active:before{display:none}@media (max-width:960px){.settings-layout{grid-template-columns:minmax(0,1fr)}.settings-nav{gap:4px;display:flex;position:static;overflow-x:auto}.settings-nav .nav-link{flex-shrink:0}}.perm-matrix th,.perm-matrix td{text-align:center;white-space:nowrap}.perm-matrix th:first-child,.perm-matrix td:first-child{text-align:start}.perm-cell{flex-direction:column;align-items:center;gap:4px;display:inline-flex}.perm-cell select{border:1px solid var(--border);background:var(--surface-2);border-radius:6px;padding:1px 4px;font-size:11.5px}
