/* [project]/apps/web/app/globals.css [app-client] (css) */
:root {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light;
  font-synthesis: none;
  text-rendering: optimizelegibility;
  background: #f8fafc;
  font-family: -apple-system, BlinkMacSystemFont, Segoe UI, PingFang SC, Microsoft YaHei, sans-serif;
}

* {
  box-sizing: border-box;
}

html, body {
  min-height: 100%;
  margin: 0;
}

body {
  background: var(--semi-color-bg-0);
  color: var(--semi-color-text-0);
  -webkit-font-smoothing: antialiased;
}

button, input, textarea, select {
  font: inherit;
}

a {
  color: var(--semi-color-link);
}

:focus-visible {
  outline: 2px solid var(--xuefu-color-focus);
  outline-offset: 2px;
}

.xuefu-theme .semi-card {
  border-color: var(--xuefu-color-border);
  border-radius: var(--xuefu-radius-panel);
  box-shadow: var(--xuefu-shadow-panel);
}

.xuefu-theme .semi-button {
  border-radius: var(--xuefu-radius-control);
  font-weight: 500;
}

.xuefu-theme .semi-input-wrapper, .xuefu-theme .semi-select {
  border-radius: var(--xuefu-radius-control);
}

.xuefu-theme .semi-table-thead > .semi-table-row > .semi-table-row-head {
  color: var(--xuefu-color-text-secondary);
  font-weight: 600;
}

.xuefu-theme .semi-table-row-cell {
  font-variant-numeric: tabular-nums;
}

.page-shell {
  width: min(1180px, 100% - 32px);
  padding: var(--xuefu-space-12) 0 var(--xuefu-space-6);
  margin: 0 auto;
}

.service-grid {
  gap: var(--xuefu-space-4);
  margin-top: var(--xuefu-space-6);
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  display: grid;
}

.footer {
  justify-content: center;
  gap: var(--xuefu-space-4);
  margin-top: var(--xuefu-space-12);
  padding-top: var(--xuefu-space-5);
  border-top: 1px solid var(--xuefu-color-border);
  color: var(--xuefu-color-text-tertiary);
  flex-wrap: wrap;
  font-size: 12px;
  line-height: 16px;
  display: flex;
}

.footer img {
  width: 16px;
  height: 16px;
  margin-right: var(--xuefu-space-1);
  vertical-align: text-bottom;
}

.error-digest {
  margin-top: var(--xuefu-space-3);
  color: var(--xuefu-color-text-tertiary);
  font-size: 12px;
  line-height: 16px;
  display: block;
}

.brand-lockup {
  align-items: center;
  min-width: 0;
  display: inline-flex;
}

.brand-lockup-wordmark {
  object-fit: contain;
  flex: none;
  width: auto;
  height: 48px;
}

.brand-lockup-symbol {
  object-fit: contain;
  flex: none;
  width: 32px;
  height: 32px;
  display: none;
}

.brand-lockup-compact .brand-lockup-wordmark {
  height: 32px;
}

.auth-page {
  background: #eff7ff;
  justify-content: center;
  align-items: center;
  gap: clamp(40px, 6vw, 96px);
  min-height: 100dvh;
  padding: 24px;
  display: flex;
}

.auth-frame {
  background: #fffdfa;
  border: 1px solid #1267d61a;
  border-radius: 14px;
  grid-template-columns: clamp(270px, 22vw, 320px) minmax(0, 1fr);
  width: min(1400px, 100%);
  min-height: calc(100dvh - 48px);
  display: grid;
  overflow: hidden;
  box-shadow: 0 20px 64px #1878f01a;
}

.auth-rail {
  isolation: isolate;
  color: #fff;
  background: #0164e5;
  min-height: 740px;
  padding: 44px 36px 32px;
  position: relative;
  overflow: hidden;
}

.auth-rail .brand-lockup {
  z-index: 2;
  position: relative;
}

.auth-rail .brand-lockup-wordmark {
  height: 43px;
}

.auth-rail-copy {
  z-index: 2;
  margin-top: 54px;
  position: relative;
}

.auth-rail-copy p {
  letter-spacing: .02em;
  margin: 0;
  font-size: clamp(24px, 2.1vw, 31px);
  font-weight: 700;
  line-height: 1.45;
}

.auth-rail-copy > span {
  background: #fff;
  border-radius: 2px;
  width: 28px;
  height: 3px;
  margin: 22px 0 18px;
  display: block;
}

.auth-rail-copy small {
  color: #ffffffdb;
  max-width: 210px;
  font-size: 14px;
  line-height: 1.8;
  display: block;
}

.auth-rail-art {
  z-index: 0;
  pointer-events: none;
  width: 114%;
  height: auto;
  position: absolute;
  bottom: 124px;
  right: -7%;
}

.auth-rail-chips {
  z-index: 2;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  display: grid;
  position: absolute;
  bottom: 28px;
  left: 22px;
  right: 22px;
}

.auth-rail-chips span {
  color: #ffffffeb;
  white-space: nowrap;
  border: 1px solid #ffffff5c;
  border-radius: 8px;
  justify-items: center;
  gap: 5px;
  min-width: 0;
  padding: 9px 3px;
  font-size: 11px;
  display: grid;
}

.auth-rail-chips .semi-icon {
  color: #b9f3ff;
  font-size: 18px;
}

.auth-content {
  background: #fffdfa;
  grid-template-rows: auto 1fr auto;
  min-width: 0;
  padding: 28px clamp(36px, 6vw, 88px) 20px;
  display: grid;
}

.auth-content-header {
  justify-content: flex-end;
  align-items: center;
  min-height: 36px;
  display: flex;
}

.auth-back-link {
  color: var(--xuefu-neutral-600);
  align-items: center;
  gap: 7px;
  font-size: 14px;
  text-decoration: none;
  display: inline-flex;
}

.auth-back-link:hover {
  color: var(--xuefu-color-interactive);
}

.auth-mobile-brand {
  display: none;
}

.auth-content-body {
  justify-content: center;
  align-items: center;
  padding: 22px 0;
  display: flex;
}

.auth-form-panel {
  width: 100%;
}

.auth-form-panel-login {
  max-width: 440px;
}

.auth-form-panel-register {
  max-width: 620px;
}

.auth-heading {
  margin-bottom: 34px;
}

.auth-heading h1 {
  color: var(--xuefu-neutral-900);
  letter-spacing: -.03em;
  margin: 0 0 7px;
  font-size: clamp(30px, 3vw, 38px);
  line-height: 1.25;
}

.auth-heading .semi-typography-tertiary {
  color: var(--xuefu-neutral-500);
  font-size: 15px;
}

.development-login {
  background: #eff7ffb8;
  border: 1px solid #1268e82e;
  border-radius: 10px;
  margin: -18px 0 20px;
  padding: 14px;
}

.development-login-heading {
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 11px;
  display: flex;
}

.development-login-heading > div {
  gap: 2px;
  display: grid;
}

.development-login-heading .semi-typography-tertiary {
  font-size: 12px;
}

.development-login-heading > span {
  color: #1268e8;
  background: #1268e81a;
  border-radius: 999px;
  flex: none;
  padding: 3px 7px;
  font-size: 11px;
  font-weight: 600;
}

.development-login-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  display: grid;
}

.development-login-grid .development-login-option {
  border: 1px solid var(--xuefu-neutral-200);
  text-align: left;
  background: #fff;
  border-radius: 8px;
  height: auto;
  min-height: 72px;
  padding: 9px 11px;
}

.development-login-grid .development-login-option:hover {
  background: #fff;
  border-color: #1268e86b;
}

.development-login-option-copy {
  white-space: normal;
  gap: 2px;
  min-width: 0;
  display: grid;
}

.development-login-option-copy strong {
  color: var(--xuefu-neutral-800);
  font-size: 13px;
}

.development-login-option-copy small {
  color: var(--xuefu-neutral-500);
  text-overflow: ellipsis;
  font-size: 11px;
  line-height: 1.35;
  overflow: hidden;
}

.development-login-option-copy em {
  color: #1268e8;
  font-family: var(--font-geist-mono), ui-monospace, monospace;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 10px;
  font-style: normal;
  overflow: hidden;
}

.development-login-divider {
  color: var(--xuefu-neutral-400);
  align-items: center;
  gap: 10px;
  margin: 14px 0 0;
  font-size: 11px;
  display: flex;
}

.development-login-divider:before, .development-login-divider:after {
  background: var(--xuefu-neutral-200);
  content: "";
  flex: 1;
  height: 1px;
}

.auth-form-panel > .semi-banner {
  margin: -18px 0 18px;
}

.login-form {
  gap: 9px;
  display: grid;
}

.login-form label, .auth-label-row label, .auth-field > label {
  color: var(--xuefu-neutral-700);
  font-size: 14px;
  font-weight: 600;
  line-height: 22px;
}

.login-form > label:not(:first-child) {
  margin-top: 10px;
}

.auth-label-row {
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
  display: flex;
}

.auth-label-row a {
  font-size: 13px;
  text-decoration: none;
}

.login-form .semi-input-wrapper {
  border-color: var(--xuefu-neutral-300);
  background: #fff;
  border-radius: 8px;
  min-height: 48px;
}

.login-form .semi-input-wrapper:focus-within {
  border-color: var(--xuefu-color-focus);
  box-shadow: 0 0 0 3px #2684ff1f;
}

.login-form > .semi-button-primary {
  border-radius: 7px;
  min-height: 48px;
  margin-top: 22px;
  font-size: 16px;
}

.auth-switch, .auth-trust, .auth-consent {
  text-align: center;
  margin: 0;
}

.auth-switch {
  color: var(--xuefu-neutral-500);
  font-size: 14px;
}

.auth-switch a {
  margin-left: 5px;
  font-weight: 600;
  text-decoration: none;
}

.auth-trust {
  color: var(--xuefu-neutral-500);
  justify-content: center;
  align-items: center;
  gap: 7px;
  margin-top: 12px;
  font-size: 13px;
  display: flex;
}

.auth-trust .semi-icon {
  color: #069a8e;
}

.auth-progress {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: -8px 0 24px;
  padding: 0;
  list-style: none;
  display: grid;
}

.auth-progress li {
  color: var(--xuefu-neutral-500);
  justify-items: center;
  gap: 7px;
  font-size: 12px;
  display: grid;
  position: relative;
}

.auth-progress li:not(:last-child):after {
  border-top: 1px dashed var(--xuefu-neutral-300);
  content: "";
  width: calc(100% - 46px);
  position: absolute;
  top: 13px;
  left: calc(50% + 23px);
}

.auth-progress li > span {
  border: 1px solid var(--xuefu-neutral-300);
  background: #fff;
  border-radius: 50%;
  place-items: center;
  width: 28px;
  height: 28px;
  font-weight: 600;
  display: grid;
}

.auth-progress li.is-active {
  color: var(--xuefu-color-interactive);
  font-weight: 600;
}

.auth-progress li.is-active > span {
  border-color: var(--xuefu-color-interactive);
  background: var(--xuefu-color-interactive);
  color: #fff;
}

.auth-form-grid {
  grid-template-columns: minmax(0, .9fr) minmax(250px, 1.1fr);
  gap: 16px;
  margin-top: 10px;
  display: grid;
}

.auth-field {
  gap: 9px;
  min-width: 0;
  display: grid;
}

.auth-code-field {
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
  display: grid;
}

.auth-code-field .semi-input-wrapper {
  border-radius: 8px 0 0 8px;
}

.auth-code-field .semi-button {
  border-radius: 0 8px 8px 0;
  min-width: 104px;
  min-height: 48px;
}

.auth-consent {
  color: var(--xuefu-neutral-500);
  margin-top: 8px;
  font-size: 12px;
  line-height: 20px;
}

.auth-consent a {
  margin-left: 3px;
  text-decoration: none;
}

.auth-compliance {
  color: var(--xuefu-neutral-400);
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px 18px;
  font-size: 11px;
  line-height: 16px;
  display: flex;
}

.auth-compliance a {
  color: inherit;
  align-items: center;
  gap: 4px;
  text-decoration: none;
  display: inline-flex;
}

.auth-compliance a:hover {
  color: var(--xuefu-color-interactive);
}

.auth-page > .auth-intro {
  max-width: 560px;
}

.auth-page > .login-card {
  width: min(440px, 100%);
}

.auth-page > .login-card > .semi-card-body {
  padding: var(--xuefu-space-8);
}

.auth-page > .auth-intro h1 {
  color: var(--xuefu-color-text);
  font-size: clamp(36px, 4.5vw, 56px);
  line-height: 1.16;
}

.workspace-shell {
  background: var(--xuefu-color-page);
  min-height: 100vh;
  display: flex;
}

.workspace-sidebar {
  z-index: 10;
  width: var(--xuefu-sidebar-width);
  background: var(--xuefu-color-sidebar);
  flex: none;
  height: 100vh;
  transition: width .16s;
  position: sticky;
  top: 0;
  overflow: hidden;
}

.workspace-navigation {
  --semi-color-text-0: var(--xuefu-color-sidebar-text);
  --semi-color-text-2: var(--xuefu-color-sidebar-icon);
  --semi-color-fill-0: var(--xuefu-color-sidebar-hover);
  --semi-color-fill-1: var(--xuefu-color-sidebar-active);
  --semi-color-primary: var(--xuefu-color-sidebar-state-text);
  --semi-color-primary-light-default: var(--xuefu-color-sidebar-selected);
  background: var(--xuefu-color-sidebar);
  flex-direction: column;
  height: 100%;
  display: flex;
}

.workspace-brand {
  height: var(--xuefu-header-height);
  padding: 0 var(--xuefu-space-5);
  border-bottom: 1px solid #ffffff14;
  align-items: center;
  display: flex;
}

.workspace-sidebar .semi-navigation, .workspace-navigation-mobile .semi-navigation {
  height: calc(100vh - var(--xuefu-header-height));
  padding: var(--xuefu-space-3);
  background: none;
  border-right: 0;
}

.workspace-sidebar .semi-navigation-item, .workspace-navigation-mobile .semi-navigation-item {
  margin-bottom: var(--xuefu-space-1);
  border-radius: var(--xuefu-radius-control);
  color: var(--xuefu-color-sidebar-text);
}

.workspace-sidebar .semi-navigation-item-text, .workspace-navigation-mobile .semi-navigation-item-text {
  font-size: 16px;
  line-height: 24px;
}

.workspace-sidebar .semi-navigation-item-icon-info, .workspace-navigation-mobile .semi-navigation-item-icon-info {
  flex: 0 0 20px;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 24px;
  line-height: 1;
  display: inline-flex;
}

.workspace-sidebar .semi-navigation-item-icon-info > .semi-icon, .workspace-navigation-mobile .semi-navigation-item-icon-info > .semi-icon {
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.workspace-sidebar .semi-navigation-item-normal, .workspace-navigation-mobile .semi-navigation-item-normal, .workspace-sidebar .semi-navigation-sub-title, .workspace-navigation-mobile .semi-navigation-sub-title {
  height: var(--xuefu-menu-item-height) !important;
  padding-top: var(--xuefu-menu-item-padding-y) !important;
  padding-bottom: var(--xuefu-menu-item-padding-y) !important;
  line-height: 24px !important;
}

.workspace-sidebar .semi-navigation-sub-wrap, .workspace-navigation-mobile .semi-navigation-sub-wrap {
  border-radius: var(--xuefu-radius-control);
  color: var(--xuefu-color-sidebar-text);
}

.workspace-sidebar .semi-navigation-sub-title:hover, .workspace-navigation-mobile .semi-navigation-sub-title:hover {
  border-radius: var(--xuefu-radius-control);
  background: var(--xuefu-color-sidebar-hover);
  color: var(--xuefu-color-sidebar-state-text) !important;
}

.workspace-sidebar .semi-navigation-sub-title:hover .semi-navigation-item-icon-info, .workspace-navigation-mobile .semi-navigation-sub-title:hover .semi-navigation-item-icon-info, .workspace-sidebar .semi-navigation-sub-title:hover .semi-navigation-item-text, .workspace-navigation-mobile .semi-navigation-sub-title:hover .semi-navigation-item-text {
  color: var(--xuefu-color-sidebar-state-text) !important;
}

.workspace-sidebar .semi-navigation-sub .semi-navigation-item-normal, .workspace-navigation-mobile .semi-navigation-sub .semi-navigation-item-normal {
  width: calc(100% - var(--xuefu-space-4));
  margin-left: var(--xuefu-space-4);
}

.menu-management-name {
  align-items: center;
  gap: var(--xuefu-space-3);
  display: flex;
}

.menu-management-icon {
  border-radius: var(--xuefu-radius-control);
  width: 32px;
  height: 32px;
  color: var(--xuefu-brand-600);
  background: var(--xuefu-brand-50);
  flex: none;
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.workspace-sidebar .semi-navigation-item-normal:hover:not(.semi-navigation-item-selected), .workspace-navigation-mobile .semi-navigation-item-normal:hover:not(.semi-navigation-item-selected) {
  background: var(--xuefu-color-sidebar-hover);
  color: var(--xuefu-color-sidebar-state-text);
}

.workspace-sidebar .semi-navigation-item-normal:hover:not(.semi-navigation-item-selected) .semi-navigation-item-icon:first-child, .workspace-navigation-mobile .semi-navigation-item-normal:hover:not(.semi-navigation-item-selected) .semi-navigation-item-icon:first-child, .workspace-sidebar .semi-navigation-item-normal:hover:not(.semi-navigation-item-selected) .semi-navigation-item-text, .workspace-navigation-mobile .semi-navigation-item-normal:hover:not(.semi-navigation-item-selected) .semi-navigation-item-text {
  color: var(--xuefu-color-sidebar-state-text) !important;
}

.workspace-sidebar .semi-navigation-item-selected, .workspace-navigation-mobile .semi-navigation-item-selected {
  background: var(--xuefu-color-sidebar-selected);
  color: var(--xuefu-color-sidebar-state-text);
  font-weight: 600;
}

.workspace-sidebar .semi-navigation-item-selected .semi-navigation-item-icon:first-child, .workspace-navigation-mobile .semi-navigation-item-selected .semi-navigation-item-icon:first-child {
  color: var(--xuefu-color-sidebar-state-text);
}

.workspace-sidebar .semi-navigation-item-normal:hover.semi-navigation-item-selected, .workspace-navigation-mobile .semi-navigation-item-normal:hover.semi-navigation-item-selected {
  background: var(--xuefu-color-sidebar-selected-hover);
  color: var(--xuefu-color-sidebar-state-text);
}

.workspace-sidebar .semi-navigation-item-normal:hover.semi-navigation-item-selected .semi-navigation-item-icon:first-child, .workspace-navigation-mobile .semi-navigation-item-normal:hover.semi-navigation-item-selected .semi-navigation-item-icon:first-child {
  color: var(--xuefu-color-sidebar-state-text);
}

.workspace-sidebar .semi-navigation-item-normal:active, .workspace-navigation-mobile .semi-navigation-item-normal:active {
  background: var(--xuefu-color-sidebar-active);
  color: var(--xuefu-color-sidebar-state-text);
}

.workspace-sidebar .semi-navigation-footer .semi-button:hover, .workspace-navigation-mobile .semi-navigation-footer .semi-button:hover {
  background: var(--xuefu-color-sidebar-hover);
  color: var(--xuefu-color-sidebar-state-text);
}

.workspace-sidebar .semi-navigation-footer .semi-button:active, .workspace-navigation-mobile .semi-navigation-footer .semi-button:active {
  background: var(--xuefu-color-sidebar-active);
}

.workspace-sidebar .semi-navigation-footer, .workspace-navigation-mobile .semi-navigation-footer {
  border-top-color: #ffffff14;
  color: var(--xuefu-color-sidebar-text) !important;
}

.workspace-sidebar .semi-navigation-footer *, .workspace-navigation-mobile .semi-navigation-footer * {
  color: inherit !important;
}

.workspace-sidebar:has(.semi-navigation-collapsed) {
  width: 72px;
}

.workspace-sidebar:has(.semi-navigation-collapsed) .workspace-brand {
  justify-content: center;
  padding: 0;
}

.workspace-sidebar:has(.semi-navigation-collapsed) .brand-lockup-wordmark {
  display: none;
}

.workspace-sidebar:has(.semi-navigation-collapsed) .brand-lockup-symbol {
  display: block;
}

.workspace-main {
  flex: 1;
  min-width: 0;
}

.workspace-header {
  z-index: 8;
  height: var(--xuefu-header-height);
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-5);
  padding: 0 var(--xuefu-space-8);
  border-bottom: 1px solid var(--xuefu-color-border);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  background: #fffffff5;
  display: flex;
  position: sticky;
  top: 0;
}

.workspace-header-context, .header-actions, .header-actions button {
  align-items: center;
  display: flex;
}

.workspace-header-context {
  gap: var(--xuefu-space-2);
  min-width: 0;
}

.workspace-header-context > div:last-child {
  min-width: 0;
}

.workspace-header h4 {
  margin: 0;
  font-size: 18px;
  line-height: 24px;
}

.workspace-header .semi-typography-tertiary {
  font-size: 12px;
  line-height: 16px;
}

.header-actions {
  gap: var(--xuefu-space-2);
  flex: none;
}

.header-actions button, .account-trigger .semi-button-content {
  gap: var(--xuefu-space-2);
}

.xuefu-theme .workspace-mobile-trigger {
  display: none !important;
}

.workspace-content {
  width: min(var(--xuefu-content-max), 100%);
  padding: var(--xuefu-space-8);
  margin: 0 auto;
}

.workspace-content > .semi-banner:first-child {
  margin-bottom: var(--xuefu-space-5);
}

.workspace-loading {
  width: min(820px, 100% - 32px);
  margin: 80px auto;
}

.workspace-loading button {
  margin-top: var(--xuefu-space-4);
}

.workspace-mobile-sheet .semi-sidesheet-body {
  background: var(--xuefu-color-sidebar);
  padding: 0;
}

.workspace-navigation-mobile .workspace-brand {
  display: none;
}

.workspace-navigation-mobile .semi-navigation {
  height: 100%;
}

.welcome-panel {
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--xuefu-space-5);
  margin: var(--xuefu-space-4) 0 var(--xuefu-space-6);
  display: flex;
}

