@import "https://cdn.staticfile.org/inter-ui/3.19.0/inter.css";@import "https://cdn.staticfile.org/inter-ui/3.19.0/inter.css";@import "https://cdn.staticfile.org/inter-ui/3.19.0/inter.css";.toast-container[data-v-d02d58fb]{z-index:99999999;pointer-events:none;flex-direction:column;align-items:center;display:flex;position:fixed;top:80px;left:50%;transform:translate(-50%)}.toast-item[data-v-d02d58fb]{pointer-events:auto;-webkit-backdrop-filter:blur(16px);color:#0f172a;cursor:pointer;white-space:nowrap;text-align:center;background:#ffffffd9;border-radius:12px;max-width:400px;padding:10px 20px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:500;line-height:1.5;overflow:hidden;box-shadow:0 8px 32px #00000014}.toast-fold-enter-active[data-v-d02d58fb]{animation:.35s cubic-bezier(.22,1,.36,1) forwards toastFoldIn-d02d58fb}.toast-fold-leave-active[data-v-d02d58fb]{animation:.25s cubic-bezier(.22,1,.36,1) forwards toastFoldOut-d02d58fb}@keyframes toastFoldIn-d02d58fb{0%{opacity:0;max-height:0;padding:0 24px;transform:translateY(-20px)scale(.92)}40%{opacity:1;transform:translateY(4px)scale(1.01)}to{opacity:1;max-height:80px;padding:10px 20px;transform:translateY(0)scale(1)}}@keyframes toastFoldOut-d02d58fb{0%{opacity:1;max-height:80px;padding:10px 20px;transform:translateY(0)scale(1)}to{opacity:0;max-height:0;padding:0 24px;transform:translateY(-20px)scale(.92)}}.confirm-overlay[data-v-e2737eee]{z-index:99999998;background:#0003;justify-content:center;align-items:center;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex;position:fixed;inset:0}.confirm-card[data-v-e2737eee]{background:#fff;border-radius:14px;width:100%;max-width:340px;padding:24px 28px;box-shadow:0 16px 48px #0000001f}.confirm-body[data-v-e2737eee]{color:#0f172a;word-break:break-word;margin-bottom:22px;font-size:14px;line-height:1.6}.confirm-actions[data-v-e2737eee]{justify-content:flex-end;gap:10px;display:flex}.btn-cancel[data-v-e2737eee]{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:8px 18px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:500;transition:all .2s}.btn-cancel[data-v-e2737eee]:hover{background:#f8fafc;border-color:#cbd5e1}.btn-confirm[data-v-e2737eee]{color:#fff;cursor:pointer;background:#4f46e5;border:1px solid #4f46e5;border-radius:8px;padding:8px 18px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:500;transition:all .2s}.btn-confirm[data-v-e2737eee]:hover{background:#4338ca;border-color:#4338ca}.confirm-fade-enter-active[data-v-e2737eee]{transition:opacity .25s}.confirm-fade-leave-active[data-v-e2737eee]{transition:opacity .2s}.confirm-fade-enter-from[data-v-e2737eee],.confirm-fade-leave-to[data-v-e2737eee]{opacity:0}.confirm-scale-enter-active[data-v-e2737eee]{transition:all .25s cubic-bezier(.22,1,.36,1)}.confirm-scale-leave-active[data-v-e2737eee]{transition:all .2s cubic-bezier(.22,1,.36,1)}.confirm-scale-enter-from[data-v-e2737eee],.confirm-scale-leave-to[data-v-e2737eee]{opacity:0;transform:scale(.92)}.watermark-layer[data-v-37d36b95]{z-index:2147483647;pointer-events:none;opacity:.1;background-repeat:repeat;background-size:300px 200px;position:fixed;inset:0}.navbar[data-v-f382c11b]{z-index:1000;background:#fff;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;height:64px;padding:0 20px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 1px 3px #0000000a,0 1px 2px #0000000f}.navbar-left[data-v-f382c11b]{align-items:center;min-width:0;display:flex}.brand[data-v-f382c11b]{align-items:center;gap:10px;display:flex}.brand-logo[data-v-f382c11b]{object-fit:cover;border-radius:8px;width:32px;height:32px}.brand-text[data-v-f382c11b]{white-space:nowrap;align-items:center;gap:2px;display:flex}.brand-name[data-v-f382c11b]{color:#000;letter-spacing:-.3px;font-size:15px;font-weight:700}.brand-sub[data-v-f382c11b]{background:linear-gradient(135deg,#7c3aed,#a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:15px;font-weight:700}.version-tag[data-v-f382c11b]{color:#7c3aed;white-space:nowrap;background:#f5f3ff;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.navbar-center[data-v-f382c11b]{align-items:center;gap:4px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.nav-tab[data-v-f382c11b]{cursor:pointer;color:#64748b;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .2s;display:flex;position:relative}.nav-tab[data-v-f382c11b]:hover{color:#374151;background:#f8fafc}.nav-tab.active[data-v-f382c11b]{color:#7c3aed;background:#f5f3ff}.nav-tab.active[data-v-f382c11b]:after{content:"";background:#7c3aed;border-radius:1px;width:24px;height:2px;position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.nav-tab-icon[data-v-f382c11b]{justify-content:center;align-items:center;width:18px;height:18px;display:flex}.nav-tab-icon[data-v-f382c11b] svg{width:18px;height:18px}.navbar-right[data-v-f382c11b]{align-items:center;gap:12px;margin-left:auto;display:flex}.user-info[data-v-f382c11b]{border-radius:24px;align-items:center;gap:10px;padding:4px 8px 4px 4px;transition:background .2s;display:flex}.user-info[data-v-f382c11b]:hover{background:#f8fafc}.user-avatar[data-v-f382c11b]{background:linear-gradient(135deg,#7c3aed,#a78bfa);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex;overflow:hidden}.avatar-img[data-v-f382c11b]{object-fit:cover;width:100%;height:100%}.avatar-text[data-v-f382c11b]{color:#fff;font-size:14px;font-weight:600}.user-detail[data-v-f382c11b]{flex-direction:column;min-width:0;display:flex}.user-name[data-v-f382c11b]{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;max-width:100px;font-size:13px;font-weight:600;line-height:1.2;overflow:hidden}.user-greeting[data-v-f382c11b]{color:#94a3b8;white-space:nowrap;font-size:11px;line-height:1.2}.role-badge[data-v-f382c11b]{color:#fff;white-space:nowrap;border-radius:20px;flex-shrink:0;padding:3px 10px;font-size:11px;font-weight:600}.role-admin[data-v-f382c11b]{background:#7c3aed}.role-agent[data-v-f382c11b]{background:#3b82f6}.role-user[data-v-f382c11b]{background:#94a3b8}.nav-action-btn[data-v-f382c11b]{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.nav-action-btn[data-v-f382c11b]:hover{color:#374151;background:#f1f5f9}.logout-btn[data-v-f382c11b]:hover{color:#ef4444;background:#fef2f2}.confirm-overlay[data-v-f382c11b]{z-index:9999;background:#0006;justify-content:center;align-items:center;animation:.2s overlayIn-f382c11b;display:flex;position:fixed;inset:0}@keyframes overlayIn-f382c11b{0%{opacity:0}to{opacity:1}}.confirm-box[data-v-f382c11b]{background:#fff;border-radius:12px;width:360px;max-width:90vw;padding:24px;animation:.25s confirmIn-f382c11b;box-shadow:0 20px 60px #00000026}@keyframes confirmIn-f382c11b{0%{opacity:0;transform:scale(.9)translateY(-10px)}to{opacity:1;transform:scale(1)translateY(0)}}.confirm-title[data-v-f382c11b]{color:#1e293b;margin-bottom:8px;font-size:16px;font-weight:600}.confirm-message[data-v-f382c11b]{color:#64748b;margin-bottom:24px;font-size:14px;line-height:1.5}.confirm-actions[data-v-f382c11b]{justify-content:flex-end;gap:12px;display:flex}.confirm-btn[data-v-f382c11b]{cursor:pointer;border:none;border-radius:8px;padding:8px 20px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;font-weight:500;transition:all .2s}.confirm-cancel[data-v-f382c11b]{color:#475569;background:#f1f5f9}.confirm-cancel[data-v-f382c11b]:hover{background:#e2e8f0}.confirm-ok[data-v-f382c11b]{color:#fff;background:#7c3aed}.confirm-ok[data-v-f382c11b]:hover{background:#6d28d9}@media (width<=768px){.navbar[data-v-f382c11b]{padding:0 12px}.brand-text[data-v-f382c11b],.version-tag[data-v-f382c11b],.user-greeting[data-v-f382c11b]{display:none}.navbar-right[data-v-f382c11b]{gap:8px}}.sidebar[data-v-e755aa05]{-webkit-backdrop-filter:blur(12px);z-index:900;background:#ffffffd9;border-right:1px solid #e2e8f0;width:240px;padding:12px 0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:fixed;top:64px;bottom:0;left:0;overflow:hidden auto}.sidebar[data-v-e755aa05]::-webkit-scrollbar{width:0;display:none}.sidebar[data-v-e755aa05]{-ms-overflow-style:none;scrollbar-width:none}.sidebar-nav[data-v-e755aa05]{flex-direction:column;display:flex}.menu-group[data-v-e755aa05]{margin-bottom:8px}.menu-group-title[data-v-e755aa05]{color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;-webkit-user-select:none;user-select:none;padding:8px 20px 6px;font-size:11px;font-weight:600}.menu-item[data-v-e755aa05]{cursor:pointer;color:#475569;-webkit-user-select:none;user-select:none;align-items:center;height:44px;padding-left:20px;padding-right:16px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:flex;position:relative}.menu-item[data-v-e755aa05]:hover{color:#1e293b;background:#f8fafc}.menu-item.active[data-v-e755aa05]{color:#7c3aed;background:#f5f3ff}.menu-item.active[data-v-e755aa05]:before{content:"";background:#7c3aed;border-radius:0 3px 3px 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.menu-icon[data-v-e755aa05]{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-right:12px;display:flex}.menu-icon[data-v-e755aa05] svg{width:20px;height:20px}.menu-label[data-v-e755aa05]{white-space:nowrap;text-overflow:ellipsis;flex:1;line-height:1;overflow:hidden}.new-badge[data-v-e755aa05]{color:#fff;background:#ef4444;border-radius:8px;flex-shrink:0;margin-left:8px;padding:2px 6px;font-size:9px;font-weight:700;line-height:1;animation:2s infinite pulse-e755aa05}@keyframes pulse-e755aa05{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 6px #ef444400}to{box-shadow:0 0 #ef444400}}.external-icon[data-v-e755aa05]{color:#94a3b8;flex-shrink:0;width:14px;height:14px;margin-left:auto}.mobile-tabbar[data-v-f149a5e6]{z-index:1000;background:#fff;border-top:1px solid #e2e8f0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:fixed;bottom:0;left:0;right:0}.tabbar-inner[data-v-f149a5e6]{justify-content:space-around;align-items:center;height:56px;padding:0 4px;display:flex}.tabbar-safe-area[data-v-f149a5e6]{height:env(safe-area-inset-bottom,0px)}.tab-item[data-v-f149a5e6]{cursor:pointer;color:#94a3b8;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;transition:color .2s;display:flex;position:relative}.tab-item[data-v-f149a5e6]:active{opacity:.7}.tab-item.active[data-v-f149a5e6]{color:#7c3aed}.tab-icon[data-v-f149a5e6]{justify-content:center;align-items:center;width:20px;height:20px;display:flex}.tab-icon[data-v-f149a5e6] svg,.tab-icon-svg[data-v-f149a5e6]{width:20px;height:20px}.tab-label[data-v-f149a5e6]{white-space:nowrap;font-size:10px;font-weight:500;line-height:1}.more-overlay[data-v-f149a5e6]{z-index:2000;background:#0006;animation:.25s overlayFadeIn-f149a5e6;position:fixed;inset:0}@keyframes overlayFadeIn-f149a5e6{0%{opacity:0}to{opacity:1}}.more-panel[data-v-f149a5e6]{z-index:2001;background:#fff;border-radius:16px 16px 0 0;flex-direction:column;max-height:70vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.more-panel.panel-visible[data-v-f149a5e6]{transform:translateY(0)}.more-panel-header[data-v-f149a5e6]{border-bottom:1px solid #f1f5f9;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px 12px;display:flex}.more-panel-title[data-v-f149a5e6]{color:#1e293b;font-size:16px;font-weight:600}.more-panel-close[data-v-f149a5e6]{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.more-panel-close[data-v-f149a5e6]:hover{color:#374151;background:#e2e8f0}.more-panel-body[data-v-f149a5e6]{padding:8px 0;padding-bottom:env(safe-area-inset-bottom,16px);flex:1;overflow-y:auto}.more-menu-item[data-v-f149a5e6]{cursor:pointer;color:#475569;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;align-items:center;height:48px;padding:0 20px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.more-menu-item[data-v-f149a5e6]:active{background:#f8fafc}.more-menu-item.active[data-v-f149a5e6]{color:#7c3aed}.more-menu-icon[data-v-f149a5e6]{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-right:14px;display:flex}.more-menu-icon[data-v-f149a5e6] svg{width:20px;height:20px}.more-menu-label[data-v-f149a5e6]{white-space:nowrap;flex:1;line-height:1}.more-new-badge[data-v-f149a5e6]{color:#fff;background:#ef4444;border-radius:8px;flex-shrink:0;margin-left:8px;padding:2px 6px;font-size:9px;font-weight:700;line-height:1}.more-external-icon[data-v-f149a5e6]{color:#94a3b8;flex-shrink:0;width:14px;height:14px;margin-left:8px}.more-arrow-icon[data-v-f149a5e6]{color:#cbd5e1;flex-shrink:0;width:14px;height:14px;margin-left:8px}@media (width>=769px){.app-container[data-v-e6bad47e]{z-index:1;flex-direction:column;height:100vh;display:flex;position:relative;overflow:hidden}.app-body[data-v-e6bad47e]{flex:1;gap:16px;min-height:0;padding:8px 16px 16px;display:flex}.app-body[data-v-e6bad47e] .sidebar-wrapper{-webkit-backdrop-filter:blur(24px)saturate(180%);z-index:999;scrollbar-width:thin;scrollbar-color:#0000000f transparent;background:#fff9;border:1px solid #ffffff4d;border-radius:16px;flex-shrink:0;width:240px;margin:0;padding:16px 12px;overflow:hidden auto;box-shadow:0 4px 24px #0000000a,inset 0 1px #ffffff80;height:100%!important;position:relative!important;top:0!important}.app-body[data-v-e6bad47e] .sidebar-wrapper::-webkit-scrollbar{width:4px}.app-body[data-v-e6bad47e] .sidebar-wrapper::-webkit-scrollbar-thumb{background:#0000000f;border-radius:4px}.dashboard-main[data-v-e6bad47e]{-webkit-backdrop-filter:blur(12px);scrollbar-width:thin;scrollbar-color:#0000000f transparent;background:#ffffff80;border:1px solid #ffffff4d;border-radius:16px;flex:1;min-width:0;padding:16px 24px 24px;overflow-y:auto;box-shadow:0 2px 16px #00000008}.dashboard-main[data-v-e6bad47e]::-webkit-scrollbar{width:4px}.dashboard-main[data-v-e6bad47e]::-webkit-scrollbar-thumb{background:#0000000f;border-radius:4px}.dashboard-main[data-v-e6bad47e]::-webkit-scrollbar-track{background:0 0}[data-v-e6bad47e] .mobile-bottom-tabs{display:none!important}}@media (width<=768px){.app-container[data-v-e6bad47e]{z-index:1;flex-direction:column;min-height:100vh;padding-bottom:80px;display:flex;position:relative}.app-body[data-v-e6bad47e]{flex-direction:column;flex:1;gap:12px;padding:0 12px 12px;display:flex}.app-body[data-v-e6bad47e] .sidebar-wrapper{display:none!important}.dashboard-main[data-v-e6bad47e]{-webkit-backdrop-filter:blur(12px);background:#ffffff80;border:1px solid #ffffff4d;border-radius:12px;padding:12px 16px 16px;box-shadow:0 2px 16px #00000008}[data-v-e6bad47e] .mobile-bottom-tabs{z-index:9999;position:fixed;bottom:12px;left:12px;right:12px;display:flex!important}}@media (width<=480px){.app-body[data-v-e6bad47e]{padding:0 8px 8px}.dashboard-main[data-v-e6bad47e]{padding:10px 12px 12px}[data-v-e6bad47e] .mobile-bottom-tabs{bottom:10px;left:8px;right:8px}}:root{--c-primary:#6366f1;--c-primary-light:#818cf8;--c-primary-dark:#4f46e5;--c-primary-50:#eef2ff;--c-primary-100:#e0e7ff;--c-primary-200:#c7d2fe;--c-secondary:#8b5cf6;--c-secondary-light:#a78bfa;--c-accent:#06b6d4;--c-accent-light:#22d3ee;--c-gradient:linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #06b6d4 100%);--c-gradient-subtle:linear-gradient(135deg, #eef2ff 0%, #f5f3ff 50%, #ecfeff 100%);--c-gradient-hover:linear-gradient(135deg, #4f46e5 0%, #7c3aed 50%, #0891b2 100%);--c-gradient-card:linear-gradient(135deg, #6366f10f 0%, #8b5cf60f 50%, #06b6d40a 100%);--c-gradient-border:linear-gradient(135deg, #6366f1, #8b5cf6, #06b6d4);--c-gradient-text:linear-gradient(135deg, #6366f1, #8b5cf6);--c-success:#10b981;--c-success-light:#d1fae5;--c-warning:#f59e0b;--c-warning-light:#fef3c7;--c-danger:#ef4444;--c-danger-light:#fee2e2;--c-info:#3b82f6;--c-info-light:#dbeafe;--c-bg:#f8fafc;--c-surface:#fff;--c-text:#0f172a;--c-text-secondary:#475569;--c-text-muted:#94a3b8;--c-border:#e2e8f0;--c-border-light:#f1f5f9;--c-divider:#f1f5f9;--shadow-xs:0 1px 2px #6366f10a;--shadow-sm:0 2px 8px #6366f10f;--shadow-md:0 4px 16px #6366f114;--shadow-lg:0 8px 32px #6366f11a;--shadow-xl:0 16px 48px #6366f11f;--shadow-glow:0 0 20px #6366f126;--shadow-card:0 2px 12px #0000000a, 0 0 0 1px #6366f10f;--shadow-card-hover:0 8px 32px #6366f11f, 0 0 0 1px #6366f11a;--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--radius-2xl:32px;--radius-full:9999px;--ease-out:cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--transition-fast:all .15s var(--ease-out);--transition:all .25s var(--ease-out);--transition-slow:all .4s var(--ease-out);--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Courier New", monospace;--navbar-height:64px;--sidebar-width:220px;--sidebar-collapsed-width:68px}.admin-theme{--c-primary:#3b82f6;--c-primary-light:#60a5fa;--c-primary-dark:#2563eb;--c-primary-50:#eff6ff;--c-primary-100:#dbeafe;--c-primary-200:#bfdbfe;--c-secondary:#6366f1;--c-secondary-light:#818cf8;--c-accent:#10b981;--c-accent-light:#34d399;--c-gradient:linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);--c-gradient-subtle:linear-gradient(135deg, #eff6ff 0%, #eef2ff 100%);--c-gradient-hover:linear-gradient(135deg, #2563eb 0%, #4f46e5 100%);--c-gradient-card:linear-gradient(135deg, #3b82f60a 0%, #6366f10a 100%);--c-gradient-border:linear-gradient(135deg, #3b82f6, #6366f1);--c-gradient-text:linear-gradient(135deg, #3b82f6, #6366f1);--c-bg:#f1f5f9;--c-surface:#fff;--c-text:#0f172a;--c-text-secondary:#475569;--c-text-muted:#94a3b8;--c-border:#e2e8f0;--c-border-light:#f1f5f9;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001a;--shadow-card:0 1px 3px #0000000f, 0 0 0 1px #e2e8f0cc;--shadow-card-hover:0 4px 16px #00000014, 0 0 0 1px #3b82f626}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--c-bg);color:var(--c-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.5;font-family:var(--font-family)!important}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select,textarea{outline:none;font-family:inherit}ul,ol{list-style:none}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#6366f126;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#6366f14d}.admin-theme ::-webkit-scrollbar-thumb{background:#64748b33}.admin-theme ::-webkit-scrollbar-thumb:hover{background:#64748b59}.gradient-text{background:var(--c-gradient-text);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.g-card{background:var(--c-surface);border-radius:var(--radius-lg);transition:var(--transition);box-shadow:var(--shadow-card);position:relative}.g-card:before{content:"";border-radius:inherit;background:var(--c-gradient-border);-webkit-mask-composite:xor;opacity:0;transition:opacity .3s var(--ease-out);pointer-events:none;padding:1.5px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.g-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.g-card:hover:before{opacity:1}.g-card-simple{background:var(--c-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1px solid var(--c-border-light);transition:var(--transition)}.g-card-simple:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.g-btn{border-radius:var(--radius-sm);transition:var(--transition);white-space:nowrap;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;line-height:1.4;display:inline-flex}.g-btn-primary{background:var(--c-gradient);color:#fff;box-shadow:0 2px 8px #6366f140}.g-btn-primary:hover{background:var(--c-gradient-hover);transform:translateY(-1px);box-shadow:0 4px 16px #6366f159}.g-btn-primary:active{transform:translateY(0)}.g-btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.g-btn-secondary{background:var(--c-primary-50);color:var(--c-primary-dark);border:1px solid var(--c-primary-200)}.g-btn-secondary:hover{background:var(--c-primary-100);border-color:var(--c-primary-light)}.g-btn-ghost{color:var(--c-text-secondary);background:0 0}.g-btn-ghost:hover{background:var(--c-border-light);color:var(--c-text)}.g-btn-danger{background:var(--c-danger-light);color:var(--c-danger)}.g-btn-danger:hover{background:var(--c-danger);color:#fff}.g-btn-sm{border-radius:var(--radius-xs);padding:6px 14px;font-size:13px}.g-btn-lg{border-radius:var(--radius-md);padding:14px 28px;font-size:16px}.g-input{border:1.5px solid var(--c-border);border-radius:var(--radius-sm);width:100%;color:var(--c-text);background:var(--c-surface);transition:var(--transition-fast);padding:11px 16px;font-size:14px}.g-input:focus{border-color:var(--c-primary);box-shadow:0 0 0 4px #6366f114}.g-input::placeholder{color:var(--c-text-muted)}.g-input.is-error{border-color:var(--c-danger)}.g-input.is-error:focus{box-shadow:0 0 0 4px #ef444414}.g-label{color:var(--c-text);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.g-label .required{color:var(--c-danger);margin-left:2px}.g-select{border:1.5px solid var(--c-border);border-radius:var(--radius-sm);width:100%;color:var(--c-text);background:var(--c-surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 12px center;appearance:none;cursor:pointer;transition:var(--transition-fast);padding:11px 40px 11px 16px;font-size:14px}.g-select:focus{border-color:var(--c-primary);box-shadow:0 0 0 4px #6366f114}.g-badge{border-radius:var(--radius-full);align-items:center;padding:3px 10px;font-size:12px;font-weight:600;line-height:1.5;display:inline-flex}.g-badge-primary{background:var(--c-primary-50);color:var(--c-primary-dark)}.g-badge-success{background:var(--c-success-light);color:#059669}.g-badge-warning{background:var(--c-warning-light);color:#d97706}.g-badge-danger{background:var(--c-danger-light);color:#dc2626}.g-badge-info{background:var(--c-info-light);color:#2563eb}.g-badge-muted{color:#64748b;background:#f1f5f9}.g-stat{border-radius:var(--radius-lg);background:var(--c-surface);border:1px solid var(--c-border-light);transition:var(--transition);padding:20px;position:relative;overflow:hidden}.g-stat:after{content:"";background:var(--c-gradient);opacity:0;height:3px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.g-stat:hover:after{opacity:1}.g-stat:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.g-stat-value{color:var(--c-text);margin-bottom:4px;font-size:28px;font-weight:800;line-height:1.2}.g-stat-label{color:var(--c-text-muted);font-size:13px;font-weight:500}.g-table-wrap{background:var(--c-surface);border-radius:var(--radius-lg);border:1px solid var(--c-border-light);overflow:hidden}.g-table{border-collapse:collapse;width:100%;font-size:14px}.g-table thead th{text-align:left;color:var(--c-text-muted);text-transform:uppercase;letter-spacing:.5px;background:var(--c-border-light);border-bottom:1px solid var(--c-border);padding:12px 16px;font-size:12px;font-weight:600}.g-table tbody td{border-bottom:1px solid var(--c-divider);color:var(--c-text-secondary);vertical-align:middle;padding:14px 16px}.g-table tbody tr{transition:background .15s}.g-table tbody tr:hover{background:var(--c-primary-50)}.g-table tbody tr:last-child td{border-bottom:none}.g-pagination{justify-content:center;align-items:center;gap:6px;margin-top:20px;display:flex}.g-pagination .g-page-btn{border-radius:var(--radius-sm);min-width:36px;height:36px;color:var(--c-text-secondary);border:1px solid var(--c-border);background:var(--c-surface);transition:var(--transition-fast);justify-content:center;align-items:center;font-size:14px;font-weight:500;display:flex}.g-pagination .g-page-btn:hover{border-color:var(--c-primary-light);color:var(--c-primary)}.g-pagination .g-page-btn.active{background:var(--c-gradient);color:#fff;border-color:#0000;box-shadow:0 2px 8px #6366f140}.g-pagination .g-page-btn:disabled{opacity:.4;cursor:not-allowed}.g-skeleton{background:linear-gradient(90deg, var(--c-border-light) 25%, var(--c-border) 50%, var(--c-border-light) 75%);border-radius:var(--radius-xs);background-size:200% 100%;animation:1.5s ease-in-out infinite skeletonShimmer}.g-skeleton-text{height:14px;margin-bottom:8px}.g-skeleton-title{width:60%;height:20px;margin-bottom:12px}.g-skeleton-avatar{border-radius:50%;width:40px;height:40px}.g-skeleton-card{border-radius:var(--radius-lg);height:120px}@keyframes skeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.g-progress{background:var(--c-border-light);border-radius:3px;width:100%;height:6px;overflow:hidden}.g-progress-bar{background:var(--c-gradient);height:100%;transition:width .6s var(--ease-out);border-radius:3px}.g-progress-bar.animated{animation:progressPulse 2s var(--ease-out) infinite}@keyframes progressPulse{0%,to{opacity:1}50%{opacity:.7}}.g-empty{color:var(--c-text-muted);flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.g-empty-icon{opacity:.4;margin-bottom:16px;font-size:48px}.g-empty-title{color:var(--c-text-secondary);margin-bottom:4px;font-size:16px;font-weight:600}.g-empty-desc{font-size:13px}.g-toast-container{z-index:9999999;pointer-events:none;flex-direction:column;align-items:center;gap:8px;max-width:90vw;display:flex;position:fixed;top:24px;left:50%;transform:translate(-50%)}.g-toast-item{background:var(--c-surface);border:1px solid var(--c-border-light);border-radius:var(--radius-md);color:var(--c-text);box-shadow:var(--shadow-lg);pointer-events:auto;animation:toastFoldIn .4s var(--ease-spring) forwards;padding:12px 24px;font-size:14px;font-weight:500}.g-toast-item.removing{animation:toastFoldOut .35s var(--ease-out) forwards}@keyframes toastFoldIn{0%{opacity:0;max-height:0;padding:0 24px;transform:translateY(-20px)scale(.92)}40%{opacity:1;transform:translateY(4px)scale(1.01)}to{opacity:1;max-height:80px;padding:12px 24px;transform:translateY(0)scale(1)}}@keyframes toastFoldOut{0%{opacity:1;max-height:80px;padding:12px 24px;transform:translateY(0)scale(1)}to{opacity:0;max-height:0;padding:0 24px;transform:translateY(-20px)scale(.92)}}.g-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:10002;background:#0f172a80;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.g-modal-overlay.active{display:flex}.g-modal-box{background:var(--c-surface);border-radius:var(--radius-xl);width:100%;max-width:480px;animation:modalSlideDown .4s var(--ease-spring);box-shadow:var(--shadow-xl);border:1px solid var(--c-border-light);padding:32px 28px 28px;position:relative}.g-modal-box .g-modal-close{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--c-text-muted);transition:var(--transition-fast);justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;top:14px;right:16px}.g-modal-box .g-modal-close:hover{background:var(--c-border-light);color:var(--c-text)}.g-modal-title{color:var(--c-text);margin-bottom:4px;font-size:18px;font-weight:700}.g-modal-hint{color:var(--c-text-muted);margin-bottom:16px;font-size:13px;line-height:1.5}@keyframes modalSlideDown{0%{opacity:0;transform:translateY(-50px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes slideRight{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes staggerIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes floatBubble1{0%,to{transform:translate(0)scale(1)rotate(0)}33%{transform:translate(-20px,15px)scale(1.04)rotate(3deg)}66%{transform:translate(15px,-10px)scale(.96)rotate(-2deg)}}@keyframes floatBubble2{0%,to{transform:translate(0)scale(1)rotate(0)}50%{transform:translate(18px,-12px)scale(1.05)rotate(-4deg)}}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}@keyframes rise{0%{opacity:.5;bottom:-100px;transform:translate(0)scale(1)rotate(0)}50%{opacity:.25;transform:translate(-30px)scale(1.1)rotate(8deg)}to{opacity:0;bottom:100vh;transform:translate(-60px)scale(.4)rotate(15deg)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.page-enter-active{animation:.3s fadeIn}.page-leave-active{animation:.15s fadeOut}.stagger-item{opacity:0;animation:staggerIn .4s var(--ease-out) forwards}.stagger-item:first-child{animation-delay:50ms}.stagger-item:nth-child(2){animation-delay:.1s}.stagger-item:nth-child(3){animation-delay:.15s}.stagger-item:nth-child(4){animation-delay:.2s}.stagger-item:nth-child(5){animation-delay:.25s}.stagger-item:nth-child(6){animation-delay:.3s}.stagger-item:nth-child(7){animation-delay:.35s}.stagger-item:nth-child(8){animation-delay:.4s}.stagger-item:nth-child(9){animation-delay:.45s}.stagger-item:nth-child(10){animation-delay:.5s}.text-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-center{text-align:center}.text-right{text-align:right}.fw-600{font-weight:600}.fw-700{font-weight:700}.gap-sm{gap:8px}.gap-md{gap:16px}.gap-lg{gap:24px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.w-full{width:100%}.h-full{height:100%}.overflow-hidden{overflow:hidden}.relative{position:relative}
