.login-overlay[data-v-34b72ba7]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:grid;place-items:center;background:#00000059;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.login-dialog[data-v-34b72ba7]{position:relative;width:min(420px,92vw);background:#fff;border:1px solid #e8ecf1;border-radius:16px;padding:36px 28px 28px;box-shadow:0 8px 32px #0000001a;text-align:center}.login-dialog__close[data-v-34b72ba7]{position:absolute;top:14px;right:16px;width:32px;height:32px;border:none;background:#f0f2f5;color:#7f8c8d;border-radius:50%;font-size:16px;cursor:pointer;display:grid;place-items:center;transition:all .15s}.login-dialog__close[data-v-34b72ba7]:hover{background:#e74c3c;color:#fff}.login-dialog__header h2[data-v-34b72ba7]{margin:0;font-size:22px;font-weight:700;color:#2c3e50}.login-dialog__header p[data-v-34b72ba7]{margin:8px 0 0;color:#95a5a6;font-size:14px}.login-dialog__qrcode-wrap[data-v-34b72ba7]{margin:24px auto 16px;min-height:260px;display:flex;align-items:center;justify-content:center}.qrcode-container[data-v-34b72ba7]{display:flex;justify-content:center}.login-dialog__error[data-v-34b72ba7]{color:#e74c3c;font-size:14px;padding:12px;background:#fdedec;border:1px solid #f5b7b1;border-radius:8px}.login-dialog__login-error[data-v-34b72ba7]{color:#e74c3c;font-size:13px;margin:0 0 8px}.login-dialog__logging[data-v-34b72ba7]{color:#3498db;font-size:13px;margin:0 0 8px}.login-dialog__tips[data-v-34b72ba7]{display:flex;justify-content:center;gap:20px;margin-top:16px;padding-top:16px;border-top:1px solid #e8ecf1;font-size:12px;color:#95a5a6}.login-dialog__success[data-v-34b72ba7]{padding:20px 0}.login-dialog__success-icon[data-v-34b72ba7]{font-size:48px;display:block;margin-bottom:12px}.login-dialog__success h2[data-v-34b72ba7]{margin:0;font-size:20px;color:#2c3e50}.login-dialog__success p[data-v-34b72ba7]{margin:8px 0 0;color:#7f8c8d;font-size:14px}.dialog-enter-active[data-v-34b72ba7],.dialog-leave-active[data-v-34b72ba7]{transition:opacity .25s ease}.dialog-enter-active .login-dialog[data-v-34b72ba7],.dialog-leave-active .login-dialog[data-v-34b72ba7]{transition:transform .25s ease,opacity .25s ease}.dialog-enter-from[data-v-34b72ba7],.dialog-leave-to[data-v-34b72ba7]{opacity:0}.dialog-enter-from .login-dialog[data-v-34b72ba7]{transform:scale(.9) translateY(20px);opacity:0}.dialog-leave-to .login-dialog[data-v-34b72ba7]{transform:scale(.95);opacity:0}*{margin:0;padding:0;box-sizing:border-box}html,body,#app{height:100%}body{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;background:#f0f2f5;color:#2c3e50;overflow-x:hidden}.desktop{display:flex;flex-direction:column;min-height:100vh;height:100vh}.taskbar{display:flex;align-items:center;justify-content:space-between;height:48px;padding:0 16px;background:#fff;border-bottom:1px solid #e8ecf1;box-shadow:0 1px 4px #0000000a;z-index:100;flex-shrink:0;-webkit-user-select:none;user-select:none}.taskbar__left{display:flex;align-items:center;gap:20px}.taskbar__logo{display:flex;align-items:center;gap:8px;font-weight:700;font-size:18px;color:#2c3e50}.taskbar__logo-icon{color:#3498db;font-size:20px}.taskbar__logo-text{letter-spacing:-.5px}.taskbar__apps{flex:1;display:flex;align-items:center;gap:4px;padding:0 20px;overflow-x:auto;justify-content:center}.taskbar__app-btn{display:flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:6px;border:none;background:transparent;color:#7f8c8d;font-size:12px;cursor:pointer;transition:all .15s;white-space:nowrap;position:relative}.taskbar__app-btn:hover{background:#e9ecef;color:#2c3e50}.taskbar__app-btn--active{background:#eaf2fd;color:#3498db;font-weight:600}.taskbar__app-btn--active:after{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:16px;height:3px;border-radius:2px;background:#3498db}.taskbar__app-icon{font-size:16px;line-height:1}.taskbar__app-label{max-width:100px;overflow:hidden;text-overflow:ellipsis}.taskbar__app-dot{color:#3498db;font-size:18px;margin-left:-2px}.taskbar__right{display:flex;align-items:center}.taskbar__login-btn{padding:4px 16px;border-radius:6px;border:1px solid #3498db;background:transparent;color:#3498db;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.taskbar__login-btn:hover{background:#3498db;color:#fff}.taskbar__user{display:flex;align-items:center;gap:8px;padding:3px 10px 3px 3px;border-radius:8px;cursor:pointer;transition:background .2s}.taskbar__user:hover{background:#f0f2f5}.taskbar__avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}.taskbar__avatar--ph{display:grid;place-items:center;background:#3498db;color:#fff;font-size:12px;font-weight:700}.taskbar__nickname{font-size:13px;color:#2c3e50;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.taskbar__version{font-size:10px;color:#95a5a6;font-family:monospace;margin-right:12px;white-space:nowrap}.version-badge{position:fixed;right:8px;bottom:8px;font-size:10px;color:#00000040;font-family:monospace;pointer-events:none;z-index:9999}.desktop-area{flex:1;overflow-y:auto;padding:24px;background:#f0f2f5}.embedded-app{height:100vh;overflow:hidden;font-size:13px}.mobile-layout{position:relative;height:100vh;height:100dvh}.taskbar--mobile{position:absolute;left:0;right:0;bottom:0;border-bottom:none;border-top:1px solid #e8ecf1;height:56px;padding:0 12px;z-index:100}.mobile-content{position:absolute;left:0;right:0;top:0;width:auto!important;height:calc(100vh - 56px);height:calc(100dvh - 56px);display:flex;flex-direction:column;overflow:hidden}@media(max-width:1024px){.taskbar__nav,.taskbar__center{display:none}.desktop-area{padding:16px}}@media(max-width:640px){.desktop{flex-direction:column}.taskbar{order:2;height:56px;padding:0 12px;border-bottom:none;border-top:1px solid #e8ecf1}.taskbar__left{gap:10px}.taskbar__logo-text{display:none}.taskbar__logo-icon{font-size:22px}.taskbar__nav,.taskbar__center{display:none}.desktop-area{order:1;padding:12px}}