.welcome-panel h2 {
  margin: 0 0 var(--xuefu-space-1);
  letter-spacing: -.02em;
  font-size: 28px;
  line-height: 40px;
}

.welcome-panel p {
  margin-bottom: 0;
}

.summary-grid {
  gap: var(--xuefu-space-4);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  display: grid;
}

.summary-card {
  min-height: 108px;
  position: relative;
  overflow: hidden;
}

.summary-card > .semi-card-body {
  padding: var(--xuefu-space-5);
}

.summary-card:before {
  background: var(--xuefu-brand-600);
  content: "";
  width: 3px;
  position: absolute;
  inset: 0 auto 0 0;
}

.summary-card-violet:before {
  background: var(--xuefu-violet-700);
}

.summary-card h3 {
  margin: var(--xuefu-space-3) 0 0;
  font-variant-numeric: tabular-nums;
  font-size: 28px;
  line-height: 36px;
}

.summary-card small {
  margin-left: var(--xuefu-space-1);
  color: var(--xuefu-color-text-tertiary);
  font-size: 13px;
  font-weight: 400;
}

.authorization-card.semi-card {
  margin-top: var(--xuefu-space-4);
}

.authorization-card > .semi-card-body {
  padding: var(--xuefu-space-5);
}

.authorization-card .tag-row {
  min-height: 32px;
  padding: var(--xuefu-space-2) 0 var(--xuefu-space-3);
}

.quick-entry-card {
  grid-column: span 2;
}

.quick-entry-card .semi-card-header {
  padding: var(--xuefu-space-4) var(--xuefu-space-5) var(--xuefu-space-1);
  border-bottom: 0;
}

.quick-entry-card > .semi-card-body {
  padding: var(--xuefu-space-2) var(--xuefu-space-5) var(--xuefu-space-4);
}

.quick-entry-grid {
  gap: var(--xuefu-space-2);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  display: grid;
}

.quick-entry-grid .semi-button {
  min-width: 0;
  color: var(--xuefu-color-text-secondary);
  justify-content: flex-start;
}

.workspace-meta {
  padding-top: var(--xuefu-space-3);
  border-top: 1px solid var(--xuefu-color-border);
  font-size: 12px;
  line-height: 16px;
  display: block;
}

.tag-row {
  align-items: flex-start;
  gap: var(--xuefu-space-2);
  min-height: 42px;
  padding: var(--xuefu-space-2) 0 var(--xuefu-space-4);
  flex-wrap: wrap;
  display: flex;
}

.admin-content {
  max-width: var(--xuefu-content-max);
}

.admin-page-header {
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--xuefu-space-6);
  margin: var(--xuefu-space-2) 0 var(--xuefu-space-5);
  display: flex;
}

.admin-page-header h2 {
  margin: 0 0 var(--xuefu-space-1);
  letter-spacing: -.02em;
  font-size: 28px;
  line-height: 40px;
}

.admin-page-header p {
  max-width: 720px;
  margin-bottom: 0;
}

.governance-summary {
  gap: var(--xuefu-space-3);
  margin-bottom: var(--xuefu-space-4);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  display: grid;
}

.governance-summary .semi-card {
  min-width: 0;
  box-shadow: none;
}

.governance-summary .semi-card-body {
  gap: var(--xuefu-space-1);
  padding: var(--xuefu-space-4);
  display: grid;
}

.governance-summary strong {
  color: var(--xuefu-color-text);
  font-variant-numeric: tabular-nums;
  font-size: 26px;
  line-height: 34px;
}

.governance-summary small {
  color: var(--xuefu-color-text-tertiary);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  line-height: 18px;
  overflow: hidden;
}

.admin-panel {
  border: 1px solid var(--xuefu-color-border);
  overflow: hidden;
}

.admin-panel > .semi-card-body {
  padding: 0;
}

.admin-panel .semi-banner {
  margin: var(--xuefu-space-4) var(--xuefu-space-5) 0;
}

.admin-filter-bar {
  align-items: center;
  gap: var(--xuefu-space-3);
  padding: var(--xuefu-space-4) var(--xuefu-space-5);
  border-bottom: 1px solid var(--xuefu-color-border);
  flex-wrap: wrap;
  display: flex;
}

.admin-filter-bar .semi-input-wrapper {
  width: min(360px, 100%);
}

.admin-filter-bar .semi-select {
  min-width: 160px;
}

.admin-panel .semi-table-container {
  overflow-x: auto;
}

.education-course-filter > .semi-card-body {
  align-items: center;
  gap: 16px;
  display: flex;
}

.education-course-filter .semi-select {
  min-width: min(440px, 100%);
}

.education-question-row {
  align-items: flex-end;
  width: 100%;
}

.education-question-row > :first-child {
  flex: 28rem;
}

.admin-content .semi-table-pagination-info {
  margin-left: var(--xuefu-space-4);
}

.table-primary-cell {
  flex-direction: column;
  gap: 3px;
  display: flex;
}

.permission-name-button.semi-button {
  width: fit-content;
  height: auto;
  min-height: 0;
  color: var(--xuefu-color-text);
  justify-content: flex-start;
  padding: 0;
  font-weight: 600;
}

.permission-name-button.semi-button:hover {
  color: var(--xuefu-color-interactive);
  background: none;
}

.admin-form-stack, .detail-stack {
  gap: var(--xuefu-space-5);
  display: grid;
}

.admin-form-stack label {
  gap: var(--xuefu-space-2);
  color: var(--xuefu-color-text-secondary);
  font-weight: 600;
  display: grid;
}

.admin-form-narrow {
  max-width: 560px;
}

.admin-form-narrow > .semi-button:last-child {
  justify-self: start;
}

.security-uri {
  overflow-wrap: anywhere;
}

.description-grid {
  align-items: center;
  gap: var(--xuefu-space-3) var(--xuefu-space-5);
  grid-template-columns: 110px minmax(0, 1fr);
  display: grid;
}

.description-grid > span {
  color: var(--xuefu-color-text-tertiary);
}

.assignment-toolbar {
  margin-bottom: var(--xuefu-space-4);
}

.assignment-list {
  gap: 0;
  display: grid;
}

.assignment-row {
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-4);
  padding: var(--xuefu-space-3) 0;
  border-top: 1px solid var(--xuefu-color-border);
  display: flex;
}

.assignment-row > div {
  gap: var(--xuefu-space-1);
  display: grid;
}

.side-sheet-actions {
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-4);
  margin-top: var(--xuefu-space-5);
  display: flex;
}

.role-detail-heading {
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--xuefu-space-4);
  margin-bottom: var(--xuefu-space-3);
  display: flex;
}

.role-detail-heading h4 {
  margin: 0;
}

.policy-summary {
  border: 1px solid var(--xuefu-color-border);
  border-radius: var(--xuefu-radius-panel);
  background: var(--xuefu-color-surface);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  display: grid;
  overflow: hidden;
}

.policy-summary > div {
  gap: var(--xuefu-space-1);
  padding: var(--xuefu-space-4);
  border-right: 1px solid var(--xuefu-color-border);
  display: grid;
}

.policy-summary > div:last-child {
  border-right: 0;
}

.policy-summary span {
  color: var(--xuefu-color-text-tertiary);
  font-size: 12px;
}

.policy-summary strong {
  font-variant-numeric: tabular-nums;
  font-size: 24px;
}

.policy-summary .is-changed {
  background: var(--xuefu-brand-50);
}

.permission-matrix-card > .semi-card-body {
  padding: 0;
}

.permission-filter-bar {
  gap: var(--xuefu-space-3);
  padding: var(--xuefu-space-4);
  border-bottom: 1px solid var(--xuefu-color-border);
  grid-template-columns: minmax(240px, 1fr) repeat(3, minmax(130px, auto));
  display: grid;
}

.permission-filter-bar .semi-select {
  width: 100%;
}

.permission-legend {
  gap: var(--xuefu-space-4);
  padding: var(--xuefu-space-3) var(--xuefu-space-4);
  color: var(--xuefu-color-text-tertiary);
  background: var(--xuefu-neutral-50);
  flex-wrap: wrap;
  font-size: 12px;
  display: flex;
}

.permission-legend span {
  align-items: center;
  gap: var(--xuefu-space-2);
  display: inline-flex;
}

.permission-legend i {
  border-radius: 50%;
  width: 8px;
  height: 8px;
}

.legend-allow {
  background: var(--xuefu-brand-600);
}

.legend-deny {
  background: var(--semi-color-danger);
}

.legend-unset {
  background: var(--xuefu-neutral-300);
}

.permission-module + .permission-module {
  border-top: 1px solid var(--xuefu-color-border);
}

.permission-module-header {
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-4);
  padding: var(--xuefu-space-3) var(--xuefu-space-4);
  background: var(--xuefu-neutral-50);
  display: flex;
}

.permission-module-header > div:first-child {
  align-items: center;
  gap: var(--xuefu-space-2);
  display: flex;
}

.permission-row {
  align-items: center;
  gap: var(--xuefu-space-4);
  min-height: 64px;
  padding: var(--xuefu-space-3) var(--xuefu-space-4);
  border-top: 1px solid var(--xuefu-color-border);
  grid-template-columns: minmax(0, 1fr) auto;
  display: grid;
}

.permission-copy {
  gap: 3px;
  min-width: 0;
  display: grid;
}

.permission-copy .semi-typography-tertiary {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.permission-choice {
  gap: var(--xuefu-space-2);
  grid-template-columns: repeat(3, 72px);
  display: grid;
}

.permission-empty {
  padding: var(--xuefu-space-8);
  text-align: center;
}

.sticky-policy-actions {
  z-index: 3;
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-4);
  padding: var(--xuefu-space-4);
  border: 1px solid var(--xuefu-color-border);
  border-radius: var(--xuefu-radius-panel);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background: #fffffff5;
  display: flex;
  position: sticky;
  bottom: 0;
  box-shadow: 0 -8px 24px #0f172a14;
}

.sticky-policy-actions > div {
  gap: 2px;
  display: grid;
}

.assignment-editor {
  gap: var(--xuefu-space-2);
  margin-bottom: var(--xuefu-space-4);
  grid-template-columns: minmax(220px, 1.4fr) minmax(140px, .8fr) minmax(180px, 1fr) minmax(190px, 1fr) minmax(190px, 1fr) auto;
  align-items: center;
  display: grid;
}

.assignment-editor.compact {
  grid-template-columns: minmax(240px, 1.4fr) minmax(150px, .8fr) minmax(180px, 1fr) auto;
}

.assignment-editor .semi-select, .assignment-editor .semi-input-wrapper {
  width: 100%;
}

.contact-list {
  margin-top: var(--xuefu-space-4);
  border-top: 1px solid var(--xuefu-color-border);
  gap: 0;
  display: grid;
}

.contact-list > div {
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-4);
  padding: var(--xuefu-space-3) 0;
  border-bottom: 1px solid var(--xuefu-color-border);
  display: flex;
}

.contact-list > div > div, .menu-edit-preview > div {
  gap: var(--xuefu-space-1);
  display: grid;
}

.menu-management-name.is-child {
  padding-left: var(--xuefu-space-3);
}

.menu-management-name.is-child:before {
  border-bottom: 1px solid var(--xuefu-neutral-300);
  border-left: 1px solid var(--xuefu-neutral-300);
  content: "";
  width: 12px;
  height: 20px;
}

.menu-edit-preview {
  align-items: center;
  gap: var(--xuefu-space-3);
  padding: var(--xuefu-space-3);
  border: 1px solid var(--xuefu-color-border);
  border-radius: var(--xuefu-radius-control);
  background: var(--xuefu-neutral-50);
  display: flex;
}

.contract-readonly {
  box-shadow: none !important;
}

@media (max-width: 1100px) {
  .summary-grid, .quick-entry-grid, .governance-summary, .assignment-editor, .assignment-editor.compact, .permission-filter-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .auth-page {
    background: #fffdfa;
    align-items: stretch;
    padding: 0;
  }

  .auth-frame {
    min-height: 100dvh;
    box-shadow: none;
    border: 0;
    border-radius: 0;
    display: block;
  }

  .auth-rail {
    display: none;
  }

  .auth-content {
    min-height: 100dvh;
    padding: 22px 24px 18px;
  }

  .auth-content-header {
    justify-content: space-between;
  }

  .auth-mobile-brand {
    display: block;
  }

  .auth-content-body {
    padding: 32px 0;
  }

  .auth-form-panel-login, .auth-form-panel-register {
    max-width: 520px;
  }

  .auth-page > .auth-intro, .workspace-sidebar {
    display: none;
  }

  .xuefu-theme .workspace-mobile-trigger {
    display: inline-flex !important;
  }

  .workspace-header, .workspace-content {
    padding-left: var(--xuefu-space-6);
    padding-right: var(--xuefu-space-6);
  }

  .admin-page-header {
    align-items: stretch;
    gap: var(--xuefu-space-4);
    flex-direction: column;
  }

  .admin-page-header > .semi-button {
    align-self: flex-start;
  }

  .policy-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .policy-summary > div:nth-child(2) {
    border-right: 0;
  }

  .policy-summary > div:nth-child(-n+2) {
    border-bottom: 1px solid var(--xuefu-color-border);
  }

  .permission-row {
    grid-template-columns: 1fr;
  }

  .permission-choice {
    grid-template-columns: repeat(3, minmax(72px, 1fr));
  }
}

.agent-product, .commerce-product {
  gap: var(--xuefu-space-5);
  display: grid;
}

.commerce-grid {
  gap: var(--xuefu-space-4);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  display: grid;
}

.commerce-grid .semi-card-body {
  min-height: 156px;
}

.commerce-product-target {
  border-radius: var(--xuefu-radius-lg);
  outline: 3px solid #0064fa2e;
  scroll-margin: 96px;
  box-shadow: 0 12px 32px #0064fa1f;
}

.commerce-product-target .semi-card {
  border-color: var(--semi-color-primary);
}

.agent-heading {
  justify-content: space-between;
  align-items: flex-end;
  gap: var(--xuefu-space-5);
  display: flex;
}

.agent-heading h2 {
  margin: var(--xuefu-space-2) 0 0;
}

.agent-heading .semi-typography-paragraph {
  margin-bottom: 0;
}

.agent-layout {
  gap: var(--xuefu-space-4);
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
  min-height: 720px;
  display: grid;
}

.agent-sidebar {
  align-content: start;
  gap: var(--xuefu-space-4);
  min-width: 0;
  display: grid;
}

.agent-conversations .semi-list-item {
  cursor: pointer;
  border-radius: var(--xuefu-radius-control);
}

.agent-conversations .semi-list-item:hover, .agent-conversation-active {
  background: var(--xuefu-brand-50);
}

.agent-conversations .semi-list-item-main > div {
  gap: var(--xuefu-space-1);
  display: grid;
}

.agent-conversations .semi-input-wrapper {
  margin-bottom: var(--xuefu-space-3);
}

.agent-chat {
  overflow: hidden;
}

.agent-chat .semi-card-body {
  flex-direction: column;
  height: 100%;
  min-height: 720px;
  display: flex;
}

.agent-chat-toolbar, .agent-context-strip {
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-3);
  padding: var(--xuefu-space-4);
  border-bottom: 1px solid var(--xuefu-color-border);
  display: flex;
}

