body{min-height:100%;font-family:"Helvetica Neue",Helvetica,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","微软雅黑",Arial,sans-serif;line-height:1.5;color:var(--color-text);-webkit-font-smoothing:antialiased}[data-theme=light] .ub-panel-frame.left-toggle:not(.left-hover) .left .menu>.menu-item:not(:has(.children))>.title{padding-left:0}@media (max-width:800px){[data-theme=light] .ub-panel-frame.left-toggle:not(.left-hover) .left .menu>.menu-item:not(:has(.children))>.title{padding-left:.9375rem}}[data-theme=light] .ub-panel-frame .left .menu .menu-item>.title{transition:color 0s}[data-theme=light] .ub-panel-frame .left .menu .menu-item:not(:has(.children)){background-color:var(--panel-menu-background);border-right:none}[data-theme=light] .ub-panel-frame .left .menu .menu-item:not(:has(.children))>.title:hover{color:var(--color-primary)}[data-theme=light] .ub-panel-frame .left .menu .menu-item:not(:has(.children)).active{background-color:transparent;border-right:none;box-shadow:none}[data-theme=light] .ub-panel-frame .left .menu .menu-item:not(:has(.children)).active>.title{background:0 0;color:var(--panel-menu-active-color);transition:none}[data-theme=light] .ub-panel-frame .left .menu .title:before{content:'';position:absolute;left:.625rem;right:.625rem;top:.1875rem;bottom:.1875rem;border-radius:var(--size-radius-sm);background:0 0;transition:none;pointer-events:none}[data-theme=light] .ub-panel-frame .left .menu .title>.icon,[data-theme=light] .ub-panel-frame .left .menu .title>.text{position:relative;z-index:1}[data-theme=light] .ub-panel-frame .left .menu .title>.arrow{z-index:1}[data-theme=light] .ub-panel-frame .left .menu .title:hover{background:0 0}[data-theme=light] .ub-panel-frame .left .menu .title:hover:before{background:var(--panel-menu-hover-background)}[data-theme=light] .ub-panel-frame .left .menu .menu-item.active:not(:has(.children))>.title:before{background:var(--panel-menu-active-background)}.ub-admin-login{width:100%;min-height:100vh;display:flex;justify-content:center;align-items:center;overflow:auto;flex-direction:column;background-color:var(--color-body-bg);background-image:radial-gradient(48rem 28rem at 50% -8rem,var(--color-primary-glow),transparent 70%),radial-gradient(36rem 24rem at 92% 108%,var(--color-primary-soft),transparent 72%);background-repeat:no-repeat}.ub-admin-login .login-box{display:flex;width:41.25rem;border:.0625rem solid var(--color-body-line);border-radius:var(--size-radius);box-shadow:var(--box-shadow-lg)}.ub-admin-login .login-box .info{flex:0 0 45%;--ub-admin-login-info-gradient:linear-gradient(160deg, var(--color-ink-bg) 0%, var(--color-primary-dark) 62%, var(--color-primary) 100%);background-color:var(--color-primary);border-radius:var(--size-radius) 0 0 var(--size-radius);display:flex;flex-direction:column;padding:2.5rem 1.5rem;color:var(--color-text-reverse);text-align:center;background-image:url(../../image/admin-login.svg),var(--ub-admin-login-info-gradient);background-position:center bottom,center;background-size:contain,cover;background-repeat:no-repeat,no-repeat;justify-content:start}.ub-admin-login .login-box .info .title{font-size:1.375rem;line-height:1.75rem;font-weight:600;letter-spacing:.01em;overflow-wrap:anywhere}.ub-admin-login .login-box .info .title .iconfont{font-size:1.25rem}.ub-admin-login .login-box .info .slogan{font-size:var(--font-size);margin-top:.5rem;letter-spacing:.02em;opacity:.78}.ub-admin-login .login-box .form{background:var(--color-content-bg);padding:1.5rem;width:55%;border-radius:0 var(--size-radius) var(--size-radius) 0;flex-shrink:0}.ub-admin-login .login-box .form .line{padding:.75rem .625rem;color:var(--color-tertiary);font-size:var(--font-size-small);font-weight:500}.ub-admin-login .login-box .form .line .iconfont{margin-right:.375rem;font-size:1rem;color:var(--color-muted);vertical-align:-.125rem}.ub-admin-login .login-box .form .line input{width:100%}.ub-admin-login .login-box .form .line input.form-lg{margin-top:.5rem}.ub-admin-login .login-box .form .line input:focus{border-color:var(--color-primary);box-shadow:0 0 0 .1875rem var(--color-focus-ring)}.ub-admin-login .login-box .form .line .captcha{display:block;width:auto;max-width:100%;margin-left:auto}.ub-admin-login .btn{background:var(--color-primary);border-color:var(--color-primary);border-radius:var(--size-radius-sm)}.ub-admin-login .btn.btn-lg{height:2.75rem;font-weight:600;letter-spacing:.02em;box-shadow:var(--box-shadow-xs)}.ub-admin-login .btn.btn-lg:hover:not(.disabled){box-shadow:var(--box-shadow)}.ub-admin-login .btn:active,.ub-admin-login .btn:focus,.ub-admin-login .btn:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}@media (max-width:800px){.ub-admin-login{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;min-height:100vh;background:var(--color-content-bg)}.ub-admin-login .login-box{display:block;flex:0 0 auto;border:0;border-radius:0;width:100%;box-shadow:none}.ub-admin-login .login-box .info{border-radius:0;text-align:left;background-image:radial-gradient(20rem 8rem at 100% 0,var(--color-primary-glow),rgba(255,255,255,0) 70%),var(--ub-admin-login-info-gradient);background-size:auto,cover;background-position:center,center;padding:1.875rem 1.5rem}.ub-admin-login .login-box .form{width:100%;border-radius:0}.ub-admin-login>.tw-text-center{margin-top:auto}.ub-admin-login .form .btn,.ub-admin-login .form .captcha,.ub-admin-login .form .line input.form-lg{min-height:2.75rem}}#adminMainPage{height:100%}#adminMainPage.hidden{display:none}#adminTabPage{position:absolute;left:0;top:0;right:0;bottom:0;background-color:var(--color-body-bg)}#adminTabPage.hidden{display:none}#adminTabPage .tab-page-loading{position:absolute;left:0;top:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.875rem;background:radial-gradient(circle at 50% 46%,var(--color-primary-soft),transparent 34%);pointer-events:none}#adminTabPage .tab-page-loading .spinner{width:2.25rem;height:2.25rem;border-radius:50%;border:.1875rem solid var(--color-tertiary-light);border-top-color:var(--color-primary);animation:adminTabLoadingSpin .9s linear infinite}#adminTabPage .tab-page-loading .text{color:var(--color-muted);font-size:var(--font-size);letter-spacing:.08em}#adminTabPage iframe{position:absolute;left:0;top:0;width:100%;height:100%}#adminTabPage iframe.hidden{left:-200%;top:-200%}@keyframes adminTabLoadingSpin{to{transform:rotate(360deg)}}