*{margin:0;padding:0;box-sizing:border-box}html{overflow-y:scroll}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#333}#app{width:100%;min-height:100vh}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}*{scrollbar-width:thin;scrollbar-color:#c1c1c1 #f1f1f1}.toast-wrapper[data-v-6ace3b43]{position:fixed;top:80px;right:24px;z-index:10000;display:flex;flex-direction:column;gap:12px}.toast-item[data-v-6ace3b43]{min-width:320px;max-width:500px;border-radius:12px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;box-shadow:0 4px 12px #00000026;position:relative}.toast-item.success[data-v-6ace3b43]{background:linear-gradient(135deg,#f6ffed,#fff);border:1px solid #95de64}.toast-item.error[data-v-6ace3b43]{background:linear-gradient(135deg,#fff2f0,#fff);border:1px solid #ffa39e}.toast-item.warning[data-v-6ace3b43]{background:linear-gradient(135deg,#fffbe6,#fff);border:1px solid #ffe58f}.toast-item.info[data-v-6ace3b43]{background:linear-gradient(135deg,#e6f7ff,#fff);border:1px solid #91d5ff}.toast-content[data-v-6ace3b43]{display:flex;align-items:center;gap:14px;font-weight:500;flex:1}.success .toast-content[data-v-6ace3b43]{color:#389e0d}.success .toast-content i[data-v-6ace3b43]{color:#52c41a;font-size:20px}.error .toast-content[data-v-6ace3b43]{color:#cf1322}.error .toast-content i[data-v-6ace3b43]{color:#ff4d4f;font-size:20px}.warning .toast-content[data-v-6ace3b43]{color:#d48806}.warning .toast-content i[data-v-6ace3b43]{color:#faad14;font-size:20px}.info .toast-content[data-v-6ace3b43]{color:#096dd9}.info .toast-content i[data-v-6ace3b43]{color:#1890ff;font-size:20px}.btn-close[data-v-6ace3b43]{background:none;border:none;cursor:pointer;padding:6px 10px;border-radius:6px;transition:all .2s;font-size:16px;color:inherit}.btn-close[data-v-6ace3b43]:hover{background:#0000001a;transform:rotate(90deg)}.progress-bar[data-v-6ace3b43]{position:absolute;bottom:0;left:0;height:3px;animation:shrink-6ace3b43 5s linear forwards;border-radius:0 0 12px 12px}.success .progress-bar[data-v-6ace3b43]{background:linear-gradient(90deg,#52c41a,#95de64)}.error .progress-bar[data-v-6ace3b43]{background:linear-gradient(90deg,#ff4d4f,#ffa39e)}.warning .progress-bar[data-v-6ace3b43]{background:linear-gradient(90deg,#faad14,#ffe58f)}.info .progress-bar[data-v-6ace3b43]{background:linear-gradient(90deg,#1890ff,#91d5ff)}.toast-enter-active[data-v-6ace3b43],.toast-leave-active[data-v-6ace3b43]{transition:all .3s ease}.toast-enter-from[data-v-6ace3b43],.toast-leave-to[data-v-6ace3b43]{opacity:0;transform:translate(100%)}@keyframes shrink-6ace3b43{0%{width:100%}to{width:0%}}.dialog-overlay[data-v-3fa1521e]{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:20000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog-box[data-v-3fa1521e]{background:#fff;border-radius:16px;width:90%;max-width:420px;box-shadow:0 20px 60px #0003;overflow:hidden;display:flex;flex-direction:column}.dialog-icon[data-v-3fa1521e]{display:flex;align-items:center;justify-content:center;padding:28px 24px 12px}.dialog-icon i[data-v-3fa1521e]{font-size:48px}.dialog-box.info .dialog-icon i[data-v-3fa1521e]{color:#1890ff}.dialog-box.success .dialog-icon i[data-v-3fa1521e]{color:#52c41a}.dialog-box.warning .dialog-icon i[data-v-3fa1521e]{color:#faad14}.dialog-box.danger .dialog-icon i[data-v-3fa1521e]{color:#ff4d4f}.dialog-body[data-v-3fa1521e]{padding:8px 28px 24px;text-align:center}.dialog-title[data-v-3fa1521e]{font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:10px}.dialog-message[data-v-3fa1521e]{font-size:14px;color:#595959;line-height:1.7}.dialog-footer[data-v-3fa1521e]{display:flex;gap:12px;padding:0 24px 24px}.dialog-footer.single-btn[data-v-3fa1521e]{justify-content:center}.dialog-footer button[data-v-3fa1521e]{flex:1;padding:10px 0;border:none;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel[data-v-3fa1521e]{background:#f5f5f5;color:#595959}.btn-cancel[data-v-3fa1521e]:hover{background:#e8e8e8}.btn-confirm[data-v-3fa1521e]{color:#fff}.btn-confirm.info[data-v-3fa1521e]{background:#1890ff}.btn-confirm.info[data-v-3fa1521e]:hover{background:#096dd9}.btn-confirm.success[data-v-3fa1521e]{background:#52c41a}.btn-confirm.success[data-v-3fa1521e]:hover{background:#389e0d}.btn-confirm.warning[data-v-3fa1521e]{background:#faad14}.btn-confirm.warning[data-v-3fa1521e]:hover{background:#d48806}.btn-confirm.danger[data-v-3fa1521e]{background:#ff4d4f}.btn-confirm.danger[data-v-3fa1521e]:hover{background:#cf1322}.dialog-enter-active[data-v-3fa1521e],.dialog-leave-active[data-v-3fa1521e]{transition:all .25s ease}.dialog-enter-from[data-v-3fa1521e],.dialog-leave-to[data-v-3fa1521e]{opacity:0}.dialog-enter-from .dialog-box[data-v-3fa1521e],.dialog-leave-to .dialog-box[data-v-3fa1521e]{transform:scale(.9) translateY(-20px)}