.agent-chat-toolbar > div:first-child {
  gap: 2px;
  display: grid;
}

.agent-context-handoff {
  align-items: center;
  gap: var(--xuefu-space-3);
  padding: var(--xuefu-space-3) var(--xuefu-space-4);
  border-bottom: 1px solid var(--xuefu-color-border);
  background: var(--xuefu-brand-50);
  display: flex;
}

.agent-context-handoff .semi-banner {
  flex: 1;
  min-width: 0;
}

.agent-composer {
  gap: var(--xuefu-space-3);
  padding: var(--xuefu-space-4);
  border-top: 1px solid var(--xuefu-color-border);
  background: var(--xuefu-color-surface);
  display: grid;
}

.agent-composer-toolbar, .agent-composer-input, .agent-message-meta, .agent-trace-heading {
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-3);
  display: flex;
}

.agent-composer-toolbar {
  flex-wrap: wrap;
}

.agent-model-picker {
  align-items: center;
  gap: var(--xuefu-space-2);
  display: flex;
}

.agent-visually-hidden {
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  position: absolute;
  overflow: hidden;
}

.agent-composer-input {
  align-items: flex-end;
}

.agent-composer-input .semi-input-textarea-wrapper {
  flex: 1;
  min-width: 0;
}

.agent-composer-input textarea {
  max-height: 220px;
  overflow-y: auto !important;
}

.agent-messages {
  gap: var(--xuefu-space-4);
  min-height: 0;
  max-height: 620px;
  padding: var(--xuefu-space-6);
  background: linear-gradient(180deg, var(--xuefu-neutral-50), white 45%);
  flex-direction: column;
  flex: 1;
  display: flex;
  overflow-y: auto;
}

.agent-message {
  gap: var(--xuefu-space-2);
  width: min(82%, 760px);
  padding: var(--xuefu-space-4);
  border: 1px solid var(--xuefu-color-border);
  border-radius: var(--xuefu-radius-panel);
  white-space: pre-wrap;
  background: #fff;
  line-height: 1.7;
  display: grid;
}

.agent-message-user {
  border-color: var(--xuefu-brand-200);
  background: var(--xuefu-brand-50);
  align-self: flex-end;
}

.agent-message-assistant {
  align-self: flex-start;
}

.agent-message-meta {
  align-items: flex-start;
}

.agent-message-meta .semi-button {
  min-width: 28px;
}

.agent-context-strip {
  border-top: 1px solid var(--xuefu-color-border);
  border-bottom: 0;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.agent-trace {
  gap: var(--xuefu-space-3);
  width: min(92%, 820px);
  padding: var(--xuefu-space-4);
  border: 1px solid var(--xuefu-brand-200);
  border-radius: var(--xuefu-radius-panel);
  background: color-mix(in srgb, var(--xuefu-brand-50) 60%, white);
  display: grid;
}

.agent-trace .semi-typography-paragraph {
  margin: 0;
}

.agent-trace-list {
  gap: var(--xuefu-space-2);
  display: grid;
}

.agent-trace-item {
  gap: var(--xuefu-space-3);
  grid-template-columns: 28px minmax(0, 1fr);
  align-items: start;
  display: grid;
}

.agent-trace-item > span {
  width: 26px;
  height: 26px;
  color: var(--xuefu-brand-700);
  background: #fff;
  border-radius: 999px;
  place-items: center;
  font-size: 12px;
  font-weight: 700;
  display: grid;
}

.agent-trace-item > div {
  gap: 2px;
  display: grid;
}

.agent-trace-restore {
  align-self: flex-start;
}

.agent-attachments {
  gap: var(--xuefu-space-3);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  display: grid;
}

.agent-attachment {
  gap: var(--xuefu-space-3);
  min-width: 0;
  padding: var(--xuefu-space-2);
  border: 1px solid var(--xuefu-color-border);
  border-radius: var(--xuefu-radius-control);
  background: #fff;
  grid-template-columns: 72px minmax(0, 1fr) 32px;
  align-items: center;
  display: grid;
}

.agent-attachment-preview {
  cursor: zoom-in;
  border-radius: calc(var(--xuefu-radius-control) - 2px);
  background: var(--xuefu-neutral-100);
  border: 0;
  width: 72px;
  height: 58px;
  padding: 0;
  overflow: hidden;
}

.agent-attachment-preview img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.agent-attachment-body {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.agent-image-modal {
  object-fit: contain;
  max-width: 100%;
  max-height: 72vh;
  margin: 0 auto;
  display: block;
}

.agent-starters, .agent-empty {
  justify-content: center;
  align-items: center;
  gap: var(--xuefu-space-3);
  min-height: 420px;
  padding: var(--xuefu-space-6);
  flex-direction: column;
  display: flex;
}

.agent-starters .semi-button {
  justify-content: flex-start;
  width: min(100%, 520px);
}

.universal-ai-root {
  z-index: 1050;
  pointer-events: none;
  position: fixed;
  bottom: 24px;
  right: 24px;
}

.universal-ai-root > * {
  pointer-events: auto;
}

.universal-ai-launcher {
  border: 1px solid color-mix(in srgb, var(--xuefu-violet-300) 70%, white);
  min-height: 48px;
  padding: 0 18px;
  box-shadow: 0 14px 34px #4c1d9547;
  background: linear-gradient(135deg, var(--xuefu-violet-700), var(--xuefu-brand-600)) !important;
  border-radius: 999px !important;
}

.universal-ai-contextual-entry {
  border: 1px solid color-mix(in srgb, var(--xuefu-violet-300) 72%, white);
  white-space: nowrap;
  min-height: 32px;
  box-shadow: 0 8px 22px #4c1d9538;
  background: linear-gradient(135deg, var(--xuefu-violet-700), var(--xuefu-brand-600)) !important;
  border-radius: 999px !important;
  position: fixed !important;
}

.universal-ai-window {
  border: 1px solid color-mix(in srgb, var(--xuefu-violet-200) 70%, white);
  background: var(--xuefu-color-surface);
  border-radius: 16px;
  flex-direction: column;
  width: min(440px, 100vw - 32px);
  height: min(720px, 100dvh - 104px);
  display: flex;
  position: fixed;
  bottom: 24px;
  right: 24px;
  overflow: hidden;
  box-shadow: 0 24px 70px #0f172a3d;
}

.universal-ai-window-expanded {
  width: min(880px, 100vw - 48px);
  height: calc(100dvh - 48px);
}

.universal-ai-window-minimized {
  width: 300px;
  height: auto;
  display: block;
}

.universal-ai-titlebar, .universal-ai-context, .universal-ai-message-meta, .universal-ai-applybar, .universal-ai-composer-actions {
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-3);
  display: flex;
}

.universal-ai-titlebar {
  border-bottom: 1px solid var(--xuefu-color-border);
  background: linear-gradient(135deg, var(--xuefu-violet-50), white 52%, var(--xuefu-brand-50));
  cursor: grab;
  touch-action: none;
  -webkit-user-select: none;
  user-select: none;
  min-height: 62px;
  padding: 10px 12px 10px 16px;
}

.universal-ai-window-dragging .universal-ai-titlebar {
  cursor: grabbing;
}

.universal-ai-window-minimized .universal-ai-titlebar {
  border-bottom: 0;
}

.universal-ai-brand {
  align-items: center;
  gap: 10px;
  min-width: 0;
  display: flex;
}

.universal-ai-brand img {
  object-fit: contain;
  flex: none;
  width: 34px;
  height: 34px;
}

.universal-ai-brand > div, .universal-ai-context > div:first-child {
  gap: 1px;
  min-width: 0;
  display: grid;
}

.universal-ai-context {
  border-bottom: 1px solid var(--xuefu-color-border);
  background: var(--xuefu-neutral-25);
  align-items: flex-start;
  padding: 12px 16px;
}

.universal-ai-context-actions {
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  display: flex;
}

.universal-ai-context-details {
  background: var(--semi-color-fill-0);
  border-bottom: 1px solid var(--semi-color-border);
  flex-direction: column;
  gap: 8px;
  padding: 10px 16px 12px;
  display: flex;
}

.universal-ai-context-detail-row {
  grid-template-columns: 76px minmax(0, 1fr);
  align-items: flex-start;
  gap: 10px;
  display: grid;
}

.universal-ai-messages {
  background: radial-gradient(circle at 100% 0, #ede9feb3, transparent 38%),
    linear-gradient(180deg, var(--xuefu-neutral-50), white 44%);
  flex-direction: column;
  flex: auto;
  gap: 12px;
  min-height: 0;
  padding: 18px;
  display: flex;
  overflow-y: auto;
}

.universal-ai-welcome {
  text-align: center;
  flex-direction: column;
  justify-content: center;
  min-height: 100%;
  display: flex;
}

.universal-ai-welcome > .semi-icon {
  color: var(--xuefu-color-ai);
  margin: 0 auto 10px;
  font-size: 32px;
}

.universal-ai-welcome h4 {
  margin: 0;
}

.universal-ai-welcome .semi-typography-paragraph {
  margin: 8px 0 18px;
}

.universal-ai-welcome .semi-button {
  justify-content: flex-start;
}

.universal-ai-starters {
  gap: var(--xuefu-space-2);
  display: grid;
}

.universal-ai-message {
  border: 1px solid var(--xuefu-color-border);
  overflow-wrap: anywhere;
  background: #fff;
  border-radius: 12px;
  gap: 6px;
  width: min(88%, 360px);
  padding: 12px 14px;
  line-height: 1.65;
  display: grid;
}

.universal-ai-message-user {
  border-color: var(--xuefu-brand-200);
  background: var(--xuefu-brand-50);
  white-space: pre-wrap;
  align-self: flex-end;
}

.universal-ai-message-assistant {
  align-self: flex-start;
}

.universal-ai-message-meta {
  align-items: flex-start;
}

.universal-ai-message-content {
  min-width: 0;
}

.universal-ai-message-content > :first-child {
  margin-top: 0;
}

.universal-ai-message-content > :last-child {
  margin-bottom: 0;
}

.universal-ai-message-content pre {
  background: var(--xuefu-neutral-900);
  color: #fff;
  border-radius: 8px;
  max-width: 100%;
  padding: 10px;
  font-size: 12px;
  overflow-x: auto;
}

.universal-ai-message-content code {
  background: var(--xuefu-neutral-100);
  font-family: var(--font-geist-mono), ui-monospace, SFMono-Regular, Consolas, monospace;
  border-radius: 4px;
  padding: 1px 4px;
}

.universal-ai-message-content pre code {
  background: none;
  padding: 0;
}

.universal-ai-message-content ul, .universal-ai-message-content ol {
  margin: 6px 0;
  padding-left: 22px;
}

.universal-ai-message-content blockquote {
  border-left: 3px solid var(--xuefu-violet-300);
  color: var(--xuefu-color-text-secondary);
  margin: 8px 0;
  padding-left: 10px;
}

.universal-ai-applybar {
  border-top: 1px solid var(--xuefu-color-border);
  background: var(--xuefu-violet-50);
  align-items: flex-start;
  padding: 10px 14px;
}

.universal-ai-composer {
  border-top: 1px solid var(--xuefu-color-border);
  background: #fff;
  gap: 10px;
  padding: 14px;
  display: grid;
}

.universal-ai-composer textarea {
  max-height: 152px;
  overflow-y: auto !important;
}

.markdown-rich-editor {
  border: 1px solid var(--xuefu-color-border);
  border-radius: var(--xuefu-radius-lg);
  background: #fff;
  overflow: hidden;
}

.markdown-rich-editor:focus-within {
  border-color: var(--xuefu-brand-500);
  box-shadow: 0 0 0 2px #2563eb1f;
}

.markdown-rich-editor-toolbar, .markdown-rich-editor-status {
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-3);
  background: var(--xuefu-neutral-50);
  padding: 8px 10px;
  display: flex;
}

.markdown-rich-editor-toolbar {
  border-bottom: 1px solid var(--xuefu-color-border);
}

.markdown-rich-editor-status {
  border-top: 1px solid var(--xuefu-color-border);
}

.markdown-rich-editor .semi-input-textarea-wrapper {
  box-shadow: none;
  border: 0;
  border-radius: 0;
}

.markdown-rich-editor .semi-input-textarea {
  color: var(--xuefu-color-text);
  font-family: var(--font-geist-mono), ui-monospace, SFMono-Regular, Consolas, monospace;
  padding: 16px;
  font-size: 14px;
  line-height: 1.75;
}

.markdown-rich-editor-preview {
  min-height: 360px;
  max-height: 620px;
  color: var(--xuefu-color-text);
  padding: 22px 24px;
  line-height: 1.8;
  overflow-y: auto;
}

.markdown-rich-editor-preview > :first-child {
  margin-top: 0;
}

.markdown-rich-editor-preview > :last-child {
  margin-bottom: 0;
}

.markdown-rich-editor-preview table {
  border-collapse: collapse;
  width: 100%;
}

.markdown-rich-editor-preview th, .markdown-rich-editor-preview td {
  border: 1px solid var(--xuefu-color-border);
  padding: 8px 10px;
}

.markdown-rich-editor-preview blockquote {
  border-left: 3px solid var(--xuefu-brand-300);
  color: var(--xuefu-color-text-secondary);
  margin-left: 0;
  padding-left: 14px;
}

.markdown-rich-editor-preview code {
  background: var(--xuefu-neutral-100);
  border-radius: 4px;
  padding: 2px 5px;
}

.ai-paper-layout {
  gap: var(--xuefu-space-4);
  margin-top: var(--xuefu-space-4);
  grid-template-columns: minmax(260px, .32fr) minmax(0, 1fr);
  display: grid;
}

.ai-paper-list, .ai-paper-workspace {
  min-width: 0;
}

.ai-paper-project {
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-3);
  border: 1px solid var(--xuefu-color-border);
  border-radius: var(--xuefu-radius-md);
  text-align: left;
  cursor: pointer;
  background: #fff;
  width: 100%;
  padding: 12px;
  display: flex;
}

.ai-paper-project > span:first-child {
  gap: 4px;
  min-width: 0;
  display: grid;
}

.ai-paper-project-active {
  border-color: var(--xuefu-brand-400);
  background: var(--xuefu-brand-50);
}

.ai-paper-brief {
  gap: var(--xuefu-space-3);
  border-radius: var(--xuefu-radius-lg);
  background: var(--xuefu-neutral-50);
  width: 100%;
  padding: var(--xuefu-space-4);
  display: grid;
}

.ai-paper-brief .semi-typography-paragraph {
  margin: 4px 0 0;
}

.ai-paper-version-heading, .ai-paper-citation {
  justify-content: space-between;
  align-items: flex-start;
  gap: var(--xuefu-space-3);
  width: 100%;
  display: flex;
}

.ai-paper-version-heading h3 {
  margin: 0;
}

.ai-paper-version-tools {
  width: 100%;
}

.ai-paper-outline-nav, .ai-paper-version-compare-controls {
  justify-content: space-between;
  align-items: center;
  gap: var(--xuefu-space-3);
  width: 100%;
  display: flex;
}

.ai-paper-version-compare-controls > div {
  gap: 3px;
  display: grid;
}

.ai-paper-version-comparison {
  gap: var(--xuefu-space-3);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  display: grid;
}

.ai-paper-version-comparison section {
  gap: var(--xuefu-space-2);
  min-width: 0;
  display: grid;
}

.ai-paper-version-comparison pre {
  border: 1px solid var(--xuefu-color-border);
  border-radius: var(--xuefu-radius-md);
  background: var(--xuefu-neutral-50);
  max-height: 420px;
  padding: var(--xuefu-space-4);
  font: inherit;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  margin: 0;
  line-height: 1.65;
  overflow: auto;
}

.ai-paper-document {
  border: 1px solid var(--xuefu-color-border);
  border-radius: var(--xuefu-radius-lg);
  background: #fff;
  width: 100%;
  max-height: 720px;
  padding: 28px 32px;
  line-height: 1.85;
  overflow-y: auto;
}

.ai-paper-document > :first-child {
  margin-top: 0;
}

.ai-paper-editor {
  gap: var(--xuefu-space-3);
  width: 100%;
  display: grid;
}

.ai-paper-citation {
  border-bottom: 1px solid var(--xuefu-color-border);
  padding-bottom: var(--xuefu-space-3);
}

.ai-paper-citation > div {
  gap: 4px;
  display: grid;
}

.ai-paper-citation-evidence-control {
  justify-items: start;
  gap: var(--xuefu-space-2);
  margin-top: var(--xuefu-space-1);
  display: grid;
}

.ai-paper-citation-evidence {
  border-left: 3px solid var(--xuefu-brand-300);
  border-radius: 0 var(--xuefu-radius-md) var(--xuefu-radius-md) 0;
  background: var(--xuefu-brand-50);
  width: 100%;
  max-height: 260px;
  padding: var(--xuefu-space-3);
  margin: 0;
  overflow-y: auto;
}

.ai-paper-citation-evidence-unverified {
  border-left-color: var(--semi-color-warning);
  background: var(--semi-color-warning-light-default);
}

.ai-paper-citation-evidence .semi-typography-paragraph {
  margin: var(--xuefu-space-2) 0 0;
  white-space: pre-wrap;
}

@media (max-width: 560px) {
  .universal-ai-root {
    bottom: 12px;
    right: 12px;
  }

  .universal-ai-window {
    border-radius: 14px;
    width: calc(100vw - 24px);
    height: calc(100dvh - 24px);
    bottom: 12px;
    right: 12px;
  }

  .universal-ai-contextual-entry {
    display: none;
  }

  .universal-ai-window-minimized {
    width: min(300px, 100vw - 24px);
    height: auto;
  }

  .universal-ai-window-expanded {
    width: calc(100vw - 24px);
    height: calc(100dvh - 24px);
  }

  .universal-ai-titlebar {
    cursor: default;
    touch-action: auto;
  }

  .universal-ai-context, .universal-ai-applybar, .markdown-rich-editor-toolbar, .markdown-rich-editor-status, .ai-paper-outline-nav, .ai-paper-version-compare-controls {
    flex-direction: column;
    align-items: stretch;
  }

  .ai-paper-version-compare-controls .semi-select {
    width: 100% !important;
    min-width: 0 !important;
  }
}

