:root[theme='theme10'] {
  --portal-bg: #f0f2f4;
  --portal-surface: rgba(249, 250, 251, .84);
  --portal-surface-strong: rgba(246, 247, 249, .96);
  --portal-line: rgba(101, 111, 123, .13);
  --portal-ink: #343940;
  --portal-muted: #9399a1;
  --portal-shadow: 0 8px 25px rgba(80, 89, 99, .08), inset 0 1px 0 rgba(255, 255, 255, .9);
}
:root[theme='theme10'] body { background: #f7f8f9; color: var(--portal-ink); }
:root[theme='theme10'] .el-aside { width: 190px !important; min-height: 100vh; padding: 0 13px; background: linear-gradient(180deg, #d8dfe4 0%, #e8ecef 52%, #dfe5e9 100%); border-right: 1px solid rgba(75, 87, 99, .16); }
:root[theme='theme10'] .ali-logo { max-width: 143px; height: 32px; margin: 24px auto 10px; }
:root[theme='theme10'] .menu-top { margin-top: 25px; }
:root[theme='theme10'] .menu-top .el-menu-item, :root[theme='theme10'] .menu-top .el-submenu__title { height: 37px; line-height: 37px; margin: 3px 0; padding-left: 15px !important; border-radius: 7px; color: #5f6973; font-size: 12px; }
:root[theme='theme10'] .menu-top .el-menu-item i, :root[theme='theme10'] .menu-top .el-submenu__title i { color: #687580; font-size: 14px; }
:root[theme='theme10'] .menu-top .el-menu-item:hover, :root[theme='theme10'] .menu-top .el-submenu__title:hover { background: rgba(255, 255, 255, .78) !important; color: var(--portal-ink) !important; }
:root[theme='theme10'] .menu-top .el-menu-item.is-active { background: rgba(250, 252, 253, .82) !important; color: #30363d !important; box-shadow: 0 3px 11px rgba(80, 88, 98, .1); font-weight: 600; }
:root[theme='theme10'] .menu-top .el-menu-item.is-active i { color: #30363d !important; }
:root[theme='theme10'] .line { margin: 21px 8px; border-top: 1px dashed rgba(108, 116, 125, .18); }
:root[theme='theme10'] .el-header { left: 190px; width: calc(100% - 190px); height: 68px !important; background: rgba(247, 248, 249, .78); border-bottom: 0; box-shadow: none; backdrop-filter: blur(16px); }
:root[theme='theme10'] .header-right { margin-right: 22px; gap: 3px; }
:root[theme='theme10'] .header-right .car-item { margin-right: 17px; }
:root[theme='theme10'] .el-main { min-height: 100vh; padding: 82px 15px 28px; background: #f7f8f9; }
:root[theme='theme10'] .portal-shell { min-height: calc(100vh - 110px); padding: 0 15px 18px; overflow: hidden; border: 1px solid rgba(105, 114, 124, .1); border-radius: 12px; background: linear-gradient(140deg, #e9ecef 0%, #f3f4f5 46%, #e7eaec 100%); box-shadow: 0 8px 30px rgba(80, 89, 99, .07), inset 0 1px 0 rgba(255,255,255,.75); }
:root[theme='theme10'] .portal-headline { display: flex; align-items: center; justify-content: space-between; min-height: 73px; padding: 0 4px; }
:root[theme='theme10'] .portal-welcome, :root[theme='theme10'] .portal-actions { display: flex; align-items: center; }
:root[theme='theme10'] .portal-welcome { gap: 10px; }
:root[theme='theme10'] .portal-collapse { display: grid; width: 17px; height: 17px; place-items: center; border-radius: 4px; color: white; background: #40464d; font-size: 15px; }
:root[theme='theme10'] .portal-welcome h1 { display: inline; margin: 0; color: #32383f; font-size: 20px; font-weight: 700; }
:root[theme='theme10'] .portal-welcome p { margin: 4px 0 0; color: #969ca3; font-size: 10px; }
:root[theme='theme10'] .credit-chip { align-self: flex-start; margin: 1px 0 0 9px; padding: 4px 10px; border-radius: 11px; color: #4a5056; background: rgba(255,255,255,.68); font-size: 10px; font-weight: 700; }
:root[theme='theme10'] .portal-actions { gap: 11px; }
:root[theme='theme10'] .guide-pill, :root[theme='theme10'] .language-pill { padding: 8px 13px; border: 1px solid rgba(105,114,124,.09); border-radius: 18px; color: #626a72; background: rgba(255,255,255,.62); font-size: 10px; }
:root[theme='theme10'] .language-pill b { display: inline-block; padding: 2px 5px; border-radius: 8px; color: #fff; background: #30363d; font-weight: 500; }
:root[theme='theme10'] .round-action { display: grid; width: 30px; height: 30px; place-items: center; border: 0; border-radius: 50%; color: #fff; background: #353b42; cursor: pointer; }
:root[theme='theme10'] .portal-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 10px; }
:root[theme='theme10'] .portal-center { min-width: 0; }
:root[theme='theme10'] .portal-top-grid { display: grid; grid-template-columns: 1.12fr 1fr; gap: 10px; }
:root[theme='theme10'] .promo-card, :root[theme='theme10'] .glass-panel { border: 1px solid rgba(105,114,124,.1); border-radius: 11px; background: var(--portal-surface); box-shadow: var(--portal-shadow); backdrop-filter: blur(13px) saturate(.7); }
:root[theme='theme10'] .promo-card { min-height: 220px; padding: 12px; }
:root[theme='theme10'] .promo-art { position: relative; height: 180px; overflow: hidden; border-radius: 8px; background: radial-gradient(circle at 84% 55%, #d9e4ed 0 14%, transparent 15%), linear-gradient(105deg, #98c8ef 0%, #bedcf4 40%, #e3edf4 100%); }
:root[theme='theme10'] .promo-art::before { position: absolute; right: 17px; bottom: -23px; width: 132px; height: 132px; border: 9px solid rgba(255,255,255,.55); border-radius: 50%; content: ''; box-shadow: -23px -14px 0 -8px rgba(255,255,255,.35); }
:root[theme='theme10'] .promo-label { position: absolute; top: 28px; left: 19px; color: #fff; font-size: 28px; font-weight: 800; letter-spacing: -.06em; text-shadow: 0 2px 3px rgba(30,82,132,.28); }
:root[theme='theme10'] .promo-sub { position: absolute; top: 67px; left: 21px; color: #eaf5ff; font-size: 10px; }
:root[theme='theme10'] .promo-art strong { position: absolute; top: 92px; left: 18px; color: #fff; font-size: 43px; font-weight: 900; letter-spacing: -.07em; text-shadow: 0 3px 6px rgba(40, 96, 143, .3); }
:root[theme='theme10'] .promo-unit { position: absolute; top: 107px; left: 129px; color: #fff; font-size: 11px; font-weight: 700; }
:root[theme='theme10'] .promo-orb { position: absolute; right: 51px; top: 22px; color: #fff; font-size: 27px; }
:root[theme='theme10'] .promo-dots { display: flex; justify-content: center; gap: 7px; padding-top: 10px; }
:root[theme='theme10'] .promo-dots i { width: 6px; height: 6px; border-radius: 50%; background: #b7bdc3; }
:root[theme='theme10'] .promo-dots i.active { background: #4c535a; }
:root[theme='theme10'] .balance-card { min-height: 220px; padding: 20px 20px 16px; }
:root[theme='theme10'] .balance-card-top { display: flex; min-height: 80px; align-items: center; justify-content: space-between; overflow: hidden; padding: 15px 17px; border-radius: 8px; background: linear-gradient(120deg, #e2e7ed, #edf0f4); }
:root[theme='theme10'] .card-label, :root[theme='theme10'] .balance-card-top strong { display: block; }
:root[theme='theme10'] .card-label { color: #737b84; font-size: 11px; }
:root[theme='theme10'] .balance-card-top strong { margin-top: 7px; color: #4a5057; font-size: 22px; filter: blur(4px); }
:root[theme='theme10'] .coin-mark { color: #c5ccd3; font-size: 67px; line-height: 1; }
:root[theme='theme10'] .balance-facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 9px; margin: 16px 0; }
:root[theme='theme10'] .balance-facts span, :root[theme='theme10'] .balance-facts strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
:root[theme='theme10'] .balance-facts span { color: #777f87; font-size: 10px; }
:root[theme='theme10'] .balance-facts strong { margin-top: 7px; color: #a2a8ae; font-size: 11px; font-weight: 500; }
:root[theme='theme10'] .balance-button { width: 100%; height: 34px; border: 0; border-radius: 6px; color: #fff; background: #363c43; font-size: 12px; cursor: pointer; }
:root[theme='theme10'] .portal-metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 10px; }
:root[theme='theme10'] .portal-metric { position: relative; min-height: 91px; padding: 14px 16px; }
:root[theme='theme10'] .metric-icon { position: absolute; top: 13px; right: 14px; display: grid; width: 28px; height: 28px; place-items: center; border-radius: 7px; color: #4d555d; background: rgba(255,255,255,.67); box-shadow: 0 3px 9px rgba(65,73,81,.05); font-size: 13px; }
:root[theme='theme10'] .metric-title, :root[theme='theme10'] .portal-metric small, :root[theme='theme10'] .portal-metric strong { display: block; }
:root[theme='theme10'] .metric-title { color: #606870; font-size: 11px; }
:root[theme='theme10'] .portal-metric small { margin-top: 2px; color: #a2a8ae; font-size: 8px; letter-spacing: .03em; }
:root[theme='theme10'] .portal-metric strong { margin-top: 7px; color: #363d45; font-size: 20px; }
:root[theme='theme10'] .portal-bottom-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 10px; }
:root[theme='theme10'] .portal-list-card { min-height: 360px; padding: 18px 18px 8px; }
:root[theme='theme10'] .portal-card-heading { display: flex; align-items: flex-start; justify-content: space-between; padding-bottom: 13px; border-bottom: 1px solid var(--portal-line); }
:root[theme='theme10'] .portal-card-heading h2 { margin: 0; color: #41484f; font-size: 14px; }
:root[theme='theme10'] .empty-state { display: flex; min-height: 150px; align-items: center; justify-content: center; color: #a4abb2; font-size: 11px; }
:root[theme='theme10'] .portal-card-heading span { display: block; margin-top: 3px; color: #a1a7ad; font-size: 8px; letter-spacing: .08em; }
:root[theme='theme10'] .more-button { padding: 0; border: 0; color: #969da4; background: transparent; font-size: 10px; cursor: pointer; }
:root[theme='theme10'] .announcement-item { display: grid; grid-template-columns: 8px 1fr auto; gap: 9px; align-items: start; min-height: 61px; padding: 13px 0; border-bottom: 1px solid rgba(105,114,124,.08); }
:root[theme='theme10'] .announcement-item:last-child { border-bottom: 0; }
:root[theme='theme10'] .announcement-item > i, :root[theme='theme10'] .portal-ticket > i { width: 6px; height: 6px; margin-top: 4px; border-radius: 50%; background: #bb716c; }
:root[theme='theme10'] .announcement-item strong, :root[theme='theme10'] .announcement-item p, :root[theme='theme10'] .announcement-item time { display: block; }
:root[theme='theme10'] .announcement-item strong { overflow: hidden; color: #4a5158; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
:root[theme='theme10'] .announcement-item p { margin: 5px 0 0; overflow: hidden; color: #989fa6; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
:root[theme='theme10'] .announcement-item time { color: #a1a7ad; font-size: 9px; white-space: nowrap; }
:root[theme='theme10'] .portal-ticket { display: grid; grid-template-columns: 8px 1fr auto; gap: 9px; align-items: center; min-height: 61px; border-bottom: 1px solid rgba(105,114,124,.08); }
:root[theme='theme10'] .portal-ticket:last-child { border-bottom: 0; }
:root[theme='theme10'] .portal-ticket > i { margin-top: 0; }
:root[theme='theme10'] .portal-ticket strong, :root[theme='theme10'] .portal-ticket small { display: block; }
:root[theme='theme10'] .portal-ticket strong { overflow: hidden; color: #4a5158; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
:root[theme='theme10'] .portal-ticket small { margin-top: 4px; color: #a0a6ad; font-size: 9px; }
:root[theme='theme10'] .portal-ticket button { width: 37px; height: 21px; border: 0; border-radius: 4px; color: #fff; background: #434a51; font-size: 9px; cursor: pointer; }
:root[theme='theme10'] .portal-calendar { min-height: 680px; padding: 20px 18px; }
:root[theme='theme10'] .calendar-heading { display: flex; align-items: flex-start; justify-content: space-between; padding-bottom: 17px; border-bottom: 1px solid var(--portal-line); }
:root[theme='theme10'] .calendar-heading strong { display: block; color: #454c54; font-size: 15px; }
:root[theme='theme10'] .calendar-heading span { display: block; margin-top: 5px; color: #a0a7ae; font-size: 9px; }
:root[theme='theme10'] .calendar-nav { display: flex; gap: 7px; }
:root[theme='theme10'] .calendar-nav button { width: 21px; height: 21px; border: 0; border-radius: 5px; color: #fff; background: #444b52; cursor: pointer; }
:root[theme='theme10'] .calendar-week, :root[theme='theme10'] .calendar-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 3px; text-align: center; }
:root[theme='theme10'] .calendar-week { margin-top: 17px; }
:root[theme='theme10'] .calendar-week span { color: #a4aab0; font-size: 9px; }
:root[theme='theme10'] .calendar-grid { margin-top: 10px; }
:root[theme='theme10'] .calendar-grid span { position: relative; padding: 8px 0; color: #717980; font-size: 10px; }
:root[theme='theme10'] .calendar-grid span.is-muted { color: #b0b5ba; }
:root[theme='theme10'] .calendar-grid span:nth-child(-n+3) { color: #b0b5ba; }
:root[theme='theme10'] .calendar-grid .is-today { border-radius: 5px; color: #fff; background: #3c434a; font-weight: 700; }
:root[theme='theme10'] .calendar-grid .has-dot:not(.is-today)::after { position: absolute; bottom: 3px; left: calc(50% - 2px); width: 4px; height: 4px; border-radius: 50%; background: #c47a73; content: ''; }
:root[theme='theme10'] .calendar-agenda { margin-top: 24px; }
:root[theme='theme10'] .calendar-agenda h3 { margin: 0 0 15px; color: #454c54; font-size: 12px; }
:root[theme='theme10'] .calendar-agenda h3 small { margin-left: 5px; color: #a2a8ae; font-size: 9px; font-weight: 400; }
:root[theme='theme10'] .agenda-row { display: grid; grid-template-columns: 40px 9px 1fr auto; gap: 8px; align-items: center; min-height: 67px; border-bottom: 1px solid rgba(105,114,124,.08); }
:root[theme='theme10'] .agenda-row time { color: #969da4; font-size: 10px; }
:root[theme='theme10'] .agenda-row > i { width: 7px; height: 7px; border: 2px solid #bcc2c8; border-radius: 50%; }
:root[theme='theme10'] .agenda-row strong, :root[theme='theme10'] .agenda-row small { display: block; }
:root[theme='theme10'] .agenda-row strong { color: #697179; font-size: 10px; }
:root[theme='theme10'] .agenda-row small { margin-top: 4px; color: #afb4b9; font-size: 8px; }
:root[theme='theme10'] .agenda-row em { padding: 3px 5px; border-radius: 4px; color: #78a184; background: #e4eee6; font-size: 8px; font-style: normal; }
@media screen and (max-width: 1180px) { :root[theme='theme10'] .portal-layout { grid-template-columns: minmax(0, 1fr) 290px; } :root[theme='theme10'] .portal-top-grid { grid-template-columns: 1fr; } :root[theme='theme10'] .promo-card, :root[theme='theme10'] .balance-card { min-height: 190px; } :root[theme='theme10'] .promo-art { height: 145px; } :root[theme='theme10'] .portal-calendar { min-height: 620px; } }
@media screen and (max-width: 850px) { :root[theme='theme10'] .el-aside { width: 72px !important; padding: 0 8px; } :root[theme='theme10'] .ali-logo { max-width: 50px; object-fit: contain; } :root[theme='theme10'] .aside-menu-text { display: none; } :root[theme='theme10'] .menu-top .el-menu-item, :root[theme='theme10'] .menu-top .el-submenu__title { padding-left: 17px !important; } :root[theme='theme10'] .el-header { left: 72px; width: calc(100% - 72px); } :root[theme='theme10'] .portal-layout { grid-template-columns: 1fr; } :root[theme='theme10'] .portal-calendar { min-height: auto; } }
@media screen and (max-width: 640px) { :root[theme='theme10'] .el-main { padding: 76px 8px 18px; } :root[theme='theme10'] .portal-shell { padding: 0 8px 12px; } :root[theme='theme10'] .portal-headline { min-height: 82px; } :root[theme='theme10'] .portal-actions { gap: 5px; } :root[theme='theme10'] .guide-pill { display: none; } :root[theme='theme10'] .portal-welcome h1 { font-size: 17px; } :root[theme='theme10'] .portal-metrics { grid-template-columns: 1fr 1fr; } :root[theme='theme10'] .portal-bottom-grid { grid-template-columns: 1fr; } :root[theme='theme10'] .portal-list-card { min-height: 0; } :root[theme='theme10'] .balance-facts { gap: 5px; } :root[theme='theme10'] .portal-calendar { padding: 14px; } }

/* Compact Mist Isle top bar: keep the workspace above the fold. */
:root[theme='theme10'] .el-header {
  height: 58px !important;
  min-height: 58px !important;
  left: 190px;
  width: calc(100% - 190px);
  padding: 0 22px;
  border-bottom: 1px solid rgba(105, 114, 124, .09);
  background: rgba(247, 248, 249, .86);
  box-shadow: 0 4px 16px rgba(80, 89, 99, .05);
  backdrop-filter: blur(18px) saturate(.8);
  line-height: 58px;
}
:root[theme='theme10'] .el-header .header-left::before {
  content: '工作台';
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 12px;
  border: 1px solid rgba(105, 114, 124, .11);
  border-radius: 14px;
  color: #68717a;
  background: rgba(255, 255, 255, .52);
  font-size: 11px;
  line-height: 1;
}
:root[theme='theme10'] .el-header .header-left { min-width: 120px; }
:root[theme='theme10'] .el-header .header-right { align-items: center; margin-right: 0; }
:root[theme='theme10'] .el-header .header-right > .header-right-item { display: flex; height: 58px; align-items: center; }
:root[theme='theme10'] .el-header .header-right .car-item { height: 58px; margin-right: 14px; }
:root[theme='theme10'] .el-header .header-right .right-item { line-height: 1; }
:root[theme='theme10'] .el-header .header-right .head-box { line-height: 1; }
:root[theme='theme10'] .portal-username { margin-left: 3px; color: #69737d; font-weight: 500; }
:root[theme='theme10'] .el-main { padding: 16px 15px 28px !important; }
:root[theme='theme10'] .balance-card-top strong { filter: none; }
:root[theme='theme10'] .portal-metric[role='link'] { cursor: pointer; transition: transform .16s ease, box-shadow .16s ease, background .16s ease; }
:root[theme='theme10'] .portal-metric[role='link']:hover { transform: translateY(-2px); background: rgba(255,255,255,.94); box-shadow: 0 8px 18px rgba(80, 89, 99, .11); }
:root[theme='theme10'] .portal-metric[role='link']:focus-visible { outline: 2px solid rgba(78, 101, 122, .45); outline-offset: 2px; }
@media screen and (max-width: 850px) {
  :root[theme='theme10'] .el-header { left: 72px; width: calc(100% - 72px); padding: 0 12px; }
  :root[theme='theme10'] .el-main { padding: 16px 10px 20px !important; }
}
@media screen and (max-width: 640px) {
  :root[theme='theme10'] .el-header { left: 72px; width: calc(100% - 72px); height: 54px !important; min-height: 54px !important; line-height: 54px; }
  :root[theme='theme10'] .el-header .header-left::before { content: '工作台'; padding: 0 9px; font-size: 10px; }
  :root[theme='theme10'] .el-main { padding: 12px 8px 18px !important; }
}

/* Home entry point must carry the same final shell as the member-center pages. */
:root[theme='theme10'] body,
:root[theme='theme10'] .el-container,
:root[theme='theme10'] .el-main { background: #eef1f3; }
:root[theme='theme10'] .el-aside { width: 184px !important; padding: 0 12px; background: linear-gradient(180deg, #d4dce1 0%, #dce3e7 52%, #e6ebee 100%); border-right: 1px solid rgba(73, 86, 98, .18); }
:root[theme='theme10'] .el-header { left: 184px; width: calc(100% - 184px); height: 62px !important; min-height: 62px !important; padding: 0 24px; background: rgba(239, 242, 244, .88); border-bottom: 1px solid rgba(93, 105, 117, .12); box-shadow: 0 6px 18px rgba(71, 82, 92, .06); line-height: 62px; }
:root[theme='theme10'] .el-main { padding: 86px 28px 34px !important; line-height: normal !important; text-align: left; }
:root[theme='theme10'] .portal-shell { max-width: 1380px; margin: 0 auto; border: 1px solid rgba(93, 105, 117, .16); border-radius: 9px; background: linear-gradient(135deg, rgba(250, 252, 253, .86), rgba(242, 245, 247, .72)); box-shadow: 0 12px 32px rgba(69, 80, 91, .09), inset 0 1px rgba(255, 255, 255, .86); }
:root[theme='theme10'] .portal-layout { grid-template-columns: minmax(0, 1fr) 330px; gap: 14px; }
:root[theme='theme10'] .portal-top-grid,
:root[theme='theme10'] .portal-bottom-grid { gap: 14px; }
:root[theme='theme10'] .promo-card,
:root[theme='theme10'] .glass-panel { border-color: rgba(93, 105, 117, .15); border-radius: 9px; background: rgba(255, 255, 255, .68); box-shadow: 0 10px 25px rgba(69, 80, 91, .075), inset 0 1px rgba(255,255,255,.86); }
@media screen and (max-width: 900px) {
  :root[theme='theme10'] .el-aside { width: 72px !important; padding: 0 8px; }
  :root[theme='theme10'] .el-header { left: 72px; width: calc(100% - 72px); padding: 0 14px; }
  :root[theme='theme10'] .el-main { padding: 82px 14px 24px !important; }
}
