.app-shell{min-height:var(--app-viewport-height)}.app-shell-main{min-width:0}.app-sider{height:var(--app-viewport-height);position:sticky;top:0;overflow:auto}.app-sider .ant-layout-sider-children{flex-direction:column;min-height:100%;display:flex}.app-brand{height:var(--app-header-height);align-items:center;gap:var(--space-md);padding-inline:var(--space-lg);color:var(--color-bg-container);font-size:16px;font-weight:var(--font-subtitle-weight);letter-spacing:1px;flex-shrink:0;display:flex}.app-brand:hover{color:var(--color-bg-container)}.app-brand--compact{justify-content:center;padding-inline:0}.app-brand__mark{border-radius:var(--radius-control);background:var(--color-bg-container);flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.app-brand__mark img{width:26px;height:26px}.app-sider .app-sider-toggle{width:calc(100% - var(--space-lg));margin:auto var(--space-sm) var(--space-sm);color:var(--color-nav-text);flex-shrink:0}.app-sider .app-sider-toggle:hover{color:var(--color-bg-container);background:var(--color-nav-hover)}.app-header{height:var(--app-header-height);padding-inline:var(--app-content-padding-inline);justify-content:space-between;align-items:center;gap:var(--space-md);border-bottom:1px solid var(--color-border);flex-shrink:0;line-height:normal;display:flex}.app-header__location{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.app-breadcrumb{min-width:0}.app-breadcrumb ol{flex-wrap:nowrap}.app-breadcrumb li{min-width:0}.app-breadcrumb .ant-breadcrumb-link{overflow-wrap:anywhere}.app-header .app-account{align-items:center;gap:var(--space-sm);padding-inline:var(--space-sm);flex-shrink:0;display:flex}.app-account__username{white-space:nowrap;text-overflow:ellipsis;max-width:160px;overflow:hidden}.app-account__role{font-size:var(--font-caption-size);color:var(--color-text-secondary)}.app-nav-drawer .ant-drawer-body{background:var(--color-nav-bg);padding:0}.app-nav-drawer .ant-drawer-header{height:var(--app-header-height);padding:var(--space-sm) var(--space-lg)}.app-nav-drawer .app-brand{margin-bottom:var(--space-sm)}.app-skip-link{left:var(--space-lg);top:var(--space-sm);z-index:1100;padding:var(--space-sm) var(--space-lg);background:var(--color-bg-container);border-radius:var(--radius-control);position:fixed;transform:translateY(-200%)}.app-skip-link:focus{transform:translateY(0)}.app-sider :focus-visible,.app-nav-drawer .ant-drawer-body :focus-visible{outline-color:var(--color-bg-container)}@media (width<=767px){.app-header{padding-inline:var(--space-sm);gap:var(--space-xs)}.app-account__username{display:none}.app-header__location,.app-header .app-account{gap:var(--space-xs)}}.login-page{min-height:var(--app-viewport-height);grid-template-columns:minmax(280px,5fr) minmax(0,7fr);display:grid}.login-brand{background:var(--color-nav-bg);color:var(--color-bg-container);flex-direction:column;display:flex}.login-color-bar{height:var(--space-xs);display:flex}.login-color-bar span{flex:1}.login-brand__body{flex-direction:column;flex:1;justify-content:center;padding:clamp(24px,5vw,72px);display:flex;position:relative}.login-brand__mark{border-radius:var(--radius-card);background:var(--color-bg-container);width:64px;height:64px;margin-bottom:var(--space-xl);place-items:center;display:grid}.login-brand__mark img{width:52px;height:52px}.login-brand__name{font-size:28px;font-weight:var(--font-title-weight);letter-spacing:4px}.login-brand__english{margin-top:var(--space-sm);font-size:var(--font-caption-size);letter-spacing:2px;color:var(--color-nav-muted)}.login-brand__identity p{margin:var(--space-xl) 0 0;font-size:var(--font-body-size);color:var(--color-nav-text)}.login-brand__footer{bottom:var(--space-xxl);font-size:var(--font-caption-size);color:var(--color-nav-muted);position:absolute}.login-panel{background:var(--color-bg-container);flex-direction:column;min-width:0;display:flex}.login-panel__body{padding:var(--space-xxl) var(--space-xl);flex:1;place-items:center;display:grid}.login-form-shell{width:360px;max-width:100%}.login-form-shell h1{font-size:var(--font-title-size);font-weight:var(--font-title-weight);margin:0;line-height:1.4}.login-description{margin:var(--space-sm) 0 var(--space-xl);color:var(--color-text-secondary)}.login-error,.login-form-shell .ant-form-item{margin-bottom:var(--space-lg)}.login-form-shell .ant-form-item-label{padding-bottom:var(--space-sm)}.login-form-shell .login-submit{margin:var(--space-xl) 0 0}.login-password-toggle{width:24px;height:1.5em;font:inherit;border-radius:var(--space-xs);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.login-password-toggle:disabled{cursor:default}.login-dev-hint{margin:var(--space-lg) 0 0;font-size:var(--font-caption-size);color:var(--color-text-secondary)}.login-footer{padding:var(--space-lg);text-align:center;font-size:var(--font-caption-size);color:var(--color-text-secondary)}.login-mobile-logo{display:none}@media (width<=767px){.login-page{grid-template-columns:minmax(0,1fr)}.login-brand{display:none}.login-panel__body{padding:var(--space-xl) var(--space-lg)}.login-mobile-logo{width:48px;height:48px;margin-bottom:var(--space-xl);display:block}}:root{--app-viewport-height:100vh;--app-workspace-height:calc(var(--app-viewport-height) - var(--app-header-height,56px));--app-content-padding-inline:var(--space-xl,24px);--app-content-padding-block:var(--space-lg,16px)}@supports (height:100dvh){:root{--app-viewport-height:100dvh}}@media (width<=767px){:root{--app-content-padding-inline:var(--space-lg,16px)}}html,body,#root{background-color:var(--color-bg-layout,#f5f7fa);height:100%;color:var(--color-text,#101828);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:var(--font-body-size,14px);margin:0;padding:0;line-height:1.5}*{box-sizing:border-box}:where(a,button,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--color-focus,#2456c7);outline-offset:2px}.app-content-wrapper{padding:var(--app-content-padding-block) var(--app-content-padding-inline);min-height:var(--app-workspace-height);background:var(--color-bg-layout,#f5f7fa);min-width:0;overflow-x:auto}.app-content-fullbleed{height:var(--app-workspace-height);background:var(--color-bg-layout,#f5f7fa);flex:none;min-width:0;min-height:0;padding:0;overflow:auto}.app-content-inner{max-width:var(--app-content-max-width,1440px);min-width:0;margin:0 auto}