@media (max-width: 900px) {
  .agent-layout {
    grid-template-columns: 1fr;
  }

  .agent-conversations {
    max-height: 240px;
    overflow-y: auto;
  }

  .agent-attachments, .ai-paper-layout, .ai-paper-version-comparison {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .auth-content {
    padding-left: 18px;
    padding-right: 18px;
  }

  .auth-content-body {
    align-items: flex-start;
    padding-top: 44px;
  }

  .auth-page-register .auth-content-body {
    padding-top: 28px;
  }

  .auth-heading {
    margin-bottom: 28px;
  }

  .auth-heading h1 {
    font-size: 30px;
  }

  .auth-form-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .auth-progress {
    margin-bottom: 22px;
  }

  .auth-progress li {
    font-size: 11px;
  }

  .auth-compliance {
    margin-top: 12px;
  }

  .workspace-header, .workspace-content {
    padding-left: var(--xuefu-space-4);
    padding-right: var(--xuefu-space-4);
  }

  .workspace-header {
    gap: var(--xuefu-space-2);
  }

  .agent-heading, .agent-chat-toolbar, .agent-context-handoff, .agent-context-strip, .agent-composer-toolbar, .agent-composer-input {
    flex-direction: column;
    align-items: stretch;
  }

  .commerce-grid {
    grid-template-columns: 1fr;
  }

  .agent-layout, .agent-chat .semi-card-body {
    min-height: 540px;
  }

  .agent-message {
    width: 94%;
  }

  .agent-trace, .agent-attachment {
    width: 100%;
  }

  .workspace-header .semi-button {
    min-width: 44px;
    min-height: 44px;
  }

  .workspace-header-context .semi-typography-tertiary, .account-trigger > span {
    display: none;
  }

  .welcome-panel {
    flex-direction: column;
    align-items: flex-start;
  }

  .summary-grid {
    grid-template-columns: 1fr;
  }

  .quick-entry-card {
    grid-column: span 1;
  }

  .admin-filter-bar {
    flex-direction: column;
    align-items: stretch;
  }

  .admin-filter-bar .semi-input-wrapper, .admin-filter-bar .semi-select {
    width: 100%;
  }

  .description-grid {
    gap: var(--xuefu-space-1);
    grid-template-columns: 1fr;
  }

  .description-grid > :not(span) {
    margin-bottom: var(--xuefu-space-3);
  }

  .side-sheet-actions, .assignment-row, .role-detail-heading, .sticky-policy-actions {
    flex-direction: column;
    align-items: flex-start;
  }

  .governance-summary, .permission-filter-bar, .assignment-editor, .assignment-editor.compact {
    grid-template-columns: 1fr;
  }

  .permission-module-header {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  *, :before, :after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* [project]/apps/web/app/tokens.css [app-client] (css) */
body.xuefu-theme {
  --xuefu-brand-50: #eff6ff;
  --xuefu-brand-100: #dbeafe;
  --xuefu-brand-200: #bfdbfe;
  --xuefu-brand-300: #93c5fd;
  --xuefu-brand-400: #60a5fa;
  --xuefu-brand-500: #1878f0;
  --xuefu-brand-600: #1267d6;
  --xuefu-brand-700: #0a4fb0;
  --xuefu-brand-800: #0d3b84;
  --xuefu-brand-900: #0f2a5f;
  --xuefu-brand-950: #081a3d;
  --xuefu-violet-50: #f5f3ff;
  --xuefu-violet-100: #ede9fe;
  --xuefu-violet-200: #ddd6fe;
  --xuefu-violet-300: #c4b5fd;
  --xuefu-violet-400: #a78bfa;
  --xuefu-violet-500: #8b5cf6;
  --xuefu-violet-600: #7c3aed;
  --xuefu-violet-700: #6d28d9;
  --xuefu-violet-800: #5b21b6;
  --xuefu-violet-900: #4c1d95;
  --xuefu-neutral-0: #fff;
  --xuefu-neutral-25: #fafbfd;
  --xuefu-neutral-50: #f8fafc;
  --xuefu-neutral-100: #f1f5f9;
  --xuefu-neutral-200: #e2e8f0;
  --xuefu-neutral-300: #cbd5e1;
  --xuefu-neutral-400: #94a3b8;
  --xuefu-neutral-500: #64748b;
  --xuefu-neutral-600: #475569;
  --xuefu-neutral-700: #334155;
  --xuefu-neutral-800: #1e293b;
  --xuefu-neutral-900: #0f172a;
  --xuefu-color-brand: var(--xuefu-brand-500);
  --xuefu-color-interactive: var(--xuefu-brand-600);
  --xuefu-color-interactive-hover: var(--xuefu-brand-700);
  --xuefu-color-interactive-active: var(--xuefu-brand-800);
  --xuefu-color-focus: #2684ff;
  --xuefu-color-ai: var(--xuefu-violet-700);
  --xuefu-color-success: #047857;
  --xuefu-color-warning: #b45309;
  --xuefu-color-danger: #dc2626;
  --xuefu-color-info: var(--xuefu-brand-600);
  --xuefu-color-text: var(--xuefu-neutral-900);
  --xuefu-color-text-secondary: var(--xuefu-neutral-600);
  --xuefu-color-text-tertiary: var(--xuefu-neutral-500);
  --xuefu-color-border: var(--xuefu-neutral-200);
  --xuefu-color-page: var(--xuefu-neutral-50);
  --xuefu-color-surface: var(--xuefu-neutral-0);
  --xuefu-color-sidebar: var(--xuefu-neutral-900);
  --xuefu-color-sidebar-text: var(--xuefu-neutral-300);
  --xuefu-color-sidebar-icon: var(--xuefu-neutral-400);
  --xuefu-color-sidebar-hover: var(--xuefu-neutral-800);
  --xuefu-color-sidebar-active: var(--xuefu-neutral-700);
  --xuefu-color-sidebar-selected: var(--xuefu-brand-600);
  --xuefu-color-sidebar-selected-hover: var(--xuefu-brand-700);
  --xuefu-color-sidebar-state-text: var(--xuefu-neutral-0);
  --xuefu-space-1: 4px;
  --xuefu-space-2: 8px;
  --xuefu-space-3: 12px;
  --xuefu-space-4: 16px;
  --xuefu-space-5: 20px;
  --xuefu-space-6: 24px;
  --xuefu-space-8: 32px;
  --xuefu-space-10: 40px;
  --xuefu-space-12: 48px;
  --xuefu-radius-control: 6px;
  --xuefu-radius-panel: 8px;
  --xuefu-radius-dialog: 12px;
  --xuefu-shadow-panel: 0 1px 2px #0f172a0a;
  --xuefu-shadow-elevated: 0 12px 32px #0f172a24;
  --xuefu-content-max: 1480px;
  --xuefu-sidebar-width: 248px;
  --xuefu-header-height: 64px;
  --xuefu-menu-item-height: 44px;
  --xuefu-menu-item-padding-y: 10px;
  --semi-blue-0: 239, 246, 255;
  --semi-blue-1: 219, 234, 254;
  --semi-blue-2: 191, 219, 254;
  --semi-blue-3: 147, 197, 253;
  --semi-blue-4: 96, 165, 250;
  --semi-blue-5: 18, 103, 214;
  --semi-blue-6: 10, 79, 176;
  --semi-blue-7: 13, 59, 132;
  --semi-blue-8: 15, 42, 95;
  --semi-blue-9: 8, 26, 61;
  --semi-violet-0: 245, 243, 255;
  --semi-violet-1: 237, 233, 254;
  --semi-violet-2: 221, 214, 254;
  --semi-violet-3: 196, 181, 253;
  --semi-violet-4: 167, 139, 250;
  --semi-violet-5: 124, 58, 237;
  --semi-violet-6: 109, 40, 217;
  --semi-violet-7: 91, 33, 182;
  --semi-violet-8: 76, 29, 149;
  --semi-violet-9: 62, 25, 122;
  --semi-green-0: 236, 253, 245;
  --semi-green-1: 209, 250, 229;
  --semi-green-2: 167, 243, 208;
  --semi-green-3: 110, 231, 183;
  --semi-green-4: 52, 211, 153;
  --semi-green-5: 4, 120, 87;
  --semi-green-6: 4, 96, 70;
  --semi-green-7: 6, 78, 59;
  --semi-green-8: 6, 95, 70;
  --semi-green-9: 2, 44, 34;
  --semi-orange-0: 255, 247, 237;
  --semi-orange-1: 255, 237, 213;
  --semi-orange-2: 254, 215, 170;
  --semi-orange-3: 253, 186, 116;
  --semi-orange-4: 251, 146, 60;
  --semi-orange-5: 180, 83, 9;
  --semi-orange-6: 154, 69, 7;
  --semi-orange-7: 124, 45, 18;
  --semi-orange-8: 124, 45, 18;
  --semi-orange-9: 67, 20, 7;
  --semi-red-0: 254, 242, 242;
  --semi-red-1: 254, 226, 226;
  --semi-red-2: 254, 202, 202;
  --semi-red-3: 252, 165, 165;
  --semi-red-4: 248, 113, 113;
  --semi-red-5: 220, 38, 38;
  --semi-red-6: 185, 28, 28;
  --semi-red-7: 153, 27, 27;
  --semi-red-8: 127, 29, 29;
  --semi-red-9: 69, 10, 10;
  --semi-color-primary: var(--xuefu-color-interactive);
  --semi-color-primary-hover: var(--xuefu-color-interactive-hover);
  --semi-color-primary-active: var(--xuefu-color-interactive-active);
  --semi-color-primary-disabled: var(--xuefu-brand-200);
  --semi-color-primary-light-default: var(--xuefu-brand-50);
  --semi-color-primary-light-hover: var(--xuefu-brand-100);
  --semi-color-primary-light-active: var(--xuefu-brand-200);
  --semi-color-secondary: var(--xuefu-violet-700);
  --semi-color-secondary-hover: var(--xuefu-violet-800);
  --semi-color-secondary-active: var(--xuefu-violet-900);
  --semi-color-secondary-disabled: var(--xuefu-violet-200);
  --semi-color-secondary-light-default: var(--xuefu-violet-50);
  --semi-color-secondary-light-hover: var(--xuefu-violet-100);
  --semi-color-secondary-light-active: var(--xuefu-violet-200);
  --semi-color-info: var(--xuefu-color-info);
  --semi-color-info-hover: var(--xuefu-brand-700);
  --semi-color-info-active: var(--xuefu-brand-800);
  --semi-color-success: var(--xuefu-color-success);
  --semi-color-warning: var(--xuefu-color-warning);
  --semi-color-danger: var(--xuefu-color-danger);
  --semi-color-focus-border: var(--xuefu-color-focus);
  --semi-color-link: var(--xuefu-color-interactive);
  --semi-color-link-hover: var(--xuefu-color-interactive-hover);
  --semi-color-link-active: var(--xuefu-color-interactive-active);
  --semi-color-link-visited: var(--xuefu-violet-700);
  --semi-color-border: #e2e8f0;
  --semi-color-nav-bg: var(--xuefu-color-surface);
  --semi-color-fill-0: #0f172a0a;
  --semi-color-fill-1: #0f172a12;
  --semi-color-fill-2: #0f172a1c;
  --semi-color-bg-0: var(--xuefu-color-page);
  --semi-color-bg-1: var(--xuefu-color-surface);
  --semi-color-bg-2: var(--xuefu-color-surface);
  --semi-color-bg-3: var(--xuefu-color-surface);
  --semi-color-bg-4: var(--xuefu-color-surface);
  --semi-color-text-0: var(--xuefu-color-text);
  --semi-color-text-1: var(--xuefu-color-text-secondary);
  --semi-color-text-2: var(--xuefu-color-text-tertiary);
  --semi-color-text-3: var(--xuefu-neutral-400);
  --semi-color-disabled-text: var(--xuefu-neutral-400);
  --semi-color-disabled-border: var(--xuefu-neutral-200);
  --semi-color-disabled-bg: var(--xuefu-neutral-100);
  --semi-shadow-elevated: var(--xuefu-shadow-elevated);
  --semi-border-radius-extra-small: 3px;
  --semi-border-radius-small: var(--xuefu-radius-control);
  --semi-border-radius-medium: var(--xuefu-radius-panel);
  --semi-border-radius-large: var(--xuefu-radius-dialog);
}

/* [project]/apps/web/app/website.css [app-client] (css) */
.marketing-site {
  --site-blue: #1878f0;
  --site-blue-dark: #075ac8;
  --site-cyan: #24b9e9;
  --site-mint: #19a990;
  --site-violet: #7656e8;
  --site-orange: #f47a36;
  --site-yellow: #f6b928;
  --site-ink: #0d1f3c;
  --site-muted: #506079;
  --site-line: #dce8f7;
  --site-surface: #fff;
  --site-soft-blue: #f2f8ff;
  --site-soft-mint: #effbf8;
  --site-soft-violet: #f7f4ff;
  --site-soft-orange: #fff7ee;
  background: var(--site-surface);
  min-height: 100%;
  color: var(--site-ink);
  font-family: Noto Sans SC, PingFang SC, Microsoft YaHei, sans-serif;
  overflow: clip;
}

.marketing-site a {
  color: inherit;
  text-decoration: none;
}

.marketing-container {
  width: min(1200px, 100% - 48px);
  margin: 0 auto;
}

.site-header {
  z-index: 20;
  background: #fffffff5;
  border-bottom: 1px solid #dce8f7b3;
  height: 76px;
  position: relative;
}

.site-header-inner {
  align-items: center;
  gap: 40px;
  width: min(1248px, 100% - 48px);
  height: 100%;
  margin: 0 auto;
  display: flex;
}

.site-logo {
  flex: none;
  align-items: center;
  display: inline-flex;
}

.site-header .brand-lockup-wordmark {
  height: 38px;
}

.site-navigation {
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 38px;
  height: 100%;
  display: flex;
}

.site-navigation a {
  color: #31425c;
  align-items: center;
  height: 100%;
  font-size: 15px;
  font-weight: 500;
  display: inline-flex;
  position: relative;
}

.site-navigation a:hover, .site-navigation a.is-active {
  color: var(--site-blue-dark);
}

.site-navigation a.is-active {
  box-shadow: inset 0 -2px 0 var(--site-blue);
}

.site-header-actions {
  align-items: center;
  gap: 22px;
  display: flex;
}

.site-login-link {
  color: #31425c;
  font-size: 15px;
  font-weight: 600;
}

.site-user-link {
  color: #1e3a5f;
  align-items: center;
  gap: 8px;
  max-width: 180px;
  font-size: 15px;
  font-weight: 700;
  display: inline-flex;
}

.site-user-link span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.site-user-link:hover {
  color: var(--site-blue-dark);
}

.site-header .semi-button, .marketing-site .semi-button {
  border-radius: 10px;
  min-width: 112px;
  height: 44px;
  font-weight: 600;
}

.mobile-menu-button {
  min-width: 44px !important;
  display: none !important;
}

.mobile-navigation-sheet nav {
  gap: 8px;
  display: grid;
}

.mobile-navigation-sheet nav a {
  color: #0d1f3c;
  border-radius: 10px;
  padding: 14px 16px;
  font-size: 16px;
  font-weight: 600;
}

.mobile-navigation-sheet nav a:hover {
  color: #075ac8;
  background: #f2f8ff;
}

.mobile-navigation-sheet nav > .semi-button {
  width: 100%;
  margin-top: 6px;
}

.marketing-hero {
  background: #f5f9ff url("/website/hero-learning-galaxy-xuefu.png") center / cover;
  min-height: 660px;
  position: relative;
  overflow: hidden;
}

.marketing-hero-image {
  object-fit: cover;
  object-position: center;
}

.marketing-hero-content {
  z-index: 1;
  align-items: center;
  min-height: 660px;
  display: flex;
  position: relative;
}

.marketing-hero-copy {
  width: min(560px, 52%);
  padding: 56px 0 72px;
}

.status-pill {
  color: #075ac8;
  letter-spacing: .02em;
  background: #ffffffd1;
  border: 1px solid #bfd8f8;
  border-radius: 999px;
  align-items: center;
  min-height: 32px;
  padding: 6px 12px;
  font-size: 13px;
  font-weight: 700;
  display: inline-flex;
}

.marketing-hero h1 {
  color: #08162e;
  letter-spacing: -.055em;
  margin: 24px 0 20px;
  font-size: clamp(50px, 5.6vw, 76px);
  font-weight: 800;
  line-height: 1.13;
}

.marketing-hero h1 em {
  color: var(--site-blue);
  font-style: normal;
}

.marketing-hero-copy > p {
  color: #42546d;
  max-width: 530px;
  margin: 0;
  font-size: 18px;
  line-height: 1.9;
}

.hero-actions {
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 32px;
  display: flex;
}

.hero-trust-note {
  color: #526580;
  align-items: center;
  gap: 8px;
  margin-top: 28px;
  font-size: 13px;
  display: flex;
}

.hero-trust-note .semi-icon {
  color: var(--site-blue);
}

.marketing-section {
  padding: 104px 0;
}

.marketing-section-heading {
  text-align: center;
  max-width: 780px;
  margin: 0 auto 52px;
}

.marketing-section-heading.align-left {
  text-align: left;
  margin-left: 0;
  margin-right: 0;
}

.marketing-section-heading > span, .mission-copy > span, .marketing-cta-inner > div > span {
  color: var(--site-blue-dark);
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 800;
}

.marketing-section-heading h2, .mission-copy h2, .marketing-cta-inner h2 {
  color: var(--site-ink);
  letter-spacing: -.035em;
  margin: 12px 0 16px;
  font-size: clamp(34px, 4vw, 48px);
  font-weight: 800;
  line-height: 1.24;
}

.marketing-section-heading p, .mission-copy p, .marketing-cta-inner p {
  color: var(--site-muted);
  margin: 0;
  font-size: 16px;
  line-height: 1.8;
}

.product-blueprint {
  background: #fff;
}

.module-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  display: grid;
}

.module-card {
  border: 1px solid var(--site-line);
  border-radius: 20px;
  flex-direction: column;
  min-height: 510px;
  transition: transform .18s, box-shadow .18s;
  display: flex;
  overflow: hidden;
}

.module-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 48px #1878f01f;
}

.module-blue {
  background: var(--site-soft-blue);
}

.module-mint {
  background: var(--site-soft-mint);
}

.module-violet {
  background: var(--site-soft-violet);
}

.module-orange {
  background: var(--site-soft-orange);
}

.module-visual {
  aspect-ratio: 1.2;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.module-visual img {
  object-fit: cover;
}

.module-copy {
  flex-direction: column;
  flex: 1;
  padding: 0 24px 26px;
  display: flex;
}

.module-copy > span {
  color: #64748b;
  letter-spacing: .08em;
  font-size: 12px;
  font-weight: 700;
}

.module-copy h3 {
  margin: 6px 0 10px;
  font-size: 28px;
  line-height: 1.3;
}

.module-blue h3 {
  color: var(--site-blue-dark);
}

.module-mint h3 {
  color: #0c826e;
}

.module-violet h3 {
  color: #6140d0;
}

.module-orange h3 {
  color: #d85d1e;
}

.module-copy p {
  color: #53637a;
  margin: 0;
  font-size: 14px;
  line-height: 1.75;
}

.module-copy strong {
  color: #193b68;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding-top: 18px;
  font-size: 14px;
  display: inline-flex;
}

.audience-section {
  background: #fff;
  padding-top: 24px;
}

.audience-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  display: grid;
}

.audience-panel {
  border: 1px solid var(--site-line);
  background: #eff7ff;
  border-radius: 22px;
  min-height: 490px;
  position: relative;
  overflow: hidden;
}

.audience-panel > img {
  object-fit: cover;
}

.audience-copy {
  z-index: 1;
  width: 56%;
  min-height: 490px;
  padding: 48px 18px 40px 40px;
  position: relative;
}

.teacher-panel .audience-copy {
  background: #f1f8ffe6;
}

.student-panel .audience-copy {
  background: #effbf8e6;
}

.audience-copy > span {
  color: var(--site-blue-dark);
  letter-spacing: .12em;
  font-size: 12px;
  font-weight: 800;
}

.student-panel .audience-copy > span {
  color: #0c826e;
}

.audience-copy h2 {
  color: var(--site-ink);
  margin: 10px 0 24px;
  font-size: 32px;
}

.audience-copy ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.audience-copy li {
  color: #40536d;
  align-items: flex-start;
  gap: 8px;
  margin: 13px 0;
  font-size: 14px;
  line-height: 1.55;
  display: flex;
}

.audience-copy li .semi-icon {
  color: var(--site-blue);
  flex: none;
  margin-top: 3px;
}

.student-panel .audience-copy li .semi-icon {
  color: var(--site-mint);
}

.audience-copy > a {
  color: var(--site-blue-dark);
  align-items: center;
  gap: 6px;
  margin-top: 22px;
  font-size: 14px;
  font-weight: 700;
  display: inline-flex;
}

.student-panel .audience-copy > a {
  color: #0c826e;
}

.teaching-loop-section {
  background: var(--site-soft-blue);
}

.teaching-loop {
  background: #d9e9fb;
  border: 1px solid #d9e9fb;
  border-radius: 18px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1px;
  display: grid;
  overflow: hidden;
}

.teaching-loop article {
  background: #fff;
  min-height: 244px;
  padding: 30px 24px;
}

.loop-icon {
  width: 52px;
  height: 52px;
  color: var(--site-blue);
  background: #edf6ff;
  border-radius: 14px;
  justify-content: center;
  align-items: center;
  font-size: 25px;
  display: flex;
}

.teaching-loop article > span {
  color: #8ba1bc;
  margin-top: 24px;
  font-size: 12px;
  font-weight: 700;
  display: block;
}

.teaching-loop h3 {
  color: var(--site-ink);
  margin: 6px 0 8px;
  font-size: 19px;
}

.teaching-loop p {
  color: #60728a;
  margin: 0;
  font-size: 13px;
  line-height: 1.65;
}

.roadmap-section {
  background: #fff;
}

.roadmap-list {
  border-top: 1px solid var(--site-line);
  max-width: 960px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

.roadmap-list li {
  border-bottom: 1px solid var(--site-line);
  grid-template-columns: 64px minmax(0, 1fr) auto;
  align-items: center;
  gap: 24px;
  padding: 26px 8px;
  display: grid;
}

.roadmap-list li.is-current {
  background: #f5f9ff;
}

.roadmap-index {
  color: var(--site-blue);
  text-align: center;
  font-size: 14px;
  font-weight: 800;
}

.roadmap-list strong {
  color: var(--site-ink);
  font-size: 18px;
}

.roadmap-list p {
  color: #63738a;
  margin: 5px 0 0;
  font-size: 14px;
}

.roadmap-status {
  color: #48627f;
  border: 1px solid #c9daf0;
  border-radius: 999px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 700;
}

.roadmap-list .is-current .roadmap-status {
  border-color: var(--site-blue);
  background: var(--site-blue);
  color: #fff;
}

.roadmap-note {
  color: #718096;
  text-align: center;
  margin: 24px auto 0;
  font-size: 13px;
}

.mission-section {
  background: #f6f9ff;
  min-height: 490px;
  position: relative;
  overflow: hidden;
}

.mission-section > img {
  object-fit: cover;
  object-position: center;
}

.mission-copy {
  z-index: 1;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  width: min(1200px, 100% - 48px);
  min-height: 490px;
  display: flex;
  position: relative;
}

.mission-copy h2, .mission-copy p {
  max-width: 560px;
}

.mission-copy .semi-button {
  margin-top: 28px;
}

.marketing-cta-section {
  background: #edf6ff;
  padding: 72px 0;
}

.marketing-cta-inner {
  justify-content: space-between;
  align-items: center;
  gap: 36px;
  display: flex;
}

.marketing-cta-inner h2 {
  margin-top: 8px;
  font-size: clamp(30px, 3.3vw, 42px);
}

.marketing-cta-inner > div:last-child {
  flex: none;
  gap: 12px;
  display: flex;
}

.site-footer {
  color: #fff;
  background: #0753b5;
}

.site-footer-inner {
  grid-template-columns: 1.5fr repeat(4, 1fr);
  gap: 52px;
  width: min(1200px, 100% - 48px);
  margin: 0 auto;
  padding: 68px 0 48px;
  display: grid;
}

.site-footer .brand-lockup-wordmark {
  height: 40px;
}

.site-footer-brand strong {
  margin-top: 24px;
  font-size: 15px;
  display: block;
}

.site-footer-brand p {
  color: #ffffffb8;
  max-width: 270px;
  margin: 12px 0 0;
  font-size: 13px;
  line-height: 1.75;
}

.site-footer-group {
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  display: flex;
}

.site-footer-group h2 {
  color: #fff;
  margin: 0 0 4px;
  font-size: 14px;
}

.site-footer-group a {
  color: #ffffffb8;
  font-size: 13px;
}

.site-footer-group a:hover {
  color: #fff;
}

.site-footer-legal {
  color: #ffffffa8;
  border-top: 1px solid #ffffff2e;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 24px;
  width: min(1200px, 100% - 48px);
  margin: 0 auto;
  padding: 22px 0 30px;
  font-size: 12px;
  display: flex;
}

.site-footer-legal a {
  align-items: center;
  gap: 6px;
  display: inline-flex;
}

.detail-page {
  --detail-accent: var(--site-blue);
  --detail-soft: var(--site-soft-blue);
}

.detail-page.accent-mint {
  --detail-accent: var(--site-mint);
  --detail-soft: var(--site-soft-mint);
}

.detail-page.accent-violet {
  --detail-accent: var(--site-violet);
  --detail-soft: var(--site-soft-violet);
}

.detail-page.accent-orange {
  --detail-accent: var(--site-orange);
  --detail-soft: var(--site-soft-orange);
}

.detail-hero {
  background: var(--detail-soft);
  padding: 70px 0 80px;
}

.detail-hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(380px, .78fr);
  align-items: center;
  gap: 72px;
  display: grid;
}

.detail-eyebrow {
  color: var(--detail-accent);
  letter-spacing: .14em;
  margin-top: 30px;
  font-size: 12px;
  font-weight: 800;
  display: block;
}

.detail-hero h1 {
  max-width: 700px;
  color: var(--site-ink);
  letter-spacing: -.045em;
  margin: 12px 0 20px;
  font-size: clamp(42px, 5.2vw, 66px);
  font-weight: 800;
  line-height: 1.18;
}

.detail-hero p {
  max-width: 650px;
  color: var(--site-muted);
  margin: 0;
  font-size: 17px;
  line-height: 1.85;
}

.detail-actions {
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
  display: flex;
}

.site-primary-link, .site-secondary-link {
  border-radius: 10px;
  justify-content: center;
  align-items: center;
  gap: 6px;
  min-height: 46px;
  padding: 0 22px;
  font-size: 14px;
  font-weight: 700;
  display: inline-flex;
}

.site-primary-link {
  background: var(--site-blue-dark);
  color: #fff !important;
}

.site-primary-link:hover {
  background: #064da9;
}

.site-secondary-link {
  background: #ffffffb8;
  border: 1px solid #b9cbe2;
  color: var(--site-blue-dark) !important;
}

.detail-hero-image {
  aspect-ratio: 1;
  background: #fff;
  border: 1px solid #ffffffc7;
  border-radius: 26px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 24px 64px #1267d621;
}

.detail-hero-image img {
  object-fit: cover;
}

.detail-content {
  background: #fff;
}

.detail-section-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  display: grid;
}

