@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);:root{--font-main:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"Fira Code","Cascadia Code","Consolas",monospace;--primary:#7c3aed;--primary-dark:#6d28d9;--primary-light:#f5f3ff;--primary-50:#f5f3ff;--primary-100:#ede9fe;--primary-200:#ddd6fe;--primary-500:#8b5cf6;--primary-600:#7c3aed;--primary-700:#6d28d9;--primary-ring:#7c3aed26;--success:#16a34a;--success-bg:#dcfce7;--success-border:#bbf7d0;--warning:#d97706;--warning-bg:#fef3c7;--warning-border:#fde68a;--danger:#dc2626;--danger-bg:#fee2e2;--danger-border:#fecaca;--info:#0284c7;--info-bg:#e0f2fe;--info-border:#bae6fd;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--sidebar-width:256px;--sidebar-collapsed-width:68px;--header-height:60px;--radius-sm:4px;--radius:8px;--radius-lg:16px;--radius-xl:16px;--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 1px 3px #00000014,0 1px 2px #0000000a;--shadow:0 4px 8px #0000000f,0 2px 4px #0000000a;--shadow-md:0 8px 16px #00000014,0 4px 6px #0000000a;--shadow-lg:0 20px 30px #0000001a,0 8px 12px #0000000f;--bg-body:#fff;--bg-card:#fff;--bg-topbar:#fff;--bg-input:#fff;--bg-hover:#f8fafc;--bg-table-head:#f8fafc;--text-main:#0f172a;--text-sub:#334155;--text-muted:#64748b;--border:#e2e8f0;--border-light:#f1f5f9;--sb-bg:#111827;--sb-text:#c4d0e4;--sb-text-hover:#f1f5f9;--sb-text-active:#fff;--sb-active-bg:var(--primary);--sb-hover-bg:#1e2a3a;--sb-section:#60748a;--sb-logo-bg:var(--primary);--sb-border:#1e2a3a;--sb-footer-bg:#0d1525}[data-theme=dark]{--bg-body:#0f172a;--bg-card:#1e293b;--bg-topbar:#1e293b;--bg-input:#0f172a;--bg-hover:#1e293b;--bg-table-head:#1e293b;--text-main:#f1f5f9;--text-sub:#cbd5e1;--text-muted:#94a3b8;--border:#334155;--border-light:#1e293b}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;background:var(--bg-body);color:#0f172a;color:var(--text-main);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-main);font-size:14px;line-height:1.5}#root,body,html{height:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-main)}.app-layout{background:#fff;background:var(--bg-body);display:flex;flex-direction:row;height:100vh;overflow:hidden}.main-content{flex:1 1;min-width:0}.main-content,.sidebar{display:flex;flex-direction:column;overflow:hidden}.sidebar{background:#111827;background:var(--sb-bg);border-right:1px solid #1e2a3a;border-right:1px solid var(--sb-border);flex-shrink:0;height:100vh;max-width:256px;max-width:var(--sidebar-width);min-width:256px;min-width:var(--sidebar-width);position:relative;transition:width .22s ease,min-width .22s ease,max-width .22s ease;width:256px;width:var(--sidebar-width);z-index:50}.sidebar.collapsed{max-width:68px;max-width:var(--sidebar-collapsed-width);min-width:68px;min-width:var(--sidebar-collapsed-width);width:68px;width:var(--sidebar-collapsed-width)}.sidebar-logo{border-bottom:1px solid #1e2a3a;border-bottom:1px solid var(--sb-border);gap:10px;height:60px;height:var(--header-height);min-width:0;overflow:hidden;padding:0 12px}.logo-icon,.sidebar-logo{align-items:center;display:flex;flex-shrink:0}.logo-icon{background:#7c3aed;background:var(--sb-logo-bg);border-radius:9px;box-shadow:0 2px 8px #7c3aed26;box-shadow:0 2px 8px var(--primary-ring);height:34px;justify-content:center;width:34px}.logo-text-wrap{flex:1 1;min-width:0}.logo-text{color:#f8fafc;font-size:15px;font-weight:700;letter-spacing:-.2px;line-height:1.2;white-space:nowrap}.logo-sub{color:#475569;font-size:10px;font-weight:500;letter-spacing:.8px;margin-top:2px;text-transform:uppercase;white-space:nowrap}.sidebar-toggle-btn{align-items:center;background:#1e293b;border:1px solid #334155;border-radius:7px;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;height:26px;justify-content:center;transition:all .15s;width:26px}.sidebar-toggle-btn:hover{background:#334155;border-color:#475569;color:#e2e8f0}.sidebar-nav{flex:1 1;overflow-y:auto;padding:10px;scrollbar-color:#334155 #0000;scrollbar-width:thin}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:#0000}.sidebar-nav::-webkit-scrollbar-thumb{background:#334155;border-radius:4px}.nav-section-label{color:#60748a;color:var(--sb-section);font-size:10.5px;font-weight:700;letter-spacing:1px;line-height:1;padding:16px 12px 5px;text-transform:uppercase;-webkit-user-select:none;user-select:none}.nav-item{align-items:center;border-radius:8px;color:#c4d0e4;color:var(--sb-text);cursor:pointer;display:flex;font-size:13.5px;font-weight:500;gap:11px;line-height:1.4;margin-bottom:1px;padding:9px 12px;position:relative;text-decoration:none;transition:background .14s,color .14s;white-space:nowrap}.nav-item:hover{background:#1e2a3a;background:var(--sb-hover-bg)}.nav-item:hover,.nav-item:hover .nav-icon{color:#f1f5f9;color:var(--sb-text-hover)}.nav-item.active{background:#7c3aed;background:var(--sb-active-bg);box-shadow:0 2px 8px #7c3aed26;box-shadow:0 2px 8px var(--primary-ring);color:#fff;font-weight:600}.nav-item.active .nav-icon{color:#fff}.nav-icon{align-items:center;color:inherit;display:flex;flex-shrink:0;height:18px;justify-content:center;opacity:1;width:18px}.nav-badge{background:#dc2626;border-radius:10px;color:#fff;font-size:10px;font-weight:700;margin-left:auto;min-width:20px;padding:1px 6px;text-align:center}.sidebar-footer{background:#0d1525;background:var(--sb-footer-bg);border-top:1px solid #1e2a3a;border-top:1px solid var(--sb-border);flex-shrink:0;overflow:hidden;padding:10px}.topbar{align-items:center;background:#fff;background:var(--bg-topbar);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);box-shadow:0 1px 2px #0000000a;box-shadow:var(--shadow-xs);display:flex;flex-shrink:0;gap:12px;height:60px;height:var(--header-height);padding:0 24px;z-index:40}.topbar-title{color:#0f172a;color:var(--text-main);flex:1 1;font-size:18px;font-weight:700;letter-spacing:-.3px}.topbar-actions{align-items:center;display:flex;gap:8px}.page-content{background:#fff;background:var(--bg-body);flex:1 1;overflow-y:auto;padding:22px 24px}.card{background:#fff;background:var(--bg-card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 4px 14px #0f172a0f}.card-header{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:15px 20px}.card-title{color:#0f172a;color:var(--text-main);font-size:14px;font-weight:600;letter-spacing:-.1px}.card-body{padding:20px}.stat-card{background:#fff;background:var(--bg-card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0000000a;box-shadow:var(--shadow-xs);padding:18px 20px;transition:box-shadow .15s,transform .15s}.stat-card:hover{box-shadow:0 4px 8px #0000000f,0 2px 4px #0000000a;box-shadow:var(--shadow);transform:translateY(-1px)}.table-wrap{background:#fff;background:var(--bg-card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0000000a;box-shadow:var(--shadow-xs);overflow:hidden}.data-table{border-collapse:collapse;table-layout:auto;width:100%}.data-table thead tr{background:#f8fafc;background:var(--bg-table-head);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border)}.data-table th{color:#64748b;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.6px;padding:11px 16px;text-align:left;text-transform:uppercase;-webkit-user-select:none;user-select:none;white-space:nowrap}.data-table td{border-bottom:1px solid #f1f5f9;border-bottom:1px solid var(--border-light);color:#0f172a;color:var(--text-main);font-size:13.5px;padding:12px 16px;vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr{cursor:pointer;transition:background .1s}.data-table tbody tr:hover{background:#f5f3ff;background:var(--primary-hover-row,var(--primary-light))}.badge{align-items:center;border-radius:20px;display:inline-flex;font-size:11px;font-weight:600;gap:4px;line-height:1.4;padding:3px 10px;white-space:nowrap}.badge-open{background:#dbeafe;color:#1e40af}.badge-assigned{background:#fef3c7;color:#92400e}.badge-in_progress{background:#ede9fe;color:#5b21b6}.badge-pending{background:#ffedd5;color:#c2410c}.badge-resolved{background:#d1fae5;color:#065f46}.badge-closed{background:#f1f5f9;color:#475569}.badge-critical,.badge-reopened{background:#fee2e2;color:#991b1b}.badge-high{background:#ffedd5;color:#c2410c}.badge-medium{background:#fef3c7;color:#92400e}.badge-low,.badge-success{background:#d1fae5;color:#065f46}.badge-warning{background:#fef3c7;color:#92400e}.badge-danger{background:#fee2e2;color:#991b1b}.badge-info{background:#e0f2fe;color:#0369a1}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-main);font-size:13.5px;font-weight:600;gap:6px;letter-spacing:.01em;line-height:1;padding:8px 16px;transition:all .15s;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn:focus-visible{outline:2px solid #7c3aed;outline:2px solid var(--primary);outline-offset:2px}.btn-primary{background:#7c3aed;background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:#6d28d9;background:var(--primary-dark);box-shadow:0 4px 12px #7c3aed26;box-shadow:0 4px 12px var(--primary-ring)}.btn-secondary{background:#f1f5f9;background:var(--gray-100);border:1px solid #e2e8f0;border:1px solid var(--border);color:#0f172a;color:var(--text-main)}.btn-secondary:hover:not(:disabled){background:#e2e8f0;background:var(--gray-200)}.btn-outline{background:#0000;border:1px solid #e2e8f0;border:1px solid var(--border);color:#334155;color:var(--text-sub)}.btn-outline:hover:not(:disabled){background:#f8fafc;background:var(--bg-hover);border-color:#94a3b8;border-color:var(--gray-400)}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-success{background:#16a34a;color:#fff}.btn-success:hover:not(:disabled){background:#15803d}.btn-ghost{background:#0000;border:1px solid #0000;border-radius:8px;color:#64748b;color:var(--text-muted)}.btn-ghost:hover:not(:disabled){background:#f1f5f9;background:var(--gray-100);border-color:#e2e8f0;border-color:var(--border);color:#0f172a;color:var(--text-main)}.btn-sm{border-radius:7px;font-size:12.5px;padding:6px 12px}.btn-lg{font-size:14.5px;padding:10px 20px}.btn-icon{padding:8px}.btn-icon-sm{padding:6px}.form-label{color:#64748b;color:var(--text-muted);display:block;font-size:11.5px;font-weight:600;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.form-control{background:#fff;background:var(--bg-input);border:1.5px solid #e2e8f0;border:1.5px solid var(--border);border-radius:10px;box-sizing:border-box;color:#0f172a;color:var(--text-main);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-main);font-size:13.5px;line-height:1.5;outline:none;padding:11px 14px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;width:100%}.form-control:hover:not(:disabled):not(:focus){border-color:#cbd5e1;border-color:var(--gray-300)}.form-control:focus{border-color:#7c3aed;border-color:var(--primary);box-shadow:0 0 0 4px #7c3aed26;box-shadow:0 0 0 4px var(--primary-ring)}.form-control::placeholder,.form-control:disabled{color:#94a3b8;color:var(--gray-400)}.form-control:disabled{background:#f1f5f9;background:var(--gray-100);cursor:not-allowed}select.form-control{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:16px;cursor:pointer;padding-right:40px}.alert{align-items:flex-start;border-radius:8px;display:flex;font-size:13px;font-weight:500;gap:10px;line-height:1.5;padding:12px 16px}.alert-error{background:#fee2e2;background:var(--danger-bg);border:1px solid #fecaca;border:1px solid var(--danger-border);color:#991b1b}.alert-success{background:#dcfce7;background:var(--success-bg);border:1px solid #bbf7d0;border:1px solid var(--success-border);color:#065f46}.alert-warning{background:#fef3c7;background:var(--warning-bg);border:1px solid #fde68a;border:1px solid var(--warning-border);color:#92400e}.alert-info{background:#e0f2fe;background:var(--info-bg);border:1px solid #bae6fd;border:1px solid var(--info-border);color:#0369a1}.tabs-bar{background:#fff;background:var(--bg-card);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;gap:0;overflow-x:auto}.tabs-bar::-webkit-scrollbar{height:0}.tab-btn{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:#64748b;color:var(--text-muted);cursor:pointer;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-main);font-size:13.5px;font-weight:500;gap:7px;letter-spacing:.01em;margin-bottom:-1px;padding:12px 16px;transition:all .15s;white-space:nowrap}.tab-btn:hover{background:#f8fafc;background:var(--bg-hover);color:#0f172a;color:var(--text-main)}.tab-btn.active{border-bottom-color:#7c3aed;border-bottom-color:var(--primary);color:#7c3aed;color:var(--primary);font-weight:600}.stepper{align-items:flex-start;display:flex;gap:0;overflow-x:auto;padding:4px 0 2px}.stepper::-webkit-scrollbar{height:0}.step-item{align-items:center;cursor:pointer;display:flex;flex-direction:column;flex-shrink:0;gap:6px;min-width:80px;padding:0 4px;transition:opacity .2s}.step-item:hover .step-circle:not(.done):not(.active){border-color:#7c3aed;border-color:var(--primary);color:#7c3aed;color:var(--primary)}.step-circle{align-items:center;background:#fff;background:var(--bg-card);border:2px solid #cbd5e1;border:2px solid var(--gray-300);border-radius:50%;color:#94a3b8;color:var(--gray-400);display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:34px;justify-content:center;transition:all .2s;width:34px}.step-circle.done{background:#7c3aed;background:var(--primary);color:#fff}.step-circle.active,.step-circle.done{border-color:#7c3aed;border-color:var(--primary)}.step-circle.active{background:#f5f3ff;background:var(--primary-light);box-shadow:0 0 0 4px #7c3aed26;box-shadow:0 0 0 4px var(--primary-ring);color:#7c3aed;color:var(--primary)}.step-label{color:#64748b;color:var(--text-muted);font-size:11px;font-weight:500;line-height:1.3;text-align:center;white-space:nowrap}.step-label.active{color:#7c3aed;color:var(--primary);font-weight:700}.step-label.done{color:#334155;color:var(--text-sub)}.step-line{background:#e2e8f0;background:var(--gray-200);flex:1 1;height:2px;margin-bottom:22px;min-width:16px;transition:background .3s}.step-line.done{background:#7c3aed;background:var(--primary)}.avatar{align-items:center;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:32px;justify-content:center;-webkit-user-select:none;user-select:none;width:32px}.spinner{animation:spin .65s linear infinite;border:2.5px solid #e2e8f0;border-top-color:#7c3aed;border:2.5px solid var(--gray-200);border-radius:50%;border-top-color:var(--primary);display:inline-block;flex-shrink:0;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}@keyframes sla-pulse{0%,to{opacity:1}50%{opacity:.65}}.page-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:20px}.page-header-title{color:#0f172a;color:var(--text-main);font-size:20px;font-weight:700;letter-spacing:-.3px}.page-header-sub{font-size:13px;font-weight:400;margin-top:2px}.page-header-sub,.section-heading{color:#64748b;color:var(--text-muted)}.section-heading{font-size:11px;font-weight:700;letter-spacing:.7px;margin-bottom:12px;text-transform:uppercase}.divider{background:#e2e8f0;background:var(--border);height:1px;margin:16px 0}.empty-state{color:#64748b;color:var(--text-muted);flex-direction:column;padding:56px 24px;text-align:center}.empty-state,.flex-center{align-items:center;display:flex;justify-content:center}.flex-between{align-items:center;display:flex;justify-content:space-between}.role-admin{background:#fee2e2;color:#991b1b}.role-consultant{background:#fef3c7;color:#92400e}.role-user{background:#ede9fe;color:#5b21b6}.status-dot{border-radius:50%;display:inline-block;flex-shrink:0;height:7px;width:7px}.dot-online{background:#16a34a;box-shadow:0 0 0 2px #16a34a33}.dot-offline{background:#94a3b8}.swal-popup-custom{border-radius:16px!important;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important;font-family:var(--font-main)!important;font-size:14px!important}::-webkit-scrollbar{height:5px;width:5px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#cbd5e1;background:var(--gray-300);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--gray-400)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes dropIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}@keyframes modalIn{0%{opacity:0;transform:translateY(-20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.fade-in{animation:fadeIn .18s ease}.drop-in{animation:dropIn .15s ease}.slide-in{animation:slideIn .18s ease}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000073;display:flex;inset:0;justify-content:center;overflow-y:auto;padding:20px;position:fixed;z-index:1000}.modal{background:#fff;background:var(--bg-card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:14px;box-shadow:0 24px 60px #00000040;max-height:calc(100vh - 40px);overflow-y:auto;position:relative;width:100%}@keyframes uiRise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.card,.stat-card,.table-wrap{animation:uiRise .42s cubic-bezier(.22,.7,.28,1)}.card{box-shadow:0 1px 3px #00000014,0 1px 2px #0000000a;box-shadow:var(--shadow-sm);transition:box-shadow .22s ease,border-color .22s ease,transform .22s ease}.card:hover{border-color:#cbd5e1;border-color:var(--gray-300);box-shadow:0 4px 8px #0000000f,0 2px 4px #0000000a;box-shadow:var(--shadow)}.card-3d{transition:transform .24s cubic-bezier(.22,1,.36,1),box-shadow .24s ease;will-change:transform}.card-3d:hover{box-shadow:0 20px 38px -14px #0f172a3d,0 8px 16px -10px #0f172a29;transform:translateY(-6px)}.card-3d:active{transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.card-3d,.card-3d:active,.card-3d:hover{transform:none;transition:box-shadow .2s ease}}.stat-card{overflow:hidden;position:relative}.stat-card:before{background:linear-gradient(90deg,#7c3aed,#8b5cf6);background:linear-gradient(90deg,var(--primary),var(--primary-500,var(--primary-dark)));content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transform-origin:left;transition:transform .28s ease}.stat-card:hover:before{transform:scaleX(1)}.stat-card:hover{border-color:#0000;box-shadow:0 12px 28px #7c3aed26,0 8px 16px #00000014,0 4px 6px #0000000a;box-shadow:0 12px 28px var(--primary-ring),var(--shadow-md);transform:translateY(-3px)}.btn-primary{box-shadow:0 2px 8px #7c3aed26;box-shadow:0 2px 8px var(--primary-ring)}.btn-primary,.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#6d28d9);background:linear-gradient(135deg,var(--primary),var(--primary-dark))}.btn-primary:hover:not(:disabled){box-shadow:0 8px 20px #7c3aed26;box-shadow:0 8px 20px var(--primary-ring);filter:brightness(1.07);transform:translateY(-1px)}.btn-success:hover:not(:disabled){box-shadow:0 8px 20px #16a34a47;transform:translateY(-1px)}.btn-danger:hover:not(:disabled){box-shadow:0 8px 20px #dc262647;transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(0) scale(.97)}.data-table thead tr{background:linear-gradient(180deg,#f8fafc,#fff);background:linear-gradient(180deg,var(--bg-table-head),var(--bg-card))}.data-table tbody tr{transition:background .14s ease,box-shadow .14s ease}.data-table tbody tr:hover{box-shadow:inset 3px 0 0 #7c3aed;box-shadow:inset 3px 0 0 var(--primary)}.badge{border:1px solid #0000000a;box-shadow:0 1px 2px #0000000a}.form-control:focus{box-shadow:0 0 0 4px #7c3aed26,0 2px 10px #0000000d;box-shadow:0 0 0 4px var(--primary-ring),0 2px 10px #0000000d}.tab-btn{position:relative}.tab-btn:hover{color:#334155;color:var(--text-sub)}.page-content>*{animation:uiRise .4s cubic-bezier(.22,.7,.28,1) both}@media (prefers-reduced-motion:reduce){.card,.page-content>*,.stat-card,.table-wrap{animation:none}.btn-primary:hover:not(:disabled),.btn:active:not(:disabled),.stat-card:hover{transform:none}}.cs-wrap{position:relative;width:100%}.cs-trigger{align-items:center;background:#fff;background:var(--bg-input);border:1.5px solid #e2e8f0;border:1.5px solid var(--border);border-radius:10px;color:#0f172a;color:var(--text-main);cursor:pointer;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-family:var(--font-main);font-size:13.5px;gap:10px;justify-content:space-between;line-height:1.5;padding:11px 14px;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;width:100%}.cs-trigger:hover:not(:disabled){border-color:#cbd5e1;border-color:var(--gray-300)}.cs-trigger.open{border-color:#7c3aed;border-color:var(--primary);box-shadow:0 0 0 4px #7c3aed26,0 4px 14px #0000000f;box-shadow:0 0 0 4px var(--primary-ring),0 4px 14px #0000000f}.cs-trigger:disabled{background:#f1f5f9;background:var(--gray-100);color:#94a3b8;color:var(--gray-400);cursor:not-allowed}.cs-value{color:#0f172a;color:var(--text-main)}.cs-placeholder,.cs-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs-placeholder{color:#94a3b8;color:var(--gray-400)}.cs-chevron{color:#64748b;color:var(--text-muted);flex-shrink:0;transition:transform .2s ease,color .2s ease}.cs-chevron.open{color:#7c3aed;color:var(--primary);transform:rotate(180deg)}.cs-panel{animation:csPanel .16s cubic-bezier(.2,.7,.3,1);background:#fff;background:var(--bg-card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 30px #0000001a,0 8px 12px #0000000f;box-shadow:var(--shadow-lg);left:0;padding:6px;position:absolute;right:0;top:calc(100% + 6px);transform-origin:top;z-index:200}@keyframes csPanel{0%{opacity:0;transform:translateY(-6px) scaleY(.96)}to{opacity:1;transform:translateY(0) scaleY(1)}}.cs-search{align-items:center;background:#fff;background:var(--bg-input,var(--bg-card));border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:8px;display:flex;gap:7px;margin-bottom:4px;padding:7px 10px}.cs-search-icon{color:#64748b;color:var(--text-muted);flex-shrink:0}.cs-search-input{background:#0000;border:none;color:#334155;color:var(--text-sub);flex:1 1;font-size:13.5px;outline:none}.cs-search-input::placeholder{color:#94a3b8;color:var(--gray-400)}.cs-options{max-height:240px;overflow-y:auto}.cs-empty{color:#64748b;color:var(--text-muted);font-size:13px;padding:10px 12px;text-align:center}.cs-option{align-items:center;border-radius:8px;color:#334155;color:var(--text-sub);cursor:pointer;display:flex;font-size:13.5px;gap:8px;justify-content:space-between;padding:9px 12px;transition:background .12s ease,color .12s ease}.cs-option:hover{background:#f5f3ff;background:var(--primary-light);color:#6d28d9;color:var(--primary-dark)}.cs-option.selected{background:#7c3aed;background:var(--primary);color:#fff;font-weight:600}.cs-option.selected:hover{background:#6d28d9;background:var(--primary-dark);color:#fff}.cs-check{flex-shrink:0}.cs-options::-webkit-scrollbar,.cs-panel::-webkit-scrollbar{width:6px}.cs-options::-webkit-scrollbar-thumb,.cs-panel::-webkit-scrollbar-thumb{background:#cbd5e1;background:var(--gray-300);border-radius:4px}.modal{animation:modalIn .2s cubic-bezier(.2,.7,.3,1);max-width:560px}.modal-sm{max-width:460px}.modal-md{max-width:640px}.modal-lg{max-width:880px}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border);display:flex;gap:12px;justify-content:space-between;padding:16px 22px}.modal-title{color:#0f172a;color:var(--text-main);font-size:16px;font-weight:700;letter-spacing:-.2px}.modal-body{padding:20px 22px}.modal-footer{align-items:center;border-top:1px solid #e2e8f0;border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-end;padding:16px 22px}.form-group{margin-bottom:14px}.form-group:last-child{margin-bottom:0}.required{color:#dc2626;color:var(--danger);font-weight:700}.rte{background:#fff;background:var(--bg-card);border:1px solid #e2e8f0;border:1px solid var(--border);border-radius:10px;display:flex;flex-direction:column;overflow:hidden}.rte-author{gap:8px;padding:10px 14px 0}.rte-author,.rte-avatar{align-items:center;display:flex}.rte-avatar{background:#f5f3ff;background:var(--primary-light);border-radius:6px;font-size:11px;font-weight:700;height:22px;justify-content:center;width:22px}.rte-author-name,.rte-avatar{color:#7c3aed;color:var(--primary)}.rte-author-name{font-size:13px;font-weight:600}.rte-content{color:#0f172a;color:var(--text-main);font-size:14px;line-height:1.7;max-height:420px;min-height:220px;outline:none;overflow-y:auto;padding:14px 16px}.rte-content:empty:before{color:#64748b;color:var(--text-muted);content:attr(data-placeholder)}.rte-content p{margin:0 0 10px}.rte-content h2{font-size:16px;font-weight:700;margin:14px 0 8px}.rte-content ol,.rte-content ul{margin:0 0 10px;padding-left:24px}.rte-content li{margin:2px 0}.rte-content blockquote{border-left:3px solid #7c3aed;border-left:3px solid var(--primary);color:#334155;color:var(--text-sub);padding:6px 14px}.rte-content blockquote,.rte-content pre{background:#f8fafc;background:var(--gray-50);margin:0 0 10px}.rte-content pre{border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;padding:10px 14px;white-space:pre-wrap}.rte-content a{color:#7c3aed;color:var(--primary);text-decoration:underline}.rte-content img{border-radius:8px;margin:4px 0;max-width:100%}.rte-toolbar{align-items:center;background:#fff;background:var(--bg-card);border-top:1px solid #f1f5f9;border-top:1px solid var(--border-light);display:flex;flex-wrap:wrap;gap:2px;padding:7px 10px}.rte-btn{align-items:center;background:#0000;border:none;border-radius:7px;color:#64748b;color:var(--text-muted);cursor:pointer;display:inline-flex;height:30px;justify-content:center;transition:background .12s,color .12s;width:30px}.rte-btn:hover{background:#f8fafc;background:var(--bg-hover);color:#7c3aed;color:var(--primary)}.rte-sep{background:#e2e8f0;background:var(--border);height:18px;margin:0 5px;width:1px}.rte-render{color:#334155;color:var(--text-sub);font-size:13.5px;line-height:1.8}.rte-render p{margin:0 0 10px}.rte-render h2{color:#0f172a;color:var(--text-main);font-size:15px;font-weight:700;margin:12px 0 6px}.rte-render ol,.rte-render ul{margin:0 0 10px;padding-left:24px}.rte-render blockquote{border-left:3px solid #7c3aed;border-left:3px solid var(--primary);padding:6px 14px}.rte-render blockquote,.rte-render pre{background:#fff;background:var(--bg-card);margin:0 0 10px}.rte-render pre{border-radius:8px;font-family:ui-monospace,Menlo,monospace;font-size:13px;padding:10px 14px;white-space:pre-wrap}.rte-render a{color:#7c3aed;color:var(--primary);text-decoration:underline}.rte-render img{border-radius:8px;max-width:100%}.rte-btn:disabled{cursor:default;opacity:.5}.rte-uploading{align-self:center;color:#7c3aed;color:var(--primary);font-size:12px;font-weight:600;margin-left:8px}@media (max-width:820px){.card,.card-body{padding:14px!important}.card-header{padding:12px 14px!important}.modal,.modal-lg,.modal-md,.modal-sm{max-width:96vw!important}.modal-overlay{padding:10px!important}.modal-footer,.modal-header{padding:12px 16px!important}.modal-body{padding:14px 16px!important}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto!important}.data-table{min-width:680px}}@media (max-width:768px){[style*=grid-template-columns]{grid-template-columns:1fr!important}.actions-row,.btn-row,.filters,.toolbar{flex-wrap:wrap!important}h1{font-size:20px!important}}@media (max-width:480px){.modal-title{font-size:15px!important}.card{padding:12px!important}}
/*# sourceMappingURL=main.7e1e3a8d.css.map*/