.app-dialog-mask[data-v-fb70c662]{z-index:2400;background:#1422346b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.app-dialog[data-v-fb70c662]{background:#fff;border-radius:10px;width:min(460px,100%);overflow:hidden;box-shadow:0 12px 36px #14223433}.app-dialog-header[data-v-fb70c662],.app-dialog-footer[data-v-fb70c662]{justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.app-dialog-header[data-v-fb70c662]{border-bottom:1px solid #edf1f5}.app-dialog-header h2[data-v-fb70c662]{color:#253347;margin:0;font-size:17px;font-weight:600}.app-dialog-close[data-v-fb70c662]{color:#7c8797;background:0 0;border:0;font-size:24px;line-height:1}.app-dialog-body[data-v-fb70c662]{padding:20px}.app-dialog-body>p[data-v-fb70c662]:first-child{color:#3c495c;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.7}.app-dialog-body textarea[data-v-fb70c662]{box-sizing:border-box;resize:vertical;color:#253347;border:1px solid #d9e1ea;border-radius:6px;outline:none;width:100%;min-height:96px;margin-top:12px;padding:10px 12px}.app-dialog-body textarea[data-v-fb70c662]:focus{border-color:#1677ff}.app-dialog-error[data-v-fb70c662]{color:#ef5360;margin:10px 0 0;font-size:13px}.app-dialog-footer[data-v-fb70c662]{border-top:1px solid #edf1f5;justify-content:flex-end;gap:12px}.app-dialog-footer button[data-v-fb70c662]{border-radius:5px;min-width:88px;height:36px}.app-dialog-cancel[data-v-fb70c662]{color:#4b5b70;background:#fff;border:1px solid #d9e1ea}.app-dialog-confirm[data-v-fb70c662]{color:#fff;background:#1677ff;border:0}.app-dialog-confirm.danger[data-v-fb70c662]{background:#ef5360}.app-dialog-progress[data-v-fb70c662]{margin-top:16px}.app-dialog-progress-track[data-v-fb70c662]{background:#e8eef6;border-radius:999px;height:10px;overflow:hidden}.app-dialog-progress-bar[data-v-fb70c662]{border-radius:inherit;background:#1677ff;height:100%;transition:width .2s}.app-dialog-progress-meta[data-v-fb70c662]{color:#66778b;word-break:break-all;margin:10px 0 0;font-size:13px;line-height:1.5}.login-page[data-v-68518ad5]{background:radial-gradient(circle at 18% 20%,#1c81ff2e,#0000 30%),linear-gradient(135deg,#032a56 0%,#063a74 46%,#eef6ff 46%,#f8fbff 100%);width:100%;height:100vh;min-height:720px;position:relative;overflow:hidden}.login-container[data-v-68518ad5]{z-index:2;width:100%;height:100%;display:flex;position:relative}.brand-section[data-v-68518ad5]{color:#fff;width:48%;padding:70px 7%;display:flex}.brand-content[data-v-68518ad5]{flex-direction:column;width:100%;display:flex}.logo-row[data-v-68518ad5]{align-items:center;gap:16px;display:flex}.logo[data-v-68518ad5]{width:58px;height:58px;position:relative}.logo-shape[data-v-68518ad5]{position:absolute}.logo-left[data-v-68518ad5]{clip-path:polygon(50% 0,100% 55%,54% 100%,0 55%);background:linear-gradient(160deg,#34c8ff,#0879ff);width:31px;height:53px;top:3px;left:1px}.logo-right[data-v-68518ad5]{clip-path:polygon(0 0,100% 100%,20% 100%);background:linear-gradient(135deg,#2f8fff,#0754d9);width:35px;height:39px;top:17px;right:1px}.brand-name[data-v-68518ad5]{letter-spacing:1px;font-size:27px;font-weight:700}.brand-subtitle[data-v-68518ad5]{color:#ffffffb8;margin-top:6px;font-size:15px}.welcome[data-v-68518ad5]{margin-top:150px}.welcome h1[data-v-68518ad5]{letter-spacing:3px;margin:0;font-size:52px;line-height:1.28}.welcome p[data-v-68518ad5]{color:#ffffffb3;max-width:500px;margin-top:28px;font-size:17px;line-height:2}.feature-list[data-v-68518ad5]{flex-direction:column;gap:20px;margin-top:44px;display:flex}.feature-item[data-v-68518ad5]{color:#ffffffd9;align-items:center;gap:13px;font-size:15px;display:flex}.feature-icon[data-v-68518ad5]{background:#41aaff33;border:1px solid #6ac0ff99;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.form-section[data-v-68518ad5]{flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.login-card[data-v-68518ad5]{background:#fffffff5;border:1px solid #dde6f1e6;border-radius:14px;width:470px;padding:46px 48px 42px;box-shadow:0 24px 70px #2a4d7524}.card-header h2[data-v-68518ad5]{color:#17243a;margin:0;font-size:28px}.card-header p[data-v-68518ad5]{color:#98a2b2;margin:12px 0 34px;font-size:14px}.form-item[data-v-68518ad5]{margin-bottom:22px}.form-item label[data-v-68518ad5]{color:#3d495a;margin-bottom:9px;font-size:14px;font-weight:600;display:block}.input-wrapper[data-v-68518ad5]{position:relative}.input-wrapper input[data-v-68518ad5]{color:#273448;background:#fff;border:1px solid #dce4ee;border-radius:6px;outline:none;width:100%;height:48px;padding:0 15px 0 47px;transition:all .2s}.input-wrapper input[data-v-68518ad5]:focus{border-color:#1677ff;box-shadow:0 0 0 3px #1677ff14}.input-wrapper input[data-v-68518ad5]::placeholder{color:#b5bdc9}.input-icon[data-v-68518ad5]{z-index:2;color:#9aa6b6;width:20px;height:20px;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.input-icon svg[data-v-68518ad5]{width:20px;height:20px}.form-options[data-v-68518ad5]{justify-content:space-between;align-items:center;margin-top:3px;display:flex}.remember[data-v-68518ad5]{color:#657184;align-items:center;gap:7px;font-size:13px;display:flex}.remember input[data-v-68518ad5]{width:15px;height:15px}.text-button[data-v-68518ad5]{color:#1677ff;background:0 0;border:none;padding:0;font-size:13px}.login-button[data-v-68518ad5]{color:#fff;background:linear-gradient(90deg,#0877ff,#1267ed);border:none;border-radius:6px;width:100%;height:50px;margin-top:26px;font-size:16px;font-weight:600;transition:all .2s;box-shadow:0 8px 18px #1677ff38}.login-button[data-v-68518ad5]:hover{transform:translateY(-1px);box-shadow:0 10px 22px #1677ff4d}.login-button[data-v-68518ad5]:active{transform:translateY(0)}.register-row[data-v-68518ad5]{color:#8a95a5;justify-content:center;gap:7px;margin-top:25px;font-size:13px;display:flex}.register-button[data-v-68518ad5]{color:#1677ff;background:0 0;border:none;padding:0}.copyright[data-v-68518ad5]{color:#a0a9b8;margin-top:30px;font-size:12px}.login-error[data-v-68518ad5]{color:#e5484d;text-align:center;margin:14px 0 0;font-size:13px}.background-decoration[data-v-68518ad5]{filter:blur(1px);border-radius:50%;position:absolute}.decoration-one[data-v-68518ad5]{border:1px solid #4fa0ff29;width:650px;height:650px;bottom:-280px;left:-200px}.decoration-two[data-v-68518ad5]{border:1px solid #4fa0ff1a;width:700px;height:700px;bottom:-360px;left:180px}.register-page[data-v-e615b043]{background:radial-gradient(circle at 12% 6%,#dceeff 0,#0000 30%),#f5f7fb;min-height:100vh;padding:48px 20px}.register-card[data-v-e615b043]{box-sizing:border-box;background:#fff;border:1px solid #e4eaf2;border-radius:18px;max-width:840px;margin:0 auto;padding:38px 44px;box-shadow:0 20px 50px #223e641f}.heading[data-v-e615b043]{margin-bottom:26px}.brand[data-v-e615b043]{color:#1677ff;letter-spacing:.04em;margin:0;font-size:13px;font-weight:700}.heading h1[data-v-e615b043]{color:#1f2d3d;margin:8px 0;font-size:28px}.heading p[data-v-e615b043]:last-child{color:#718096;margin:0;line-height:1.7}.mode-tabs[data-v-e615b043]{background:#f1f5f9;border-radius:10px;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:28px;padding:5px;display:grid}.mode-tabs button[data-v-e615b043]{color:#64748b;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:11px;font-weight:650}.mode-tabs button.active[data-v-e615b043]{color:#1677ff;background:#fff;box-shadow:0 2px 8px #1677ff21}h2[data-v-e615b043]{color:#25364a;border-top:1px solid #edf1f5;margin:28px 0 16px;padding-top:24px;font-size:18px}.form-grid[data-v-e615b043]{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}label[data-v-e615b043]{color:#344154;font-size:14px;font-weight:650;display:block}em[data-v-e615b043]{color:#ef4444;font-style:normal}input[data-v-e615b043],select[data-v-e615b043],textarea[data-v-e615b043]{box-sizing:border-box;color:#243447;width:100%;font:inherit;border:1px solid #d7e0eb;border-radius:7px;outline:none;margin-top:7px;padding:10px 11px;font-weight:400}input[data-v-e615b043]:focus,select[data-v-e615b043]:focus,textarea[data-v-e615b043]:focus{border-color:#1677ff;box-shadow:0 0 0 3px #1677ff1a}textarea[data-v-e615b043]{resize:vertical}.full-width[data-v-e615b043]{margin-top:18px}.message[data-v-e615b043]{border-radius:7px;margin:18px 0 0;padding:11px 13px;font-size:14px}.error[data-v-e615b043]{color:#c53030;background:#fff1f1}.success[data-v-e615b043]{color:#177245;background:#edf9f0}.actions[data-v-e615b043]{justify-content:flex-end;gap:12px;margin-top:30px;display:flex}button[data-v-e615b043]{font:inherit;cursor:pointer;border:0;border-radius:7px;padding:10px 19px;font-weight:650}.primary[data-v-e615b043]{color:#fff;background:#1677ff}.primary[data-v-e615b043]:disabled{cursor:not-allowed;opacity:.65}.secondary[data-v-e615b043]{color:#475569;background:#edf2f7}@media (width<=640px){.register-card[data-v-e615b043]{padding:28px 22px}.form-grid[data-v-e615b043]{grid-template-columns:1fr}.register-page[data-v-e615b043]{padding:22px 12px}}.sidebar[data-v-27930ee1]{z-index:100;color:#fff;background:linear-gradient(#062f60 0%,#052550 100%);flex-direction:column;width:244px;padding:20px 10px 18px;transition:width .25s;display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:2px 0 8px #00143214}.sidebar.collapsed[data-v-27930ee1]{width:78px}.brand[data-v-27930ee1]{align-items:center;height:72px;padding:0 11px 15px;display:flex}.brand-logo[data-v-27930ee1]{flex-shrink:0;width:48px;height:48px;margin-right:12px;position:relative}.logo-piece[data-v-27930ee1]{position:absolute}.logo-piece-left[data-v-27930ee1]{clip-path:polygon(50% 0,100% 58%,55% 100%,0 58%);background:linear-gradient(155deg,#32c3ff,#0872f9);width:28px;height:46px;top:1px;left:2px}.logo-piece-right[data-v-27930ee1]{clip-path:polygon(0 0,100% 100%,19% 100%);background:linear-gradient(140deg,#2c88ff,#0754d7);width:31px;height:33px;bottom:2px;right:0}.brand-text[data-v-27930ee1]{white-space:nowrap}.brand-title[data-v-27930ee1]{font-size:20px;font-weight:700}.brand-subtitle[data-v-27930ee1]{margin-top:4px;font-size:15px}.menu[data-v-27930ee1]{flex:1;margin-top:8px}.menu-item[data-v-27930ee1]{color:#e8f1fb;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;width:100%;height:52px;margin:6px 0;padding:0 16px;font-size:16px;transition:background .2s,transform .2s;display:flex}.menu-item[data-v-27930ee1]:hover{background:#ffffff14}.menu-item.active[data-v-27930ee1]{background:linear-gradient(#1a7fff,#0d6cea);box-shadow:0 6px 16px #006bff42}.menu-icon[data-v-27930ee1]{flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.menu-icon-img[data-v-27930ee1]{object-fit:contain;width:22px;height:22px;display:block}.menu-text[data-v-27930ee1]{white-space:nowrap;margin-left:14px}.menu-badge[data-v-27930ee1]{color:#fff;background:#ff4d5e;border:2px solid #ffffffe6;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.sidebar.collapsed .menu-item[data-v-27930ee1]{justify-content:center;padding:0}.collapse-button[data-v-27930ee1]{color:#d8e6f5;background:0 0;border:0;border-top:1px solid #ffffff2e;align-items:center;height:58px;padding:18px 10px 0;font-size:15px;display:flex}.sidebar.collapsed .collapse-button[data-v-27930ee1]{justify-content:center}.collapse-icon[data-v-27930ee1]{margin-right:13px;font-size:22px}.sidebar.collapsed .collapse-icon[data-v-27930ee1]{margin-right:0}.admin-header[data-v-381405fc]{z-index:50;background:#fff;border-bottom:1px solid #edf1f6;justify-content:space-between;align-items:center;height:74px;padding:0 34px;display:flex;position:sticky;top:0}.header-left[data-v-381405fc]{align-items:center;display:flex}.hamburger-button[data-v-381405fc]{background:0 0;border:0;flex-direction:column;justify-content:space-between;width:25px;height:21px;margin-right:28px;padding:1px 0;display:flex}.hamburger-button span[data-v-381405fc]{background:#26384e;border-radius:2px;width:21px;height:2px;display:block}.breadcrumb[data-v-381405fc]{align-items:center;gap:15px;font-size:17px;display:flex}.breadcrumb-main[data-v-381405fc]{color:#1f2938;font-weight:700}.separator[data-v-381405fc]{color:#bdc5d0}.breadcrumb-sub[data-v-381405fc]{color:#98a3b3}.header-right[data-v-381405fc]{align-items:center;display:flex}.notification-button[data-v-381405fc]{color:#27394e;background:0 0;border:0;width:36px;height:36px;padding:6px;position:relative}.notification-button svg[data-v-381405fc]{stroke-width:1.8px;width:24px;height:24px}.notification-count[data-v-381405fc]{color:#fff;background:#ff3f4b;border:2px solid #fff;border-radius:12px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-4px;right:-3px}.vertical-line[data-v-381405fc]{background:#e6ebf1;width:1px;height:28px;margin:0 19px}.user-area[data-v-381405fc]{position:relative}.user-button[data-v-381405fc]{background:0 0;border:0;align-items:center;display:flex}.avatar[data-v-381405fc]{background:linear-gradient(#cbeeff,#79bddf);border:2px solid #ddecf8;border-radius:50%;width:38px;height:38px;position:relative;overflow:hidden}.avatar-head[data-v-381405fc]{background:#33485a;border-radius:50%;width:11px;height:12px;position:absolute;top:6px;left:12px}.avatar-body[data-v-381405fc]{background:#26394b;border-radius:12px 12px 4px 4px;width:19px;height:17px;position:absolute;bottom:2px;left:8px}.username[data-v-381405fc]{color:#273345;margin-left:12px;font-size:15px;font-weight:600}.arrow[data-v-381405fc]{border-bottom:1.5px solid #6f7a89;border-right:1.5px solid #6f7a89;width:7px;height:7px;margin-top:-4px;margin-left:10px;transition:transform .2s;transform:rotate(45deg)}.arrow.open[data-v-381405fc]{margin-top:4px;transform:rotate(225deg)}.user-dropdown[data-v-381405fc]{background:#fff;border:1px solid #e5eaf1;border-radius:7px;width:140px;padding:7px;position:absolute;top:50px;right:0;box-shadow:0 10px 30px #2b3f561f}.user-dropdown button[data-v-381405fc]{color:#4a5667;text-align:left;background:0 0;border:0;border-radius:5px;width:100%;height:38px;padding:0 12px}.user-dropdown button[data-v-381405fc]:hover{background:#f4f7fb}.dropdown-line[data-v-381405fc]{background:#edf0f4;height:1px;margin:5px 0}.user-dropdown .logout-button[data-v-381405fc]{color:#f0525d}.account-mask[data-v-381405fc]{z-index:80;background:#12203059;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.account-modal[data-v-381405fc]{background:#fff;border-radius:12px;width:460px;max-width:calc(100vw - 40px);box-shadow:0 18px 50px #1e30462e}.account-modal header[data-v-381405fc]{justify-content:space-between;align-items:center;padding:18px 22px 0;display:flex}.account-modal h2[data-v-381405fc]{color:#1f2938;margin:0;font-size:18px}.account-close[data-v-381405fc]{color:#8a95a5;cursor:pointer;background:0 0;border:0;font-size:22px}.account-form[data-v-381405fc]{gap:12px;padding:18px 22px;display:grid}.account-form label[data-v-381405fc]{color:#536073;flex-direction:column;gap:6px;font-size:13px;display:flex}.account-form input[data-v-381405fc]{color:#273345;border:1px solid #e5eaf1;border-radius:6px;height:38px;padding:0 12px}.account-form input[data-v-381405fc]:disabled{color:#8a95a5;background:#f5f7fa}.account-hint[data-v-381405fc],.account-error[data-v-381405fc]{margin:12px 22px 0;font-size:13px}.account-error[data-v-381405fc]{color:#ef4f5d}.account-modal footer[data-v-381405fc]{justify-content:flex-end;gap:10px;padding:0 22px 18px;display:flex}.ghost-btn[data-v-381405fc],.primary-btn[data-v-381405fc]{color:#4a5667;background:#fff;border:1px solid #dbe3ee;border-radius:6px;height:36px;padding:0 16px}.primary-btn[data-v-381405fc]{color:#fff;background:#1a7fff;border:0}.primary-btn[data-v-381405fc]:disabled{opacity:.6}.admin-layout[data-v-d17ecee5]{background:#f5f7fb;width:100%;min-height:100vh}.admin-main[data-v-d17ecee5]{min-height:100vh;margin-left:244px;transition:margin-left .25s}.admin-main.collapsed[data-v-d17ecee5]{margin-left:78px}.admin-content[data-v-d17ecee5]{min-height:calc(100vh - 74px);padding:20px 22px 28px}*{box-sizing:border-box}html,body,#app{width:100%;min-width:1024px;min-height:100%;margin:0}html,body{min-height:100vh}body{color:#1f2937;background:#f5f7fa;font-family:Microsoft YaHei,PingFang SC,Helvetica Neue,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