.detail-section-grid article {
  border: 1px solid var(--site-line);
  background: #fff;
  border-radius: 18px;
  padding: 32px;
}

.detail-section-grid article > span {
  color: var(--detail-accent);
  font-size: 13px;
  font-weight: 800;
}

.detail-section-grid h2 {
  color: var(--site-ink);
  margin: 12px 0 10px;
  font-size: 25px;
}

.detail-section-grid article > p {
  min-height: 52px;
  color: var(--site-muted);
  margin: 0;
  font-size: 14px;
  line-height: 1.75;
}

.detail-section-grid ul {
  border-top: 1px solid var(--site-line);
  gap: 12px;
  margin: 26px 0 0;
  padding: 20px 0 0;
  list-style: none;
  display: grid;
}

.detail-section-grid li {
  color: #40536d;
  align-items: flex-start;
  gap: 8px;
  font-size: 14px;
  line-height: 1.55;
  display: flex;
}

.detail-section-grid li .semi-icon {
  color: var(--detail-accent);
  flex: none;
  margin-top: 3px;
}

.detail-trust-section {
  color: #fff;
  text-align: center;
  background: #0a2d62;
  padding: 84px 0;
}

.detail-trust-section strong {
  color: #8fc8ff;
  letter-spacing: .12em;
  font-size: 12px;
}

.detail-trust-section h2 {
  color: #fff;
  max-width: 760px;
  margin: 14px auto 16px;
  font-size: clamp(30px, 3.6vw, 44px);
  line-height: 1.32;
}

.detail-trust-section p {
  color: #ffffffb8;
  max-width: 690px;
  margin: 0 auto;
  font-size: 15px;
  line-height: 1.8;
}

.detail-trust-section a {
  color: #fff;
  align-items: center;
  gap: 7px;
  margin-top: 24px;
  font-size: 14px;
  font-weight: 700;
  display: inline-flex;
}

.overview-hero {
  text-align: center;
  background: #f2f8ff;
  padding: 94px 0 102px;
}

.overview-hero .marketing-container > span:not(.status-pill) {
  color: var(--site-blue-dark);
  letter-spacing: .14em;
  margin-top: 24px;
  font-size: 12px;
  font-weight: 800;
  display: block;
}

.overview-hero h1 {
  max-width: 850px;
  color: var(--site-ink);
  letter-spacing: -.045em;
  margin: 14px auto 18px;
  font-size: clamp(44px, 5.6vw, 68px);
  font-weight: 800;
  line-height: 1.18;
}

.overview-hero p {
  max-width: 720px;
  color: var(--site-muted);
  margin: 0 auto;
  font-size: 17px;
  line-height: 1.85;
}

.overview-list {
  gap: 76px;
  display: grid;
}

.overview-item {
  --overview-accent: var(--site-blue);
  --overview-soft: var(--site-soft-blue);
  grid-template-columns: minmax(360px, .88fr) minmax(0, 1fr);
  align-items: center;
  gap: 72px;
  display: grid;
}

.overview-item.accent-mint {
  --overview-accent: var(--site-mint);
  --overview-soft: var(--site-soft-mint);
}

.overview-item.accent-violet {
  --overview-accent: var(--site-violet);
  --overview-soft: var(--site-soft-violet);
}

.overview-item.accent-orange {
  --overview-accent: var(--site-orange);
  --overview-soft: var(--site-soft-orange);
}

.overview-item:nth-child(2n) .overview-item-image {
  order: 2;
}

.overview-item-image {
  aspect-ratio: 1.1;
  border: 1px solid var(--site-line);
  background: var(--overview-soft);
  border-radius: 24px;
  position: relative;
  overflow: hidden;
}

.overview-item-image img {
  object-fit: cover;
}

.overview-item-copy > span {
  color: var(--overview-accent);
  letter-spacing: .12em;
  font-size: 12px;
  font-weight: 800;
}

.overview-item-copy h2 {
  color: var(--site-ink);
  margin: 14px 0 18px;
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.25;
}

.overview-item-copy p {
  color: var(--site-muted);
  margin: 0;
  font-size: 16px;
  line-height: 1.85;
}

.overview-item-copy a {
  color: var(--site-blue-dark);
  align-items: center;
  gap: 7px;
  margin-top: 26px;
  font-size: 14px;
  font-weight: 700;
  display: inline-flex;
}

.company-hero {
  background: #f2f8ff;
  padding: 78px 0;
}

.company-hero-grid, .company-path-grid, .contact-grid {
  grid-template-columns: minmax(0, 1fr) minmax(400px, .92fr);
  align-items: center;
  gap: 72px;
  display: grid;
}

.company-hero-grid > div:first-child > span, .company-path-grid > div:first-child > span, .contact-copy > span, .pricing-message > span {
  color: var(--site-blue-dark);
  letter-spacing: .13em;
  font-size: 12px;
  font-weight: 800;
}

.company-hero h1, .contact-copy h1 {
  color: var(--site-ink);
  letter-spacing: -.045em;
  margin: 16px 0 22px;
  font-size: clamp(44px, 5.6vw, 66px);
  font-weight: 800;
  line-height: 1.18;
}

.company-hero p, .contact-copy > p {
  color: var(--site-muted);
  margin: 0;
  font-size: 17px;
  line-height: 1.85;
}

.company-hero-image, .company-path-image {
  aspect-ratio: 1.32;
  background: #fff;
  border-radius: 24px;
  position: relative;
  overflow: hidden;
}

.company-hero-image img, .company-path-image img {
  object-fit: cover;
}

.company-mission-statement {
  text-align: center;
  background: #fff;
}

.company-mission-statement span {
  color: var(--site-blue-dark);
  letter-spacing: .14em;
  font-size: 12px;
  font-weight: 800;
}

.company-mission-statement blockquote {
  max-width: 980px;
  color: var(--site-ink);
  letter-spacing: -.025em;
  margin: 26px auto 0;
  font-size: clamp(27px, 3.5vw, 42px);
  font-weight: 700;
  line-height: 1.65;
}

.company-principles {
  background: #f7faff;
}

.principle-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  display: grid;
}

.principle-grid article {
  border: 1px solid var(--site-line);
  background: #fff;
  border-radius: 18px;
  min-height: 250px;
  padding: 30px;
}

.principle-grid span {
  color: var(--site-blue);
  font-size: 13px;
  font-weight: 800;
}

.principle-grid h2 {
  color: var(--site-ink);
  margin: 22px 0 12px;
  font-size: 21px;
}

.principle-grid p {
  color: var(--site-muted);
  margin: 0;
  font-size: 14px;
  line-height: 1.75;
}

.company-path {
  background: #fff;
}

.company-path-grid > div:first-child h2, .pricing-message h2 {
  color: var(--site-ink);
  margin: 14px 0 18px;
  font-size: clamp(34px, 4.2vw, 50px);
  line-height: 1.25;
}

.company-path-grid > div:first-child > p {
  color: var(--site-muted);
  font-size: 15px;
  line-height: 1.85;
}

.company-path ul {
  gap: 12px;
  margin: 24px 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.company-path li {
  color: #3f526b;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  display: flex;
}

.company-path li .semi-icon {
  color: var(--site-blue);
}

.company-path a {
  color: var(--site-blue-dark);
  align-items: center;
  gap: 7px;
  font-weight: 700;
  display: inline-flex;
}

.pricing-principles {
  background: #fff;
}

.pricing-message {
  max-width: 820px;
  margin: 0 auto;
}

.pricing-message ul {
  border: 1px solid var(--site-line);
  background: var(--site-line);
  border-radius: 18px;
  gap: 1px;
  margin: 38px 0;
  padding: 0;
  list-style: none;
  display: grid;
  overflow: hidden;
}

.pricing-message li {
  background: #fff;
  gap: 18px;
  padding: 24px 28px;
  display: flex;
}

.pricing-message li .semi-icon {
  color: var(--site-blue);
  flex: none;
  margin-top: 4px;
  font-size: 20px;
}

.pricing-message strong {
  color: var(--site-ink);
  font-size: 17px;
}

.pricing-message li p {
  color: var(--site-muted);
  margin: 6px 0 0;
  font-size: 14px;
  line-height: 1.7;
}

.pricing-message > a {
  color: var(--site-blue-dark);
  align-items: center;
  gap: 7px;
  font-weight: 700;
  display: inline-flex;
}

.article-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  display: grid;
}

.article-grid article {
  min-width: 0;
}

.article-image {
  aspect-ratio: 1.45;
  background: #eef5ff;
  border-radius: 18px;
  display: block;
  position: relative;
  overflow: hidden;
}

.article-image img {
  object-fit: cover;
  transition: transform .22s;
}

.article-image:hover img {
  transform: scale(1.025);
}

.article-grid article > span {
  color: var(--site-blue-dark);
  margin-top: 22px;
  font-size: 12px;
  font-weight: 800;
  display: block;
}

.article-grid h2 {
  color: var(--site-ink);
  margin: 9px 0 11px;
  font-size: 22px;
  line-height: 1.45;
}

.article-grid p {
  color: var(--site-muted);
  margin: 0;
  font-size: 14px;
  line-height: 1.75;
}

.article-link {
  align-items: center;
  gap: 6px;
  margin-top: 18px;
  font-size: 14px;
  font-weight: 700;
  display: inline-flex;
  color: var(--site-blue-dark) !important;
}

.article-page, .legal-page {
  background: #f8fbff;
  padding: 88px 0 120px;
}

.article-body, .legal-document {
  max-width: 860px;
}

.article-body header, .legal-document header {
  border-bottom: 1px solid var(--site-line);
  padding-bottom: 38px;
}

.article-body header > span, .legal-document header > span {
  color: var(--site-blue-dark);
  letter-spacing: .09em;
  font-size: 12px;
  font-weight: 800;
}

.article-body h1, .legal-document h1 {
  color: var(--site-ink);
  letter-spacing: -.04em;
  margin: 16px 0 18px;
  font-size: clamp(38px, 5vw, 58px);
  line-height: 1.22;
}

.article-body header p, .legal-document header p {
  color: var(--site-muted);
  margin: 0;
  font-size: 17px;
  line-height: 1.8;
}

.legal-document header time {
  color: #78889c;
  margin-top: 18px;
  font-size: 13px;
  display: block;
}

