*{box-sizing:border-box;scroll-behavior:smooth;margin:0;padding:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:var(--bg-container-card-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary-color)}html,body{width:100%;height:100%}html[data-theme=dark]{--primary-color:#2697ff;--bg-color:#212332;--bg-container-color:#2a2d3e;--bg-container-card-color:#34384d;--text-color:#fff;--text-secondary-color:#b5c9db;--error-color:#ff4d4f;--success-color:#52c41a;--warning-color:#faad14}html[data-theme=light]{--primary-color:#2697ff;--bg-color:#f1f6fc;--bg-container-color:#fff;--bg-container-card-color:#f7f9ff;--text-color:#000;--text-secondary-color:#a6a6a6;--error-color:#ff4d4f;--success-color:#52c41a;--warning-color:#faad14}.breadcrumb[data-v-bc85cc75],.breadcrumb-item[data-v-bc85cc75]{align-items:center;gap:8px;display:flex}.breadcrumb-link[data-v-bc85cc75]{color:var(--text-secondary-color);font-size:14px;text-decoration:none;transition:color .3s}.breadcrumb-link[data-v-bc85cc75]:hover{color:var(--primary-color)}.breadcrumb-text[data-v-bc85cc75]{color:var(--text-color);font-size:14px}.breadcrumb-item.active .breadcrumb-text[data-v-bc85cc75]{font-weight:500}.breadcrumb-separator[data-v-bc85cc75]{color:var(--text-secondary-color);font-size:16px}.default-layout[data-v-f53545ac]{background-color:var(--bg-color);flex-direction:column;width:100vw;height:100vh;display:flex;overflow:hidden}.layout-header[data-v-f53545ac]{background-color:var(--bg-container-color);border-bottom:1px solid var(--bg-container-card-color);flex-shrink:0;align-items:center;gap:24px;height:60px;padding:0 24px;display:flex}.header-logo[data-v-f53545ac]{flex-shrink:0;align-items:center;gap:12px;width:220px;display:flex}.logo-icon[data-v-f53545ac]{width:32px;height:32px}.logo-text[data-v-f53545ac]{color:var(--text-color);font-size:18px;font-weight:600}.header-breadcrumb[data-v-f53545ac]{flex:1;min-width:0}.header-right[data-v-f53545ac]{align-items:center;gap:16px;display:flex}.user-info[data-v-f53545ac]{align-items:center;gap:8px;display:flex}.user-avatar[data-v-f53545ac]{color:var(--primary-color);align-items:center;font-size:32px;display:flex}.user-name[data-v-f53545ac]{color:var(--text-color);font-size:14px;font-weight:500}.logout-button[data-v-f53545ac]{width:36px;height:36px;color:var(--text-secondary-color);cursor:pointer;background-color:#0000;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:20px;transition:all .3s;display:flex}.logout-button[data-v-f53545ac]:hover{background-color:var(--bg-container-card-color);color:var(--error-color)}.layout-body[data-v-f53545ac]{flex:1;display:flex;overflow:hidden}.layout-sidebar[data-v-f53545ac]{background-color:var(--bg-container-color);border-right:1px solid var(--bg-container-card-color);flex-shrink:0;width:220px;overflow-y:auto}.sidebar-nav[data-v-f53545ac]{flex-direction:column;gap:4px;padding:16px 12px;display:flex}.nav-item[data-v-f53545ac]{color:var(--text-secondary-color);cursor:pointer;border-radius:4px;align-items:center;gap:12px;padding:12px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:all .3s;display:flex}.nav-item[data-v-f53545ac]:hover{background-color:var(--bg-container-card-color);color:var(--text-color)}.nav-item.active[data-v-f53545ac]{background-color:var(--primary-color);color:#fff}.nav-icon[data-v-f53545ac]{flex-shrink:0;font-size:20px}.nav-text[data-v-f53545ac]{flex:1}.layout-content[data-v-f53545ac]{background-color:var(--bg-color);flex:1;overflow-y:auto}@media (width<=768px){.layout-sidebar[data-v-f53545ac]{width:180px}.logo-text[data-v-f53545ac],.user-name[data-v-f53545ac]{display:none}}.blank-layout[data-v-2ab16a15]{width:100vw;height:100vh;overflow:hidden auto}.toast[data-v-52c43f43]{z-index:9999;box-sizing:border-box;color:#333;background:#fff;border-radius:4px;align-items:center;width:max-content;max-width:min(360px,85vw);padding:12px 20px;display:flex;position:fixed;top:64px;left:50%;transform:translate(-50%);box-shadow:0 4px 20px #0000001a}.toast-icon[data-v-52c43f43]{flex-shrink:0;width:20px;height:20px;margin-right:10px}.toast-text[data-v-52c43f43]{word-break:break-word;font-size:14px;font-weight:500;line-height:1.4}.toast-enter-active[data-v-52c43f43]{transition:all .35s cubic-bezier(.21,1.02,.73,1)}.toast-leave-active[data-v-52c43f43]{transition:all .25s ease-in}.toast-enter-from[data-v-52c43f43]{opacity:0;transform:translate(-50%)translateY(-16px)}.toast-leave-to[data-v-52c43f43]{opacity:0;transform:translate(-50%)translateY(-12px)}@media (width<=480px){.toast[data-v-52c43f43]{padding:10px 18px;top:48px}.toast-icon[data-v-52c43f43]{width:18px;height:18px}.toast-text[data-v-52c43f43]{font-size:13px}}.modal-overlay[data-v-8ef55f68]{z-index:9999;background-color:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-container[data-v-8ef55f68]{background-color:var(--bg-container-color);border-radius:4px;width:100%;max-width:420px;overflow:hidden;box-shadow:0 12px 48px #0000004d}.modal-header[data-v-8ef55f68]{border-bottom:1px solid var(--bg-container-card-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title[data-v-8ef55f68]{color:var(--text-color);margin:0;font-size:18px;font-weight:600}.modal-close[data-v-8ef55f68]{width:32px;height:32px;color:var(--text-secondary-color);cursor:pointer;background-color:#0000;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:20px;transition:all .3s;display:flex}.modal-close[data-v-8ef55f68]:hover{background-color:var(--bg-container-card-color);color:var(--text-color)}.modal-body[data-v-8ef55f68]{flex-direction:column;align-items:center;gap:16px;padding:24px;display:flex}.modal-icon[data-v-8ef55f68]{justify-content:center;align-items:center;font-size:48px;display:flex}.modal-icon-info[data-v-8ef55f68]{color:var(--primary-color)}.modal-icon-success[data-v-8ef55f68]{color:var(--success-color)}.modal-icon-warning[data-v-8ef55f68]{color:var(--warning-color)}.modal-icon-error[data-v-8ef55f68]{color:var(--error-color)}.modal-message[data-v-8ef55f68]{color:var(--text-color);text-align:center;font-size:15px;line-height:1.6}.modal-footer[data-v-8ef55f68]{border-top:1px solid var(--bg-container-card-color);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.modal-button[data-v-8ef55f68]{cursor:pointer;border:none;border-radius:4px;justify-content:center;align-items:center;min-width:80px;height:40px;padding:0 20px;font-size:14px;font-weight:500;transition:all .3s;display:flex}.modal-button[data-v-8ef55f68]:disabled{opacity:.6;cursor:not-allowed}.modal-button-cancel[data-v-8ef55f68]{background-color:var(--bg-container-card-color);color:var(--text-color)}.modal-button-cancel[data-v-8ef55f68]:hover:not(:disabled){background-color:var(--bg-color)}.modal-button-confirm[data-v-8ef55f68]{color:#fff}.modal-button-info[data-v-8ef55f68]{background-color:var(--primary-color)}.modal-button-info[data-v-8ef55f68]:hover:not(:disabled){opacity:.9}.modal-button-success[data-v-8ef55f68]{background-color:var(--success-color)}.modal-button-success[data-v-8ef55f68]:hover:not(:disabled){opacity:.9}.modal-button-warning[data-v-8ef55f68]{background-color:var(--warning-color)}.modal-button-warning[data-v-8ef55f68]:hover:not(:disabled){opacity:.9}.modal-button-error[data-v-8ef55f68]{background-color:var(--error-color)}.modal-button-error[data-v-8ef55f68]:hover:not(:disabled){opacity:.9}.loading-spinner[data-v-8ef55f68]{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin-8ef55f68;display:inline-block}@keyframes spin-8ef55f68{to{transform:rotate(360deg)}}.modal-fade-enter-active[data-v-8ef55f68],.modal-fade-leave-active[data-v-8ef55f68]{transition:opacity .3s}.modal-fade-enter-from[data-v-8ef55f68],.modal-fade-leave-to[data-v-8ef55f68]{opacity:0}.modal-slide-enter-active[data-v-8ef55f68],.modal-slide-leave-active[data-v-8ef55f68]{transition:all .3s}.modal-slide-enter-from[data-v-8ef55f68]{opacity:0;transform:translateY(-20px)scale(.95)}.modal-slide-leave-to[data-v-8ef55f68]{opacity:0;transform:translateY(20px)scale(.95)}@media (width<=768px){.modal-container[data-v-8ef55f68]{max-width:90vw}.modal-footer[data-v-8ef55f68]{flex-direction:column-reverse}.modal-button[data-v-8ef55f68]{width:100%}}
