.el-message{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-border-color-lighter);--el-message-padding:11px 15px;--el-message-close-size:16px;--el-message-close-icon-color:var(--el-text-color-placeholder);--el-message-close-hover-color:var(--el-text-color-secondary);box-sizing:border-box;border-radius:var(--el-border-radius-base);border-width:var(--el-border-width);border-style:var(--el-border-style);border-color:var(--el-message-border-color);background-color:var(--el-message-bg-color);width:max-content;max-width:calc(100% - 32px);transition:opacity var(--el-transition-duration),transform .4s,top .4s,bottom .4s;padding:var(--el-message-padding);align-items:center;gap:8px;display:flex;position:fixed}.el-message.is-left{left:16px}.el-message.is-right{right:16px}.el-message.is-center{left:50%;transform:translate(-50%)}.el-message.is-plain{background-color:var(--el-bg-color-overlay);border-color:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-message p{margin:0}.el-message--primary{--el-message-bg-color:var(--el-color-primary-light-9);--el-message-border-color:var(--el-color-primary-light-8);--el-message-text-color:var(--el-color-primary)}.el-message--primary .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--primary{color:var(--el-message-text-color)}.el-message--success{--el-message-bg-color:var(--el-color-success-light-9);--el-message-border-color:var(--el-color-success-light-8);--el-message-text-color:var(--el-color-success)}.el-message--success .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--success{color:var(--el-message-text-color)}.el-message--info{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-color-info-light-8);--el-message-text-color:var(--el-color-info)}.el-message--info .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--info{color:var(--el-message-text-color)}.el-message--warning{--el-message-bg-color:var(--el-color-warning-light-9);--el-message-border-color:var(--el-color-warning-light-8);--el-message-text-color:var(--el-color-warning)}.el-message--warning .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--warning{color:var(--el-message-text-color)}.el-message--error{--el-message-bg-color:var(--el-color-error-light-9);--el-message-border-color:var(--el-color-error-light-8);--el-message-text-color:var(--el-color-error)}.el-message--error .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--error{color:var(--el-message-text-color)}.el-message .el-message__badge{position:absolute;top:-8px;right:-8px}.el-message__content{padding:0;font-size:14px;line-height:1}.el-message__content:focus{outline-width:0}.el-message .el-message__closeBtn{cursor:pointer;color:var(--el-message-close-icon-color);font-size:var(--el-message-close-size)}.el-message .el-message__closeBtn:focus{outline-width:0}.el-message .el-message__closeBtn:hover{color:var(--el-message-close-hover-color)}.el-message-fade-enter-from,.el-message-fade-leave-to{opacity:0}.el-message-fade-enter-from.is-left,.el-message-fade-enter-from.is-right,.el-message-fade-leave-to.is-left,.el-message-fade-leave-to.is-right{transform:translateY(-100%)}.el-message-fade-enter-from.is-left.is-bottom,.el-message-fade-enter-from.is-right.is-bottom,.el-message-fade-leave-to.is-left.is-bottom,.el-message-fade-leave-to.is-right.is-bottom{transform:translateY(100%)}.el-message-fade-enter-from.is-center,.el-message-fade-leave-to.is-center{transform:translate(-50%,-100%)}.el-message-fade-enter-from.is-center.is-bottom,.el-message-fade-leave-to.is-center.is-bottom{transform:translate(-50%,100%)}:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{width:100%;height:100%;opacity:var(--el-popup-modal-opacity);background:var(--el-popup-modal-bg-color);position:fixed;top:0;left:0}.el-popup-parent--hidden{overflow:hidden}.el-message-box{--el-messagebox-title-color:var(--el-text-color-primary);--el-messagebox-width:420px;--el-messagebox-border-radius:4px;--el-messagebox-box-shadow:var(--el-box-shadow);--el-messagebox-font-size:var(--el-font-size-large);--el-messagebox-content-font-size:var(--el-font-size-base);--el-messagebox-content-color:var(--el-text-color-regular);--el-messagebox-error-font-size:12px;--el-messagebox-padding-primary:12px;--el-messagebox-font-line-height:var(--el-font-line-height-primary);max-width:var(--el-messagebox-width);width:100%;padding:var(--el-messagebox-padding-primary);vertical-align:middle;background-color:var(--el-bg-color);border-radius:var(--el-messagebox-border-radius);font-size:var(--el-messagebox-font-size);box-shadow:var(--el-messagebox-box-shadow);text-align:left;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;overflow-wrap:break-word;display:inline-block;position:relative;overflow:hidden}.el-message-box:focus{outline:none!important}.is-message-box .el-overlay-message-box{text-align:center;padding:16px;position:fixed;inset:0;overflow:auto}.is-message-box .el-overlay-message-box:after{content:"";vertical-align:middle;width:0;height:100%;display:inline-block}.el-message-box.is-draggable .el-message-box__header{cursor:move;-webkit-user-select:none;user-select:none}.el-message-box__header{padding-bottom:var(--el-messagebox-padding-primary)}.el-message-box__header.show-close{padding-right:calc(var(--el-messagebox-padding-primary) + var(--el-message-close-size,16px))}.el-message-box__title{font-size:var(--el-messagebox-font-size);line-height:var(--el-messagebox-font-line-height);color:var(--el-messagebox-title-color)}.el-message-box__headerbtn{width:40px;height:40px;font-size:var(--el-message-close-size,16px);cursor:pointer;background:0 0;border:none;outline:none;padding:0;position:absolute;top:0;right:0}.el-message-box__headerbtn .el-message-box__close{color:var(--el-color-info);font-size:inherit}.el-message-box__headerbtn:focus .el-message-box__close,.el-message-box__headerbtn:hover .el-message-box__close{color:var(--el-color-primary)}.el-message-box__content{color:var(--el-messagebox-content-color);font-size:var(--el-messagebox-content-font-size)}.el-message-box__container{align-items:center;gap:12px;display:flex}.el-message-box__input{padding-top:12px}.el-message-box__input div.invalid>input,.el-message-box__input div.invalid>input:focus{border-color:var(--el-color-error)}.el-message-box__status{font-size:24px}.el-message-box__status.el-message-box-icon--primary{--el-messagebox-color:var(--el-color-primary);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--success{--el-messagebox-color:var(--el-color-success);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--info{--el-messagebox-color:var(--el-color-info);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--warning{--el-messagebox-color:var(--el-color-warning);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--error{--el-messagebox-color:var(--el-color-error);color:var(--el-messagebox-color)}.el-message-box__message{min-width:0;margin:0}.el-message-box__message p{line-height:var(--el-messagebox-font-line-height);margin:0}.el-message-box__errormsg{color:var(--el-color-error);font-size:var(--el-messagebox-error-font-size);line-height:var(--el-messagebox-font-line-height)}.el-message-box__btns{padding-top:var(--el-messagebox-padding-primary);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.el-message-box--center .el-message-box__title{justify-content:center;align-items:center;gap:6px;display:flex}.el-message-box--center .el-message-box__status{font-size:inherit}.el-message-box--center .el-message-box__btns,.el-message-box--center .el-message-box__container{justify-content:center}.el-message-box-parent--hidden{overflow:hidden}.fade-in-linear-enter-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration)}.fade-in-linear-leave-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration) reverse}@keyframes msgbox-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0)}}html.dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--el-color-primary:#409eff;--el-color-primary-light-3:#3375b9;--el-color-primary-light-5:#2a598a;--el-color-primary-light-7:#213d5b;--el-color-primary-light-8:#1d3043;--el-color-primary-light-9:#18222b;--el-color-primary-dark-2:#66b1ff;--el-color-success:#67c23a;--el-color-success-light-3:#4e8e2f;--el-color-success-light-5:#3e6b27;--el-color-success-light-7:#2d481f;--el-color-success-light-8:#25371c;--el-color-success-light-9:#1c2518;--el-color-success-dark-2:#85ce61;--el-color-warning:#e6a23c;--el-color-warning-light-3:#a77730;--el-color-warning-light-5:#7d5b28;--el-color-warning-light-7:#533f20;--el-color-warning-light-8:#3e301c;--el-color-warning-light-9:#292218;--el-color-warning-dark-2:#ebb563;--el-color-danger:#f56c6c;--el-color-danger-light-3:#b25252;--el-color-danger-light-5:#854040;--el-color-danger-light-7:#582e2e;--el-color-danger-light-8:#412626;--el-color-danger-light-9:#2a1d1d;--el-color-danger-dark-2:#f78989;--el-color-error:#f56c6c;--el-color-error-light-3:#b25252;--el-color-error-light-5:#854040;--el-color-error-light-7:#582e2e;--el-color-error-light-8:#412626;--el-color-error-light-9:#2a1d1d;--el-color-error-dark-2:#f78989;--el-color-info:#909399;--el-color-info-light-3:#6b6d71;--el-color-info-light-5:#525457;--el-color-info-light-7:#393a3c;--el-color-info-light-8:#2d2d2f;--el-color-info-light-9:#202121;--el-color-info-dark-2:#a6a9ad;--el-box-shadow:0px 12px 32px 4px #0000005c, 0px 8px 20px #000000b8;--el-box-shadow-light:0px 0px 12px #000000b8;--el-box-shadow-lighter:0px 0px 6px #000000b8;--el-box-shadow-dark:0px 16px 48px 16px #000000b8, 0px 12px 32px #000, 0px 8px 16px -8px #000;--el-bg-color-page:#0a0a0a;--el-bg-color:#141414;--el-bg-color-overlay:#1d1e1f;--el-text-color-primary:#e5eaf3;--el-text-color-regular:#cfd3dc;--el-text-color-secondary:#a3a6ad;--el-text-color-placeholder:#8d9095;--el-text-color-disabled:#6c6e72;--el-border-color-darker:#636466;--el-border-color-dark:#58585b;--el-border-color:#4c4d4f;--el-border-color-light:#414243;--el-border-color-lighter:#363637;--el-border-color-extra-light:#2b2b2c;--el-fill-color-darker:#424243;--el-fill-color-dark:#39393a;--el-fill-color:#303030;--el-fill-color-light:#262727;--el-fill-color-lighter:#1d1d1d;--el-fill-color-extra-light:#191919;--el-fill-color-blank:#141414;--el-mask-color:#000c;--el-mask-color-extra-light:#0000004d}html.dark .el-button{--el-button-disabled-text-color:#ffffff80}html.dark .el-card{--el-card-bg-color:var(--el-bg-color-overlay);--el-fill-color-blank:var(--el-card-bg-color)}html.dark .el-empty{--el-empty-fill-color-0:var(--el-color-black);--el-empty-fill-color-1:#4b4b52;--el-empty-fill-color-2:#36383d;--el-empty-fill-color-3:#1e1e20;--el-empty-fill-color-4:#262629;--el-empty-fill-color-5:#202124;--el-empty-fill-color-6:#212224;--el-empty-fill-color-7:#1b1c1f;--el-empty-fill-color-8:#1c1d1f;--el-empty-fill-color-9:#18181a}:root{--brand-50: #eef4ff;--brand-100: #dbe7ff;--brand-200: #b9ceff;--brand-300: #8dadff;--brand-400: #5c88ff;--brand-500: #2b6bff;--brand-600: #1a52e0;--brand-700: #143fb0;--brand-800: #122f80;--brand-900: #0f2359;--color-success: #17a673;--color-warning: #e0a112;--color-danger: #e0483b;--color-info: #6b7a90;--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--font-sans: "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-2xl: 26px;--font-size-3xl: 34px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-bold: 600;--layout-sidebar-width: 208px;--layout-sidebar-width-collapsed: 64px;--layout-header-height: 56px;--layout-panel-width: 340px;--layout-max-width: 1680px;--transition-fast: .15s ease;--transition-base: .24s cubic-bezier(.4, 0, .2, 1);--z-header: 100;--z-sidebar: 90;--z-overlay: 1000}:root,:root[data-theme=light]{color-scheme:light;--color-canvas: #f4f6fa;--color-surface: #ffffff;--color-surface-raised: #ffffff;--color-surface-sunken: #eef1f6;--color-surface-hover: #f2f5fb;--color-sidebar-bg: #ffffff;--color-header-bg: rgba(255, 255, 255, .86);--color-border: #e2e7ef;--color-border-strong: #ccd4e0;--color-divider: #edf0f5;--color-text-primary: #14181f;--color-text-regular: #3d4757;--color-text-secondary: #5b6879;--color-text-placeholder: #7a8797;--color-text-inverse: #ffffff;--color-primary: var(--brand-500);--color-primary-hover: var(--brand-400);--color-primary-active: var(--brand-600);--color-primary-soft: var(--brand-50);--color-primary-text: var(--brand-600);--shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--shadow-sm: 0 2px 8px rgba(16, 24, 40, .06);--shadow-md: 0 6px 20px rgba(16, 24, 40, .08);--shadow-lg: 0 16px 40px rgba(16, 24, 40, .12);--color-media-bg: #e9edf4;--color-media-border: rgba(16, 24, 40, .06);--color-media-overlay: linear-gradient( 180deg, rgba(10, 16, 28, 0) 40%, rgba(10, 16, 28, .72) 100% );--gradient-hero: linear-gradient(120deg, #1a52e0 0%, #2b6bff 42%, #58c1e8 100%);--gradient-brand: linear-gradient(135deg, var(--brand-500), var(--brand-400))}:root[data-theme=dark]{color-scheme:dark;--color-canvas: #0d1117;--color-surface: #161b24;--color-surface-raised: #1c222d;--color-surface-sunken: #11161e;--color-surface-hover: #212836;--color-sidebar-bg: #11161e;--color-header-bg: rgba(17, 22, 30, .88);--color-border: #262d3a;--color-border-strong: #37404f;--color-divider: #1f2632;--color-text-primary: #f2f5fa;--color-text-regular: #c3ccd9;--color-text-secondary: #9aa6b6;--color-text-placeholder: #78849a;--color-text-inverse: #0b0f16;--color-primary: #6d9bff;--color-primary-hover: #8fb2ff;--color-primary-active: #4d81f0;--color-primary-soft: rgba(109, 155, 255, .14);--color-primary-text: #8fb2ff;--color-success: #35c48d;--color-warning: #f0b93c;--color-danger: #f2695c;--color-info: #96a3b5;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .45);--shadow-md: 0 8px 24px rgba(0, 0, 0, .5);--shadow-lg: 0 20px 48px rgba(0, 0, 0, .6);--color-media-bg: #0a0e14;--color-media-border: rgba(255, 255, 255, .08);--color-media-overlay: linear-gradient(180deg, rgba(0, 0, 0, 0) 40%, rgba(0, 0, 0, .8) 100%);--gradient-hero: linear-gradient(120deg, #0f2359 0%, #1a52e0 45%, #2d8fbd 100%);--gradient-brand: linear-gradient(135deg, #4d81f0, #6d9bff)}:root,html.dark{--el-font-family: var(--font-sans);--el-border-radius-base: var(--radius-sm);--el-border-radius-small: var(--radius-xs);--el-transition-duration: .24s;--el-color-primary: var(--color-primary);--el-color-primary-light-3: var(--color-primary-hover);--el-color-primary-light-5: var(--color-primary-hover);--el-color-primary-light-7: var(--color-primary-soft);--el-color-primary-light-8: var(--color-primary-soft);--el-color-primary-light-9: var(--color-primary-soft);--el-color-primary-dark-2: var(--color-primary-active);--el-color-success: var(--color-success);--el-color-warning: var(--color-warning);--el-color-danger: var(--color-danger);--el-color-error: var(--color-danger);--el-color-info: var(--color-info);--el-bg-color: var(--color-surface);--el-bg-color-page: var(--color-canvas);--el-bg-color-overlay: var(--color-surface-raised);--el-text-color-primary: var(--color-text-primary);--el-text-color-regular: var(--color-text-regular);--el-text-color-secondary: var(--color-text-secondary);--el-text-color-placeholder: var(--color-text-placeholder);--el-text-color-disabled: var(--color-text-placeholder);--el-border-color: var(--color-border);--el-border-color-light: var(--color-border);--el-border-color-lighter: var(--color-divider);--el-border-color-extra-light: var(--color-divider);--el-border-color-dark: var(--color-border-strong);--el-border-color-darker: var(--color-border-strong);--el-fill-color: var(--color-surface-hover);--el-fill-color-light: var(--color-surface-hover);--el-fill-color-lighter: var(--color-surface-sunken);--el-fill-color-blank: var(--color-surface);--el-box-shadow: var(--shadow-md);--el-box-shadow-light: var(--shadow-sm);--el-box-shadow-lighter: var(--shadow-xs);--el-box-shadow-dark: var(--shadow-lg);--el-mask-color: rgba(10, 14, 20, .5)}html.dark{--el-mask-color: rgba(0, 0, 0, .65)}html.dark .el-button--primary{--el-button-text-color: var(--color-text-inverse);--el-button-hover-text-color: var(--color-text-inverse)}*,*:before,*:after{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--font-size-md);line-height:1.6;color:var(--color-text-regular);background-color:var(--color-canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-base),color var(--transition-base)}h1,h2,h3,h4,h5,h6,p,figure,ul,ol,dl,dd{margin:0}ul,ol{padding:0;list-style:none}a{color:var(--color-primary-text);text-decoration:none}a:hover{color:var(--color-primary-hover)}img,video,canvas{display:block;max-width:100%}button{font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-placeholder)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.app-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs)}.media-frame{position:relative;overflow:hidden;background:var(--color-media-bg);border:1px solid var(--color-media-border);border-radius:var(--radius-md)}.media-frame>img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base)}.media-frame:hover>img{transform:scale(1.04)}.media-frame__overlay{position:absolute;inset:0;background:var(--color-media-overlay);display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-3);color:#fff}.section-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.section-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.media-skeleton{width:100%;height:100%;background:linear-gradient(135deg,var(--color-media-bg) 0%,var(--color-surface-hover) 50%,var(--color-media-bg) 100%);display:flex;align-items:center;justify-content:center;color:var(--color-text-placeholder);font-size:var(--font-size-xs);letter-spacing:.08em}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-fast)}.fade-enter-from,.fade-leave-to{opacity:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.auth-form__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.auth-form__subtitle{font-size:var(--font-size-md);color:var(--color-text-secondary);margin-bottom:var(--space-6)}.auth-form__tip{margin-bottom:var(--space-5)}.auth-form__row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5);font-size:var(--font-size-sm)}.auth-form__submit{width:100%}.auth-form__footer{margin-top:var(--space-6);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.auth-form__back{display:inline-flex;align-items:center;gap:4px;margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.auth-form__code{display:flex;gap:var(--space-2);width:100%}.auth-form__code .el-input{flex:1}.auth-form .el-form-item{margin-bottom:var(--space-5)}