.article-notice, .legal-notice {
  border-left: 3px solid var(--site-yellow);
  color: #6c5824;
  background: #fff9e9;
  margin: 34px 0;
  padding: 18px 20px;
  font-size: 13px;
  line-height: 1.7;
}

.article-body > h2 {
  color: var(--site-ink);
  margin: 48px 0 14px;
  font-size: 27px;
}

.article-body > p {
  color: #40536d;
  margin: 0;
  font-size: 16px;
  line-height: 2;
}

.legal-document > section {
  border-bottom: 1px solid var(--site-line);
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 20px;
  padding: 36px 0;
  display: grid;
}

.legal-document > section > span {
  color: var(--site-blue);
  font-size: 13px;
  font-weight: 800;
}

.legal-document h2 {
  color: var(--site-ink);
  margin: 0 0 16px;
  font-size: 25px;
}

.legal-document section p {
  color: #40536d;
  margin: 12px 0 0;
  font-size: 15px;
  line-height: 1.95;
}

.contact-section {
  background: #f2f8ff;
  padding: 96px 0 112px;
}

.contact-grid {
  align-items: start;
}

.contact-boundary {
  background: #ffffffb8;
  border: 1px solid #cfe0f4;
  border-radius: 14px;
  margin-top: 32px;
  padding: 22px;
}

.contact-boundary strong {
  color: var(--site-ink);
  font-size: 14px;
}

.contact-boundary p {
  color: var(--site-muted);
  margin: 8px 0 0;
  font-size: 13px;
  line-height: 1.75;
}

.contact-form {
  border: 1px solid var(--site-line);
  background: #fff;
  border-radius: 20px;
  gap: 10px;
  padding: 34px;
  display: grid;
  box-shadow: 0 20px 50px #1267d617;
}

.contact-form label {
  color: #2b3f5a;
  margin-top: 8px;
  font-size: 13px;
  font-weight: 700;
}

.contact-form .semi-select {
  width: 100%;
}

.contact-form > .semi-button {
  width: 100%;
  margin-top: 16px;
}

.contact-form > p {
  color: #7b899a;
  text-align: center;
  margin: 4px 0 0;
  font-size: 12px;
  line-height: 1.6;
}

.contact-success {
  border: 1px solid var(--site-line);
  background: #fff;
  border-radius: 20px;
  gap: 18px;
  padding: 34px;
  display: grid;
}

.contact-success .semi-button {
  justify-self: start;
}

.contact-form h2 {
  color: var(--site-ink);
  margin: 20px 0 4px;
  font-size: 20px;
}

.contact-form ul {
  color: #40536d;
  gap: 10px;
  margin: 8px 0;
  padding-left: 20px;
  font-size: 14px;
  line-height: 1.65;
  display: grid;
}

.contact-form a {
  color: var(--site-blue-dark);
  margin: 0 4px;
  font-weight: 700;
}

.marketing-not-found {
  text-align: center;
  background: #f2f8ff;
  place-items: center;
  min-height: 620px;
  padding: 64px 24px;
  display: grid;
}

.marketing-not-found > div {
  max-width: 560px;
}

.marketing-not-found span {
  color: var(--site-blue);
  letter-spacing: .16em;
  font-size: 14px;
  font-weight: 800;
}

.marketing-not-found h1 {
  color: var(--site-ink);
  margin: 16px 0 12px;
  font-size: 42px;
}

.marketing-not-found p {
  color: var(--site-muted);
  margin: 0 0 26px;
  font-size: 16px;
}

@media (max-width: 1080px) {
  .site-navigation {
    gap: 22px;
  }

  .site-header-actions {
    gap: 14px;
  }

  .module-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .module-card {
    min-height: 500px;
  }

  .teaching-loop {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .site-footer-inner {
    grid-template-columns: 1.5fr repeat(2, 1fr);
  }

  .principle-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  .marketing-container, .site-header-inner, .site-footer-inner, .site-footer-legal, .mission-copy {
    width: min(100% - 32px, 720px);
  }

  .site-header {
    height: 66px;
  }

  .site-header .brand-lockup-wordmark {
    height: 34px;
  }

  .site-navigation, .site-header-actions {
    display: none;
  }

  .site-header-inner {
    justify-content: space-between;
  }

  .mobile-menu-button {
    display: inline-flex !important;
  }

  .marketing-hero, .marketing-hero-content {
    min-height: 760px;
  }

  .marketing-hero-image {
    object-position: 66% bottom;
    opacity: .5;
  }

  .marketing-hero {
    background-blend-mode: screen;
    background-color: #dcecff;
    background-position: 66% bottom;
  }

  .marketing-hero-copy {
    align-self: flex-start;
    width: 100%;
    padding-top: 72px;
  }

  .marketing-hero h1 {
    max-width: 680px;
  }

  .marketing-hero-copy > p {
    max-width: 590px;
  }

  .audience-grid {
    grid-template-columns: 1fr;
  }

  .audience-panel {
    min-height: 480px;
  }

  .audience-copy {
    width: 58%;
  }

  .teaching-loop {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .marketing-cta-inner {
    flex-direction: column;
    align-items: flex-start;
  }

  .site-footer-inner {
    grid-template-columns: repeat(2, 1fr);
  }

  .site-footer-brand {
    grid-column: 1 / -1;
  }

  .detail-hero-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .detail-hero-image {
    width: min(520px, 100%);
  }

  .detail-section-grid {
    grid-template-columns: 1fr;
  }

  .overview-item {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .overview-item:nth-child(2n) .overview-item-image {
    order: 0;
  }

  .overview-item-image {
    width: min(560px, 100%);
  }

  .company-hero-grid, .company-path-grid, .contact-grid {
    grid-template-columns: 1fr;
    gap: 44px;
  }

  .article-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}

@media (max-width: 600px) {
  .marketing-section {
    padding: 76px 0;
  }

  .marketing-section-heading {
    text-align: left;
    margin-bottom: 36px;
  }

  .marketing-section-heading h2 {
    font-size: 32px;
  }

  .marketing-hero, .marketing-hero-content {
    min-height: 720px;
  }

  .marketing-hero-image {
    object-position: 70% bottom;
    opacity: .34;
  }

  .marketing-hero {
    background-blend-mode: screen;
    background-color: #cfe5ff;
    background-position: 70% bottom;
  }

  .marketing-hero-copy {
    padding-top: 52px;
  }

  .marketing-hero h1 {
    margin-top: 20px;
    font-size: 44px;
  }

  .marketing-hero-copy > p {
    font-size: 16px;
  }

  .hero-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .hero-actions a, .hero-actions .semi-button {
    width: 100%;
  }

  .module-grid {
    grid-template-columns: 1fr;
  }

  .module-card {
    min-height: auto;
  }

  .module-visual {
    aspect-ratio: 1.55;
  }

  .module-copy {
    min-height: 250px;
  }

  .audience-panel {
    min-height: 640px;
  }

  .audience-panel > img {
    object-position: 64% bottom;
  }

  .audience-copy {
    width: 100%;
    min-height: auto;
    padding: 28px 24px 30px;
  }

  .teacher-panel .audience-copy, .student-panel .audience-copy {
    background: #fffffff0;
  }

  .teaching-loop {
    grid-template-columns: 1fr;
  }

  .teaching-loop article {
    min-height: auto;
  }

  .roadmap-list li {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 14px;
  }

  .roadmap-status {
    grid-column: 2;
    justify-self: start;
  }

  .mission-section, .mission-copy {
    min-height: 560px;
  }

  .mission-section > img {
    object-position: 66% center;
    opacity: .38;
  }

  .marketing-cta-inner > div:last-child {
    flex-direction: column;
    width: 100%;
  }

  .marketing-cta-inner a, .marketing-cta-inner .semi-button {
    width: 100%;
  }

  .site-footer-inner {
    grid-template-columns: 1fr 1fr;
    gap: 38px 24px;
  }

  .site-footer-legal {
    flex-direction: column;
    align-items: flex-start;
  }

  .detail-hero {
    padding: 48px 0 64px;
  }

  .detail-hero h1 {
    font-size: 40px;
  }

  .detail-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .site-primary-link, .site-secondary-link {
    width: 100%;
  }

  .detail-section-grid article {
    padding: 26px 22px;
  }

  .overview-hero {
    text-align: left;
    padding: 68px 0 76px;
  }

  .overview-hero h1 {
    font-size: 40px;
  }

  .overview-list {
    gap: 60px;
  }

  .company-hero {
    padding: 64px 0;
  }

  .company-hero h1, .contact-copy h1 {
    font-size: 40px;
  }

  .company-mission-statement {
    text-align: left;
  }

  .company-mission-statement blockquote {
    font-size: 28px;
  }

  .principle-grid {
    grid-template-columns: 1fr;
  }

  .principle-grid article {
    min-height: auto;
  }

  .article-page, .legal-page {
    padding: 64px 0 84px;
  }

  .legal-document > section {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .contact-section {
    padding: 64px 0 80px;
  }

  .contact-form {
    padding: 24px 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .module-card {
    transition: none;
  }
}

/* [project]/node_modules/.pnpm/@douyinfe+semi-ui@2.101.0_@floating-ui+dom@1.7.6_@tiptap+suggestion@3.27.3_@floating-ui_cd5117f27f3c38d22ad81dd9e9454680/node_modules/@douyinfe/semi-ui/lib/es/_base/base.css [app-client] (css) */
body, :host {
  --semi-transition_duration-slowest: 0s;
  --semi-transition_duration-slower: 0s;
  --semi-transition_duration-slow: 0s;
  --semi-transition_duration-normal: 0s;
  --semi-transition_duration-fast: 0s;
  --semi-transition_duration-faster: 0s;
  --semi-transition_duration-fastest: 0s;
  --semi-transition_duration-none: 0s;
  --semi-transition_function-linear: linear;
  --semi-transition_function-ease: ease;
  --semi-transition_function-easeIn: ease-in;
  --semi-transition_function-easeOut: ease-out;
  --semi-transition_function-easeInIOut: ease-in-out;
  --semi-transition_delay-none: 0s;
  --semi-transition_delay-slowest: 0s;
  --semi-transition_delay-slower: 0s;
  --semi-transition_delay-slow: 0s;
  --semi-transition_delay-normal: 0s;
  --semi-transition_delay-fast: 0s;
  --semi-transition_delay-faster: 0s;
  --semi-transition_delay-fastest: 0s;
  --semi-transform_scale-none: scale(1,1);
  --semi-transform_scale-small: scale(1,1);
  --semi-transform_scale-medium: scale(1,1);
  --semi-transform_scale-large: scale(1,1);
  --semi-transform-rotate-none: rotate(0deg);
  --semi-transform_rotate-clockwise90deg: rotate(90deg);
  --semi-transform_rotate-clockwise180deg: rotate(180deg);
  --semi-transform_rotate-clockwise270deg: rotate(270deg);
  --semi-transform_rotate-clockwise360deg: rotate(360deg);
  --semi-transform_rotate-anticlockwise90deg: rotate(-90deg);
  --semi-transform_rotate-anticlockwise180deg: rotate(-180deg);
  --semi-transform_rotate-anticlockwise270deg: rotate(-270deg);
  --semi-transform_rotate-anticlockwise360deg: rotate(-360deg);
}

body, body .semi-always-light, :host, :host .semi-always-light {
  --semi-amber-0: 254,251,235;
  --semi-amber-1: 252,245,206;
  --semi-amber-2: 249,232,158;
  --semi-amber-3: 246,216,111;
  --semi-amber-4: 243,198,65;
  --semi-amber-5: 240,177,20;
  --semi-amber-6: 200,138,15;
  --semi-amber-7: 160,102,10;
  --semi-amber-8: 120,70,6;
  --semi-amber-9: 80,43,3;
  --semi-black: 0,0,0;
  --semi-blue-0: 234,245,255;
  --semi-blue-1: 203,231,254;
  --semi-blue-2: 152,205,253;
  --semi-blue-3: 101,178,252;
  --semi-blue-4: 50,149,251;
  --semi-blue-5: 0,100,250;
  --semi-blue-6: 0,98,214;
  --semi-blue-7: 0,79,179;
  --semi-blue-8: 0,61,143;
  --semi-blue-9: 0,44,107;
  --semi-cyan-0: 229,247,248;
  --semi-cyan-1: 194,239,240;
  --semi-cyan-2: 138,221,226;
  --semi-cyan-3: 88,203,211;
  --semi-cyan-4: 44,184,197;
  --semi-cyan-5: 5,164,182;
  --semi-cyan-6: 3,134,152;
  --semi-cyan-7: 1,105,121;
  --semi-cyan-8: 0,77,91;
  --semi-cyan-9: 0,50,61;
  --semi-green-0: 236,247,236;
  --semi-green-1: 208,240,209;
  --semi-green-2: 164,224,167;
  --semi-green-3: 125,209,130;
  --semi-green-4: 90,194,98;
  --semi-green-5: 59,179,70;
  --semi-green-6: 48,149,59;
  --semi-green-7: 37,119,47;
  --semi-green-8: 27,89,36;
  --semi-green-9: 17,60,24;
  --semi-grey-0: 249,249,249;
  --semi-grey-1: 230,232,234;
  --semi-grey-2: 198,202,205;
  --semi-grey-3: 167,171,176;
  --semi-grey-4: 136,141,146;
  --semi-grey-5: 107,112,117;
  --semi-grey-6: 85,91,97;
  --semi-grey-7: 65,70,76;
  --semi-grey-8: 46,50,56;
  --semi-grey-9: 28,31,35;
  --semi-indigo-0: 236,239,248;
  --semi-indigo-1: 209,216,240;
  --semi-indigo-2: 167,179,225;
  --semi-indigo-3: 128,144,211;
  --semi-indigo-4: 94,111,196;
  --semi-indigo-5: 63,81,181;
  --semi-indigo-6: 51,66,161;
  --semi-indigo-7: 40,52,140;
  --semi-indigo-8: 31,40,120;
  --semi-indigo-9: 23,29,99;
  --semi-light-blue-0: 233,247,253;
  --semi-light-blue-1: 201,236,252;
  --semi-light-blue-2: 149,216,248;
  --semi-light-blue-3: 98,195,245;
  --semi-light-blue-4: 48,172,241;
  --semi-light-blue-5: 0,149,238;
  --semi-light-blue-6: 0,123,202;
  --semi-light-blue-7: 0,99,167;
  --semi-light-blue-8: 0,75,131;
  --semi-light-blue-9: 0,53,95;
  --semi-light-green-0: 243,248,236;
  --semi-light-green-1: 227,240,208;
  --semi-light-green-2: 200,226,165;
  --semi-light-green-3: 173,211,126;
  --semi-light-green-4: 147,197,91;
  --semi-light-green-5: 123,182,60;
  --semi-light-green-6: 100,152,48;
  --semi-light-green-7: 78,121,38;
  --semi-light-green-8: 57,91,27;
  --semi-light-green-9: 37,61,18;
  --semi-lime-0: 242,250,230;
  --semi-lime-1: 227,246,197;
  --semi-lime-2: 203,237,142;
  --semi-lime-3: 183,227,91;
  --semi-lime-4: 167,218,44;
  --semi-lime-5: 155,209,0;
  --semi-lime-6: 126,174,0;
  --semi-lime-7: 99,139,0;
  --semi-lime-8: 72,104,0;
  --semi-lime-9: 47,70,0;
  --semi-orange-0: 255,248,234;
  --semi-orange-1: 254,238,204;
  --semi-orange-2: 254,217,152;
  --semi-orange-3: 253,193,101;
  --semi-orange-4: 253,166,51;
  --semi-orange-5: 252,136,0;
  --semi-orange-6: 210,103,0;
  --semi-orange-7: 168,74,0;
  --semi-orange-8: 126,49,0;
  --semi-orange-9: 84,29,0;
  --semi-pink-0: 253,236,239;
  --semi-pink-1: 251,207,216;
  --semi-pink-2: 246,160,181;
  --semi-pink-3: 242,115,150;
  --semi-pink-4: 237,72,123;
  --semi-pink-5: 233,30,99;
  --semi-pink-6: 197,19,86;
  --semi-pink-7: 162,11,72;
  --semi-pink-8: 126,5,58;
  --semi-pink-9: 90,1,43;
  --semi-purple-0: 247,233,247;
  --semi-purple-1: 239,202,240;
  --semi-purple-2: 221,155,224;
  --semi-purple-3: 201,111,209;
  --semi-purple-4: 180,73,194;
  --semi-purple-5: 158,40,179;
  --semi-purple-6: 135,30,158;
  --semi-purple-7: 113,22,138;
  --semi-purple-8: 92,15,117;
  --semi-purple-9: 73,10,97;
  --semi-red-0: 254,242,237;
  --semi-red-1: 254,221,210;
  --semi-red-2: 253,183,165;
  --semi-red-3: 251,144,120;
  --semi-red-4: 250,102,76;
  --semi-red-5: 249,57,32;
  --semi-red-6: 213,37,21;
  --semi-red-7: 178,20,12;
  --semi-red-8: 142,8,5;
  --semi-red-9: 106,1,3;
  --semi-teal-0: 228,247,244;
  --semi-teal-1: 192,240,232;
  --semi-teal-2: 135,224,211;
  --semi-teal-3: 84,209,193;
  --semi-teal-4: 39,194,176;
  --semi-teal-5: 0,179,161;
  --semi-teal-6: 0,149,137;
  --semi-teal-7: 0,119,111;
  --semi-teal-8: 0,89,85;
  --semi-teal-9: 0,60,58;
  --semi-violet-0: 243,237,249;
  --semi-violet-1: 226,209,244;
  --semi-violet-2: 196,167,233;
  --semi-violet-3: 166,127,221;
  --semi-violet-4: 136,91,210;
  --semi-violet-5: 106,58,199;
  --semi-violet-6: 87,47,179;
  --semi-violet-7: 70,37,158;
  --semi-violet-8: 54,28,138;
  --semi-violet-9: 40,20,117;
  --semi-white: 255,255,255;
  --semi-yellow-0: 255,253,234;
  --semi-yellow-1: 254,251,203;
  --semi-yellow-2: 253,243,152;
  --semi-yellow-3: 252,232,101;
  --semi-yellow-4: 251,218,50;
  --semi-yellow-5: 250,200,0;
  --semi-yellow-6: 208,170,0;
  --semi-yellow-7: 167,139,0;
  --semi-yellow-8: 125,106,0;
  --semi-yellow-9: 83,72,0;
  --semi-ai-purple-0: 248,237,255;
  --semi-ai-purple-1: 242,218,255;
  --semi-ai-purple-2: 227,181,255;
  --semi-ai-purple-3: 209,145,255;
  --semi-ai-purple-4: 189,108,255;
  --semi-ai-purple-5: 166,71,255;
  --semi-ai-purple-6: 134,54,219;
  --semi-ai-purple-7: 105,40,184;
  --semi-ai-purple-8: 78,28,148;
  --semi-ai-purple-9: 54,18,112;
  --semi-ai-general-0-3: 239,247,255;
  --semi-ai-general-0-2: 244,244,255;
  --semi-ai-general-0-1: 248,237,255;
  --semi-ai-general-0-0: 255,242,255;
  --semi-ai-general-1-3: 213,235,255;
  --semi-ai-general-1-2: 223,224,255;
  --semi-ai-general-1-1: 242,218,255;
  --semi-ai-general-1-0: 255,218,254;
  --semi-ai-general-2-3: 171,213,255;
  --semi-ai-general-2-2: 193,192,255;
  --semi-ai-general-2-1: 227,181,255;
  --semi-ai-general-2-0: 254,181,255;
  --semi-ai-general-3-3: 130,190,255;
  --semi-ai-general-3-2: 163,160,255;
  --semi-ai-general-3-1: 209,145,255;
  --semi-ai-general-3-0: 249,143,255;
  --semi-ai-general-4-3: 88,166,255;
  --semi-ai-general-4-2: 134,129,255;
  --semi-ai-general-4-1: 189,108,255;
  --semi-ai-general-4-0: 242,106,255;
  --semi-ai-general-5-3: 46,140,255;
  --semi-ai-general-5-2: 107,97,255;
  --semi-ai-general-5-1: 166,71,255;
  --semi-ai-general-5-0: 233,69,255;
  --semi-ai-general-6-3: 33,114,219;
  --semi-ai-general-6-2: 88,77,219;
  --semi-ai-general-6-1: 134,54,219;
  --semi-ai-general-6-0: 194,53,219;
  --semi-ai-general-7-3: 22,89,184;
  --semi-ai-general-7-2: 71,59,184;
  --semi-ai-general-7-1: 105,40,184;
  --semi-ai-general-7-0: 157,39,184;
  --semi-ai-general-8-3: 13,67,148;
  --semi-ai-general-8-2: 55,43,148;
  --semi-ai-general-8-1: 78,28,148;
  --semi-ai-general-8-0: 121,27,148;
  --semi-ai-general-9-3: 7,47,112;
  --semi-ai-general-9-2: 40,29,112;
  --semi-ai-general-9-1: 54,18,112;
  --semi-ai-general-9-0: 88,17,112;
  --semi-ai-general-0: linear-gradient(278deg, rgba(var(--semi-ai-general-0-0)) 0%, rgba(var(--semi-ai-general-0-1)) 30%, rgba(var(--semi-ai-general-0-2)) 60%, rgba(var(--semi-ai-general-0-3)) 100%);
  --semi-ai-general-1: linear-gradient(278deg, rgba(var(--semi-ai-general-1-0)) 0%, rgba(var(--semi-ai-general-1-1)) 30%, rgba(var(--semi-ai-general-1-2)) 60%, rgba(var(--semi-ai-general-1-3)) 100%);
  --semi-ai-general-2: linear-gradient(278deg, rgba(var(--semi-ai-general-2-0)) 0%, rgba(var(--semi-ai-general-2-1)) 30%, rgba(var(--semi-ai-general-2-2)) 60%, rgba(var(--semi-ai-general-2-3)) 100%);
  --semi-ai-general-3: linear-gradient(278deg, rgba(var(--semi-ai-general-3-0)) 0%, rgba(var(--semi-ai-general-3-1)) 30%, rgba(var(--semi-ai-general-3-2)) 60%, rgba(var(--semi-ai-general-3-3)) 100%);
  --semi-ai-general-4: linear-gradient(278deg, rgba(var(--semi-ai-general-4-0)) 0%, rgba(var(--semi-ai-general-4-1)) 30%, rgba(var(--semi-ai-general-4-2)) 60%, rgba(var(--semi-ai-general-4-3)) 100%);
  --semi-ai-general-5: linear-gradient(278deg, rgba(var(--semi-ai-general-5-0)) 0%, rgba(var(--semi-ai-general-5-1)) 30%, rgba(var(--semi-ai-general-5-2)) 60%, rgba(var(--semi-ai-general-5-3)) 100%);
  --semi-ai-general-6: linear-gradient(278deg, rgba(var(--semi-ai-general-6-0)) 0%, rgba(var(--semi-ai-general-6-1)) 30%, rgba(var(--semi-ai-general-6-2)) 60%, rgba(var(--semi-ai-general-6-3)) 100%);
  --semi-ai-general-7: linear-gradient(278deg, rgba(var(--semi-ai-general-7-0)) 0%, rgba(var(--semi-ai-general-7-1)) 30%, rgba(var(--semi-ai-general-7-2)) 60%, rgba(var(--semi-ai-general-7-3)) 100%);
  --semi-ai-general-8: linear-gradient(278deg, rgba(var(--semi-ai-general-8-0)) 0%, rgba(var(--semi-ai-general-8-1)) 30%, rgba(var(--semi-ai-general-8-2)) 60%, rgba(var(--semi-ai-general-8-3)) 100%);
  --semi-ai-general-9: linear-gradient(278deg, rgba(var(--semi-ai-general-9-0)) 0%, rgba(var(--semi-ai-general-9-1)) 30%, rgba(var(--semi-ai-general-9-2)) 60%, rgba(var(--semi-ai-general-9-3)) 100%);
}

body[theme-mode="dark"], body .semi-always-dark, :host([theme-mode="dark"]), :host .semi-always-dark {
  --semi-red-0: 108,9,11;
  --semi-red-1: 144,17,16;
  --semi-red-2: 180,32,25;
  --semi-red-3: 215,51,36;
  --semi-red-4: 251,73,50;
  --semi-red-5: 252,114,90;
  --semi-red-6: 253,153,131;
  --semi-red-7: 253,190,172;
  --semi-red-8: 254,224,213;
  --semi-red-9: 255,243,239;
  --semi-pink-0: 92,7,48;
  --semi-pink-1: 128,14,65;
  --semi-pink-2: 164,23,81;
  --semi-pink-3: 199,34,97;
  --semi-pink-4: 235,47,113;
  --semi-pink-5: 239,86,134;
  --semi-pink-6: 243,126,159;
  --semi-pink-7: 247,168,188;
  --semi-pink-8: 251,211,220;
  --semi-pink-9: 253,238,241;
  --semi-purple-0: 74,16,97;
  --semi-purple-1: 94,23,118;
  --semi-purple-2: 115,31,138;
  --semi-purple-3: 137,40,159;
  --semi-purple-4: 160,51,179;
  --semi-purple-5: 181,83,194;
  --semi-purple-6: 202,120,209;
  --semi-purple-7: 221,160,225;
  --semi-purple-8: 239,206,240;
  --semi-purple-9: 247,235,247;
  --semi-violet-0: 64,27,119;
  --semi-violet-1: 76,36,140;
  --semi-violet-2: 88,46,160;
  --semi-violet-3: 100,57,181;
  --semi-violet-4: 114,70,201;
  --semi-violet-5: 136,101,212;
  --semi-violet-6: 162,136,223;
  --semi-violet-7: 190,173,233;
  --semi-violet-8: 221,212,244;
  --semi-violet-9: 241,238,250;
  --semi-indigo-0: 23,30,101;
  --semi-indigo-1: 32,41,122;
  --semi-indigo-2: 41,54,142;
  --semi-indigo-3: 52,68,163;
  --semi-indigo-4: 64,83,183;
  --semi-indigo-5: 95,113,197;
  --semi-indigo-6: 129,145,212;
  --semi-indigo-7: 167,180,226;
  --semi-indigo-8: 209,216,241;
  --semi-indigo-9: 237,239,248;
  --semi-blue-0: 5,49,112;
  --semi-blue-1: 10,70,148;
  --semi-blue-2: 19,92,184;
  --semi-blue-3: 29,117,219;
  --semi-blue-4: 41,144,255;
  --semi-blue-5: 84,169,255;
  --semi-blue-6: 127,193,255;
  --semi-blue-7: 169,215,255;
  --semi-blue-8: 212,236,255;
  --semi-blue-9: 239,248,255;
  --semi-light-blue-0: 0,55,97;
  --semi-light-blue-1: 0,77,133;
  --semi-light-blue-2: 3,102,169;
  --semi-light-blue-3: 10,129,204;
  --semi-light-blue-4: 19,159,240;
  --semi-light-blue-5: 64,180,243;
  --semi-light-blue-6: 110,200,246;
  --semi-light-blue-7: 157,220,249;
  --semi-light-blue-8: 206,238,252;
  --semi-light-blue-9: 235,248,254;
  --semi-cyan-0: 4,52,61;
  --semi-cyan-1: 7,79,92;
  --semi-cyan-2: 10,108,123;
  --semi-cyan-3: 14,137,153;
  --semi-cyan-4: 19,168,184;
  --semi-cyan-5: 56,187,198;
  --semi-cyan-6: 98,205,212;
  --semi-cyan-7: 145,223,227;
  --semi-cyan-8: 198,239,241;
  --semi-cyan-9: 231,247,248;
  --semi-teal-0: 2,60,57;
  --semi-teal-1: 4,90,85;
  --semi-teal-2: 7,119,111;
  --semi-teal-3: 10,149,136;
  --semi-teal-4: 14,179,161;
  --semi-teal-5: 51,194,176;
  --semi-teal-6: 94,209,193;
  --semi-teal-7: 142,225,211;
  --semi-teal-8: 196,240,232;
  --semi-teal-9: 230,247,244;
  --semi-green-0: 18,60,25;
  --semi-green-1: 28,90,37;
  --semi-green-2: 39,119,49;
  --semi-green-3: 50,149,61;
  --semi-green-4: 62,179,73;
  --semi-green-5: 93,194,100;
  --semi-green-6: 127,209,132;
  --semi-green-7: 166,225,168;
  --semi-green-8: 208,240,209;
  --semi-green-9: 236,247,236;
  --semi-light-green-0: 38,61,19;
  --semi-light-green-1: 59,92,29;
  --semi-light-green-2: 81,123,40;
  --semi-light-green-3: 103,153,52;
  --semi-light-green-4: 127,184,64;
  --semi-light-green-5: 151,198,95;
  --semi-light-green-6: 176,212,129;
  --semi-light-green-7: 201,227,167;
  --semi-light-green-8: 228,241,209;
  --semi-light-green-9: 243,248,237;
  --semi-lime-0: 49,70,3;
  --semi-lime-1: 75,105,5;
  --semi-lime-2: 103,141,9;
  --semi-lime-3: 132,176,12;
  --semi-lime-4: 162,211,17;
  --semi-lime-5: 174,220,58;
  --semi-lime-6: 189,229,102;
  --semi-lime-7: 207,237,150;
  --semi-lime-8: 229,246,201;
  --semi-lime-9: 243,251,233;
  --semi-yellow-0: 84,73,3;
  --semi-yellow-1: 126,108,6;
  --semi-yellow-2: 168,142,10;
  --semi-yellow-3: 210,175,15;
  --semi-yellow-4: 252,206,20;
  --semi-yellow-5: 253,222,67;
  --semi-yellow-6: 253,235,113;
  --semi-yellow-7: 254,245,160;
  --semi-yellow-8: 254,251,208;
  --semi-yellow-9: 255,254,236;
  --semi-amber-0: 81,46,9;
  --semi-amber-1: 121,75,15;
  --semi-amber-2: 161,107,22;
  --semi-amber-3: 202,143,30;
  --semi-amber-4: 242,183,38;
  --semi-amber-5: 245,202,80;
  --semi-amber-6: 247,219,122;
  --semi-amber-7: 250,234,166;
  --semi-amber-8: 252,246,210;
  --semi-amber-9: 254,251,237;
  --semi-orange-0: 85,31,3;
  --semi-orange-1: 128,53,6;
  --semi-orange-2: 170,80,10;
  --semi-orange-3: 213,111,15;
  --semi-orange-4: 255,146,20;
  --semi-orange-5: 255,174,67;
  --semi-orange-6: 255,199,114;
  --semi-orange-7: 255,221,161;
  --semi-orange-8: 255,239,208;
  --semi-orange-9: 255,249,237;
  --semi-grey-0: 28,31,35;
  --semi-grey-1: 46,50,56;
  --semi-grey-2: 65,70,76;
  --semi-grey-3: 85,91,97;
  --semi-grey-4: 107,112,117;
  --semi-grey-5: 136,141,146;
  --semi-grey-6: 167,171,176;
  --semi-grey-7: 198,202,205;
  --semi-grey-8: 230,232,234;
  --semi-grey-9: 249,249,249;
  --semi-white: 255, 255, 255;
  --semi-black: 0, 0, 0;
  --semi-ai-purple-0: 58,23,112;
  --semi-ai-purple-1: 83,35,148;
  --semi-ai-purple-2: 111,49,184;
  --semi-ai-purple-3: 141,65,219;
  --semi-ai-purple-4: 167,68,255;
  --semi-ai-purple-5: 195,117,255;
  --semi-ai-purple-6: 213,152,255;
  --semi-ai-purple-7: 229,186,255;
  --semi-ai-purple-8: 243,221,255;
  --semi-ai-purple-9: 251,243,255;
  --semi-ai-general-0-0: 9,44,100;
  --semi-ai-general-0-1: 39,29,108;
  --semi-ai-general-0-2: 58,23,112;
  --semi-ai-general-0-3: 80,18,101;
  --semi-ai-general-1-0: 17,64,136;
  --semi-ai-general-1-1: 54,43,144;
  --semi-ai-general-1-2: 83,35,148;
  --semi-ai-general-1-3: 113,28,137;
  --semi-ai-general-2-0: 26,86,172;
  --semi-ai-general-2-1: 70,59,180;
  --semi-ai-general-2-2: 111,49,184;
  --semi-ai-general-2-3: 148,41,173;
  --semi-ai-general-3-0: 38,111,207;
  --semi-ai-general-3-1: 88,78,215;
  --semi-ai-general-3-2: 141,65,219;
  --semi-ai-general-3-3: 185,55,208;
  --semi-ai-general-4-0: 35,127,240;
  --semi-ai-general-4-1: 94,84,248;
  --semi-ai-general-4-2: 167,68,255;
  --semi-ai-general-4-3: 219,56,241;
  --semi-ai-general-5-0: 91,162,245;
  --semi-ai-general-5-1: 134,129,252;
  --semi-ai-general-5-2: 195,117,255;
  --semi-ai-general-5-3: 234,107,246;
  --semi-ai-general-6-0: 131,187,248;
  --semi-ai-general-6-1: 163,160,253;
  --semi-ai-general-6-2: 213,152,255;
  --semi-ai-general-6-3: 243,143,248;
  --semi-ai-general-7-0: 172,210,250;
  --semi-ai-general-7-1: 192,192,253;
  --semi-ai-general-7-2: 229,186,255;
  --semi-ai-general-7-3: 249,180,251;
  --semi-ai-general-8-0: 213,233,253;
  --semi-ai-general-8-1: 223,223,254;
  --semi-ai-general-8-2: 243,221,255;
  --semi-ai-general-8-3: 253,217,252;
  --semi-ai-general-9-0: 239,247,254;
  --semi-ai-general-9-1: 244,244,255;
  --semi-ai-general-9-2: 251,243,255;
  --semi-ai-general-9-3: 254,241,254;
  --semi-ai-general-0: linear-gradient(278deg, rgba(var(--semi-ai-general-0-0)) 0%, rgba(var(--semi-ai-general-0-1)) 30%, rgba(var(--semi-ai-general-0-2)) 60%, rgba(var(--semi-ai-general-0-3)) 100%);
  --semi-ai-general-1: linear-gradient(278deg, rgba(var(--semi-ai-general-1-0)) 0%, rgba(var(--semi-ai-general-1-1)) 30%, rgba(var(--semi-ai-general-1-2)) 60%, rgba(var(--semi-ai-general-1-3)) 100%);
  --semi-ai-general-2: linear-gradient(278deg, rgba(var(--semi-ai-general-2-0)) 0%, rgba(var(--semi-ai-general-2-1)) 30%, rgba(var(--semi-ai-general-2-2)) 60%, rgba(var(--semi-ai-general-2-3)) 100%);
  --semi-ai-general-3: linear-gradient(278deg, rgba(var(--semi-ai-general-3-0)) 0%, rgba(var(--semi-ai-general-3-1)) 30%, rgba(var(--semi-ai-general-3-2)) 60%, rgba(var(--semi-ai-general-3-3)) 100%);
  --semi-ai-general-4: linear-gradient(278deg, rgba(var(--semi-ai-general-4-0)) 0%, rgba(var(--semi-ai-general-4-1)) 30%, rgba(var(--semi-ai-general-4-2)) 60%, rgba(var(--semi-ai-general-4-3)) 100%);
  --semi-ai-general-5: linear-gradient(278deg, rgba(var(--semi-ai-general-5-0)) 0%, rgba(var(--semi-ai-general-5-1)) 30%, rgba(var(--semi-ai-general-5-2)) 60%, rgba(var(--semi-ai-general-5-3)) 100%);
  --semi-ai-general-6: linear-gradient(278deg, rgba(var(--semi-ai-general-6-0)) 0%, rgba(var(--semi-ai-general-6-1)) 30%, rgba(var(--semi-ai-general-6-2)) 60%, rgba(var(--semi-ai-general-6-3)) 100%);
  --semi-ai-general-7: linear-gradient(278deg, rgba(var(--semi-ai-general-7-0)) 0%, rgba(var(--semi-ai-general-7-1)) 30%, rgba(var(--semi-ai-general-7-2)) 60%, rgba(var(--semi-ai-general-7-3)) 100%);
  --semi-ai-general-8: linear-gradient(278deg, rgba(var(--semi-ai-general-8-0)) 0%, rgba(var(--semi-ai-general-8-1)) 30%, rgba(var(--semi-ai-general-8-2)) 60%, rgba(var(--semi-ai-general-8-3)) 100%);
  --semi-ai-general-9: linear-gradient(278deg, rgba(var(--semi-ai-general-9-0)) 0%, rgba(var(--semi-ai-general-9-1)) 30%, rgba(var(--semi-ai-general-9-2)) 60%, rgba(var(--semi-ai-general-9-3)) 100%);
}

body, body[theme-mode="dark"] .semi-always-light, :host, :host .semi-always-light {
  -webkit-font-smoothing: antialiased;
  --semi-color-white: rgba(var(--semi-white), 1);
  --semi-color-black: rgba(var(--semi-black), 1);
  --semi-color-primary: rgba(var(--semi-blue-5), 1);
  --semi-color-primary-hover: rgba(var(--semi-blue-6), 1);
  --semi-color-primary-active: rgba(var(--semi-blue-7), 1);
  --semi-color-primary-disabled: rgba(var(--semi-blue-2), 1);
  --semi-color-primary-light-default: rgba(var(--semi-blue-0), 1);
  --semi-color-primary-light-hover: rgba(var(--semi-blue-1), 1);
  --semi-color-primary-light-active: rgba(var(--semi-blue-2), 1);
  --semi-color-secondary: rgba(var(--semi-light-blue-5), 1);
  --semi-color-secondary-hover: rgba(var(--semi-light-blue-6), 1);
  --semi-color-secondary-active: rgba(var(--semi-light-blue-7), 1);
  --semi-color-secondary-disabled: rgba(var(--semi-light-blue-2), 1);
  --semi-color-secondary-light-default: rgba(var(--semi-light-blue-0), 1);
  --semi-color-secondary-light-hover: rgba(var(--semi-light-blue-1), 1);
  --semi-color-secondary-light-active: rgba(var(--semi-light-blue-2), 1);
  --semi-color-tertiary: rgba(var(--semi-grey-5), 1);
  --semi-color-tertiary-hover: rgba(var(--semi-grey-6), 1);
  --semi-color-tertiary-active: rgba(var(--semi-grey-7), 1);
  --semi-color-tertiary-light-default: rgba(var(--semi-grey-0), 1);
  --semi-color-tertiary-light-hover: rgba(var(--semi-grey-1), 1);
  --semi-color-tertiary-light-active: rgba(var(--semi-grey-2), 1);
  --semi-color-default: rgba(var(--semi-grey-0), 1);
  --semi-color-default-hover: rgba(var(--semi-grey-1), 1);
  --semi-color-default-active: rgba(var(--semi-grey-2), 1);
  --semi-color-info: rgba(var(--semi-blue-5), 1);
  --semi-color-info-hover: rgba(var(--semi-blue-6), 1);
  --semi-color-info-active: rgba(var(--semi-blue-7), 1);
  --semi-color-info-disabled: rgba(var(--semi-blue-2), 1);
  --semi-color-info-light-default: rgba(var(--semi-blue-0), 1);
  --semi-color-info-light-hover: rgba(var(--semi-blue-1), 1);
  --semi-color-info-light-active: rgba(var(--semi-blue-2), 1);
  --semi-color-success: rgba(var(--semi-green-5), 1);
  --semi-color-success-hover: rgba(var(--semi-green-6), 1);
  --semi-color-success-active: rgba(var(--semi-green-7), 1);
  --semi-color-success-disabled: rgba(var(--semi-green-2), 1);
  --semi-color-success-light-default: rgba(var(--semi-green-0), 1);
  --semi-color-success-light-hover: rgba(var(--semi-green-1), 1);
  --semi-color-success-light-active: rgba(var(--semi-green-2), 1);
  --semi-color-danger: rgba(var(--semi-red-5), 1);
  --semi-color-danger-hover: rgba(var(--semi-red-6), 1);
  --semi-color-danger-active: rgba(var(--semi-red-7), 1);
  --semi-color-danger-light-default: rgba(var(--semi-red-0), 1);
  --semi-color-danger-light-hover: rgba(var(--semi-red-1), 1);
  --semi-color-danger-light-active: rgba(var(--semi-red-2), 1);
  --semi-color-warning: rgba(var(--semi-orange-5), 1);
  --semi-color-warning-hover: rgba(var(--semi-orange-6), 1);
  --semi-color-warning-active: rgba(var(--semi-orange-7), 1);
  --semi-color-warning-light-default: rgba(var(--semi-orange-0), 1);
  --semi-color-warning-light-hover: rgba(var(--semi-orange-1), 1);
  --semi-color-warning-light-active: rgba(var(--semi-orange-2), 1);
  --semi-color-focus-border: rgba(var(--semi-blue-5), 1);
  --semi-color-disabled-text: rgba(var(--semi-grey-9), .35);
  --semi-color-disabled-border: rgba(var(--semi-grey-1), 1);
  --semi-color-disabled-bg: rgba(var(--semi-grey-1), 1);
  --semi-color-disabled-fill: rgba(var(--semi-grey-8), .04);
  --semi-color-shadow: rgba(var(--semi-black), .04);
  --semi-color-link: rgba(var(--semi-blue-5), 1);
  --semi-color-link-hover: rgba(var(--semi-blue-6), 1);
  --semi-color-link-active: rgba(var(--semi-blue-7), 1);
  --semi-color-link-visited: rgba(var(--semi-blue-5), 1);
  --semi-color-border: rgba(var(--semi-grey-9), .08);
  --semi-color-nav-bg: rgba(var(--semi-white), 1);
  --semi-color-overlay-bg: #16161a99;
  --semi-color-fill-0: rgba(var(--semi-grey-8), .05);
  --semi-color-fill-1: rgba(var(--semi-grey-8), .09);
  --semi-color-fill-2: rgba(var(--semi-grey-8), .13);
  --semi-color-bg-0: rgba(var(--semi-white), 1);
  --semi-color-bg-1: rgba(var(--semi-white), 1);
  --semi-color-bg-2: rgba(var(--semi-white), 1);
  --semi-color-bg-3: rgba(var(--semi-white), 1);
  --semi-color-bg-4: rgba(var(--semi-white), 1);
  --semi-color-text-0: rgba(var(--semi-grey-9), 1);
  --semi-color-text-1: rgba(var(--semi-grey-9), .8);
  --semi-color-text-2: rgba(var(--semi-grey-9), .62);
  --semi-color-text-3: rgba(var(--semi-grey-9), .35);
  --semi-shadow-elevated: 0 0 1px #0000004d, 0 4px 14px #0000001a;
  --semi-border-radius-extra-small: 3px;
  --semi-border-radius-small: 3px;
  --semi-border-radius-medium: 6px;
  --semi-border-radius-large: 12px;
  --semi-border-radius-circle: 50%;
  --semi-border-radius-full: 9999px;
  --semi-color-highlight-bg: rgba(var(--semi-yellow-4), 1);
  --semi-color-highlight: rgba(var(--semi-black), 1);
  --semi-color-data-0: #5769ff;
  --semi-color-data-1: #8ed4e7;
  --semi-color-data-2: #f58700;
  --semi-color-data-3: #dcb7fc;
  --semi-color-data-4: #4a9cf7;
  --semi-color-data-5: #f3cc35;
  --semi-color-data-6: #fe8090;
  --semi-color-data-7: #8bd7d2;
  --semi-color-data-8: #83b023;
  --semi-color-data-9: #e9a5e5;
  --semi-color-data-10: #30a7ce;
  --semi-color-data-11: #f9c064;
  --semi-color-data-12: #b171f9;
  --semi-color-data-13: #77b6f9;
  --semi-color-data-14: #c88f02;
  --semi-color-data-15: #ffaab2;
  --semi-color-data-16: #33b0ab;
  --semi-color-data-17: #b6d781;
  --semi-color-data-18: #d458d4;
  --semi-color-data-19: #bcc6ff;
  --semi-color-ai-general: var(--semi-ai-general-5);
  --semi-color-ai-general-hover: var(--semi-ai-general-6);
  --semi-color-ai-general-active: var(--semi-ai-general-7);
  --semi-color-ai-general-disabled: var(--semi-ai-general-2);
  --semi-color-ai-purple: rgba(var(--semi-ai-purple-5));
  --semi-color-ai-purple-hover: rgba(var(--semi-ai-purple-6));
  --semi-color-ai-purple-active: rgba(var(--semi-ai-purple-7));
  --semi-color-ai-purple-disabled: rgba(var(--semi-ai-purple-2));
  --semi-color-ai-background-bottom: linear-gradient(201.15deg, #ffffff0a 6.58%, #ffe28a0a 32.88%, #e72dff0a 67.93%, #0073ff0a 94.23%);
  --semi-color-ai-background-bottom-hover: linear-gradient(201.15deg, #ffffff14 6.58%, #ffe28a14 32.88%, #e72dff14 67.93%, #0073ff14 94.23%);
  --semi-color-ai-background-bottom-active: linear-gradient(201.15deg, #ffffff1f 6.58%, #ffe28a1f 32.88%, #e72dff1f 67.93%, #0073ff1f 94.23%);
  --semi-color-ai-background-top: linear-gradient(201.15deg, #5338ff29 6.58%, #b030f018 32.88%, #e72dff0c 59.17%, #fff0 94.23%);
  --semi-color-ai-background-top-hover: linear-gradient(201.15deg, #5338ff52 6.58%, #b030f031 32.88%, #e72dff18 59.17%, #fff0 94.23%);
  font-family: Inter, -apple-system, BlinkMacSystemFont, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Segoe UI, Helvetica Neue, Helvetica, Arial, sans-serif;
}

body[theme-mode="dark"], body .semi-always-dark, :host([theme-mode="dark"]), :host .semi-always-dark {
  -webkit-font-smoothing: antialiased;
  --semi-color-white: #e4e7f5;
  --semi-color-black: rgba(var(--semi-black), 1);
  --semi-color-primary: rgba(var(--semi-blue-5), 1);
  --semi-color-primary-hover: rgba(var(--semi-blue-6), 1);
  --semi-color-primary-active: rgba(var(--semi-blue-7), 1);
  --semi-color-primary-disabled: rgba(var(--semi-blue-2), 1);
  --semi-color-primary-light-default: rgba(var(--semi-blue-5), .2);
  --semi-color-primary-light-hover: rgba(var(--semi-blue-5), .3);
  --semi-color-primary-light-active: rgba(var(--semi-blue-5), .4);
  --semi-color-secondary: rgba(var(--semi-light-blue-5), 1);
  --semi-color-secondary-hover: rgba(var(--semi-light-blue-6), 1);
  --semi-color-secondary-active: rgba(var(--semi-light-blue-7), 1);
  --semi-color-secondary-disabled: rgba(var(--semi-light-blue-2), 1);
  --semi-color-secondary-light-default: rgba(var(--semi-light-blue-5), .2);
  --semi-color-secondary-light-hover: rgba(var(--semi-light-blue-5), .3);
  --semi-color-secondary-light-active: rgba(var(--semi-light-blue-5), .4);
  --semi-color-tertiary: rgba(var(--semi-grey-5), 1);
  --semi-color-tertiary-hover: rgba(var(--semi-grey-6), 1);
  --semi-color-tertiary-active: rgba(var(--semi-grey-7), 1);
  --semi-color-tertiary-light-default: rgba(var(--semi-grey-5), .2);
  --semi-color-tertiary-light-hover: rgba(var(--semi-grey-5), .3);
  --semi-color-tertiary-light-active: rgba(var(--semi-grey-5), .4);
  --semi-color-default: rgba(var(--semi-grey-0), 1);
  --semi-color-default-hover: rgba(var(--semi-grey-1), 1);
  --semi-color-default-active: rgba(var(--semi-grey-2), 1);
  --semi-color-info: rgba(var(--semi-blue-5), 1);
  --semi-color-info-hover: rgba(var(--semi-blue-6), 1);
  --semi-color-info-active: rgba(var(--semi-blue-7), 1);
  --semi-color-info-disabled: rgba(var(--semi-blue-2), 1);
  --semi-color-info-light-default: rgba(var(--semi-blue-5), .2);
  --semi-color-info-light-hover: rgba(var(--semi-blue-5), .3);
  --semi-color-info-light-active: rgba(var(--semi-blue-5), .4);
  --semi-color-success: rgba(var(--semi-green-5), 1);
  --semi-color-success-hover: rgba(var(--semi-green-6), 1);
  --semi-color-success-active: rgba(var(--semi-green-7), 1);
  --semi-color-success-disabled: rgba(var(--semi-green-2), 1);
  --semi-color-success-light-default: rgba(var(--semi-green-5), .2);
  --semi-color-success-light-hover: rgba(var(--semi-green-5), .3);
  --semi-color-success-light-active: rgba(var(--semi-green-5), .4);
  --semi-color-danger: rgba(var(--semi-red-5), 1);
  --semi-color-danger-hover: rgba(var(--semi-red-6), 1);
  --semi-color-danger-active: rgba(var(--semi-red-7), 1);
  --semi-color-danger-light-default: rgba(var(--semi-red-5), .2);
  --semi-color-danger-light-hover: rgba(var(--semi-red-5), .3);
  --semi-color-danger-light-active: rgba(var(--semi-red-5), .4);
  --semi-color-warning: rgba(var(--semi-orange-5), 1);
  --semi-color-warning-hover: rgba(var(--semi-orange-6), 1);
  --semi-color-warning-active: rgba(var(--semi-orange-7), 1);
  --semi-color-warning-light-default: rgba(var(--semi-orange-5), .2);
  --semi-color-warning-light-hover: rgba(var(--semi-orange-5), .3);
  --semi-color-warning-light-active: rgba(var(--semi-orange-5), .4);
  --semi-color-focus-border: rgba(var(--semi-blue-5), 1);
  --semi-color-disabled-text: rgba(var(--semi-grey-9), .35);
  --semi-color-disabled-border: rgba(var(--semi-grey-1), 1);
  --semi-color-disabled-bg: rgba(var(--semi-grey-1), 1);
  --semi-color-disabled-fill: rgba(var(--semi-grey-8), .04);
  --semi-color-link: rgba(var(--semi-blue-5), 1);
  --semi-color-link-hover: rgba(var(--semi-blue-6), 1);
  --semi-color-link-active: rgba(var(--semi-blue-7), 1);
  --semi-color-link-visited: rgba(var(--semi-blue-5), 1);
  --semi-color-nav-bg: #232429;
  --semi-shadow-elevated: inset 0 0 0 1px #ffffff1a, 0 4px 14px #00000040;
  --semi-color-overlay-bg: #16161a99;
  --semi-color-fill-0: rgba(var(--semi-white), .12);
  --semi-color-fill-1: rgba(var(--semi-white), .16);
  --semi-color-fill-2: rgba(var(--semi-white), .2);
  --semi-color-border: rgba(var(--semi-white), .08);
  --semi-color-shadow: rgba(var(--semi-black), .04);
  --semi-color-bg-0: #16161a;
  --semi-color-bg-1: #232429;
  --semi-color-bg-2: #35363c;
  --semi-color-bg-3: #43444a;
  --semi-color-bg-4: #4f5159;
  --semi-color-text-0: rgba(var(--semi-grey-9), 1);
  --semi-color-text-1: rgba(var(--semi-grey-9), .8);
  --semi-color-text-2: rgba(var(--semi-grey-9), .6);
  --semi-color-text-3: rgba(var(--semi-grey-9), .35);
  --semi-border-radius-extra-small: 3px;
  --semi-border-radius-small: 3px;
  --semi-border-radius-medium: 6px;
  --semi-border-radius-large: 12px;
  --semi-border-radius-circle: 50%;
  --semi-border-radius-full: 9999px;
  --semi-color-highlight-bg: rgba(var(--semi-yellow-2), 1);
  --semi-color-highlight: rgba(var(--semi-white), 1);
  --semi-color-data-0: #5e6dc2;
  --semi-color-data-1: #086878;
  --semi-color-data-2: #faad3f;
  --semi-color-data-3: #4c2b9c;
  --semi-color-data-4: #107df8;
  --semi-color-data-5: #f8ca10;
  --semi-color-data-6: #c31e57;
  --semi-color-data-7: #057773;
  --semi-color-data-8: #9acf0d;
  --semi-color-data-9: #751d8a;
  --semi-color-data-10: #10a2b4;
  --semi-color-data-11: #d06e0b;
  --semi-color-data-12: #7142c5;
  --semi-color-data-13: #0764d4;
  --semi-color-data-14: #fbe86e;
  --semi-color-data-15: #a01349;
  --semi-color-data-16: #0bb3a7;
  --semi-color-data-17: #628a06;
  --semi-color-data-18: #a230b3;
  --semi-color-data-19: #28338a;
  --semi-color-ai-general: var(--semi-ai-general-5);
  --semi-color-ai-general-hover: var(--semi-ai-general-6);
  --semi-color-ai-general-active: var(--semi-ai-general-7);
  --semi-color-ai-general-disabled: var(--semi-ai-general-2);
  --semi-color-ai-purple: rgba(var(--semi-ai-purple-5));
  --semi-color-ai-purple-hover: rgba(var(--semi-ai-purple-6));
  --semi-color-ai-purple-active: rgba(var(--semi-ai-purple-7));
  --semi-color-ai-purple-disabled: rgba(var(--semi-ai-purple-2));
  --semi-color-ai-background-bottom: linear-gradient(201.15deg, #ffe28a33 6.58%, #e72dff33 50.4%, #0073ff33 94.23%);
  --semi-color-ai-background-bottom-hover: linear-gradient(201.15deg, #ffe28a4d 6.58%, #e72dff4d 50.4%, #0073ff4d 94.23%);
  --semi-color-ai-background-bottom-active: linear-gradient(201.15deg, #ffe28a66 6.58%, #e72dff66 50.4%, #0073ff66 94.23%);
  --semi-color-ai-background-top: linear-gradient(201.15deg, #5338ff5c 6.58%, #b030f037 32.88%, #9a00ae1c 59.17%, #0000 94.23%);
  --semi-color-ai-background-top-hover: linear-gradient(201.15deg, #5338ffb8 6.58%, #b030f06e 32.88%, #9a00ae37 59.17%, #0000 94.23%);
  font-family: Inter, -apple-system, BlinkMacSystemFont, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Segoe UI, Helvetica Neue, Helvetica, Arial, sans-serif;
}

.semi-light-scrollbar::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

.semi-light-scrollbar ::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

.semi-light-scrollbar::-webkit-scrollbar-track {
  background: none;
}

.semi-light-scrollbar ::-webkit-scrollbar-track {
  background: none;
}

.semi-light-scrollbar::-webkit-scrollbar-corner {
  background-color: #0000;
}

.semi-light-scrollbar ::-webkit-scrollbar-corner {
  background-color: #0000;
}

.semi-light-scrollbar::-webkit-scrollbar-thumb {
  background: none;
  border-radius: 6px;
  transition: all 1s;
}

.semi-light-scrollbar ::-webkit-scrollbar-thumb {
  background: none;
  border-radius: 6px;
  transition: all 1s;
}

.semi-light-scrollbar:hover::-webkit-scrollbar-thumb {
  background: var(--semi-color-fill-2);
}

.semi-light-scrollbar :hover::-webkit-scrollbar-thumb {
  background: var(--semi-color-fill-2);
}

.semi-light-scrollbar::-webkit-scrollbar-thumb:hover {
  background: var(--semi-color-fill-1);
}

.semi-light-scrollbar ::-webkit-scrollbar-thumb:hover {
  background: var(--semi-color-fill-1);
}

/*# sourceMappingURL=_1gqf5hy._.css.map*/