:root {
  --bg: #07111b;
  --panel: #0d1c29;
  --line: #20374d;
  --text: #edf4fc;
  --muted: #9db0c4;
  --muted2: #7188a1;
  --blue: #4d7cff;
  --blue2: #315ee8;
  --cyan: #5bd5df;
  --green: #55d6a0;
  --red: #ff8292;
  --shell-rail-surface: #08151f;
  --compact-sidebar-width: 160px;
  --compact-topbar-height: 70px;
  --workspace-divider: #28465c;
  --workspace-corner: 18px;
}

html { color-scheme: dark; }
* { box-sizing: border-box; }
html, body {
  width: 100%;
  min-height: 100%;
  margin: 0;
  color: var(--text);
  background: var(--bg);
  font: 17px/1.45 "Microsoft YaHei UI", "PingFang SC", system-ui, sans-serif;
}
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
.hidden { display: none !important; }

.app-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: var(--compact-sidebar-width) minmax(0, 1fr);
  background: radial-gradient(circle at 75% -10%, #15375955, transparent 34%), var(--bg);
}
.sidebar {
  position: sticky;
  top: 0;
  z-index: 20;
  width: var(--compact-sidebar-width);
  height: 100vh;
  padding: 14px 9px 12px;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
  color: var(--text);
  background: var(--shell-rail-surface);
}
.brand { display: flex; align-items: center; gap: 8px; padding: 2px 7px 15px; }
.brand-mark {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  position: relative;
  overflow: visible;
  border-radius: 13px;
  background: transparent;
}
.brand-mark.big { width: 70px; height: 70px; margin: auto; border-radius: 20px; }
.logo-mark img { width: 100%; height: 100%; display: block; object-fit: contain; border-radius: inherit; }
.brand strong { display: block; font-size: 19px; white-space: nowrap; }
.brand small { display: block; margin-top: 2px; color: #7890aa; font-size: 13px; white-space: nowrap; }
nav { display: grid; gap: 4px; }
.nav-item {
  width: 100%;
  height: 48px;
  min-height: 48px;
  padding: 5px 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 11px;
  color: #9caec1;
  background: transparent;
  text-align: left;
  font-size: 16px;
  white-space: nowrap;
}
.nav-item .nav-icon {
  flex: 0 0 27px;
  width: 27px;
  height: 27px;
  padding: 5px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  color: #7fa4cc;
  background: #102335;
}
.nav-item .nav-icon svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.nav-item.active { color: #fff; border-color: #365cc4; background: linear-gradient(135deg, #244fc0, #173b9e); }
.nav-item.active .nav-icon { color: #fff; background: #ffffff18; }
.sidebar-foot { margin-top: auto; display: flex; align-items: center; gap: 7px; padding: 10px 3px 2px; border-top: 1px solid #172b3e; }
.sidebar-foot strong { display: block; font-size: 13px; white-space: nowrap; }
.status-dot { flex: 0 0 8px; width: 8px; height: 8px; border-radius: 50%; background: #66798c; box-shadow: 0 0 0 4px #66798c18; }
.status-dot.ok { background: var(--green); box-shadow: 0 0 0 4px #55d6a01c; }

.workspace { min-width: 0; }
.workspace > .topbar {
  position: sticky;
  top: 0;
  z-index: 300;
  width: 100%;
  height: var(--compact-topbar-height);
  min-height: var(--compact-topbar-height);
  padding: 8px 18px 8px 20px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  overflow: visible;
  color: var(--text);
  background: var(--shell-rail-surface);
}
.topbar-title { min-width: 0; }
.topbar-title h1 { margin: 0; font-size: 25px; line-height: 1.08; }
.topbar-title p { margin: 3px 0 0; overflow: hidden; color: var(--muted2); font-size: 12px; line-height: 1.15; white-space: nowrap; text-overflow: ellipsis; }
.top-actions, .top-actions-v2, .button-row { display: flex; align-items: center; gap: 9px; }
.top-actions-v2 { width: auto; justify-content: flex-end; gap: 10px; }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.task-log-btn, .user-icon-btn {
  position: relative;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  padding: 0;
  display: grid;
  place-items: center;
  color: #fff;
  border: 1px solid #2d6595;
  border-radius: 50%;
  background: #1f5f96;
  box-shadow: 0 8px 20px #0b2d5260;
}
.theme-toggle-icon, .task-log-icon { width: 22px; height: 22px; display: grid; place-items: center; }
.theme-toggle-icon svg, .task-log-icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.top-points-btn {
  flex: 0 0 132px;
  width: 132px;
  min-width: 132px;
  height: 44px;
  padding: 0 14px;
  display: grid;
  place-items: center;
  color: #ffd56a;
  border: 1px solid #b98a32;
  border-radius: 12px;
  background: linear-gradient(145deg, #202b43, #111a2b);
  box-shadow: 0 8px 22px #08142666;
}
.top-points-btn strong { color: #ffd56a; font-size: 15px; line-height: 1; font-weight: 900; white-space: nowrap; }
.notification-wrap, .user-menu-wrap, .top-project-stack, .custom-project-switcher { position: relative; }
.top-project-stack { width: 240px; }
.custom-project-switcher { width: 100%; }
.project-select-btn {
  width: 100%;
  height: 44px;
  padding: 0 12px 0 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: #e5edf7;
  border: 1px solid #294760;
  border-radius: 13px;
  background: linear-gradient(145deg, #0c1b29, #091621);
}
.project-select-copy { min-width: 0; flex: 1; display: flex; align-items: center; justify-content: space-between; gap: 8px; overflow: hidden; }
.project-select-copy strong, .project-select-copy small { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.project-select-copy small { color: var(--muted2); font-size: 11px; }
.project-select-chevron { flex: 0 0 24px; width: 24px; height: 24px; display: grid; place-items: center; border-left: 1px solid var(--line); }
.project-select-chevron svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; }
.user-icon-btn span { width: 32px; height: 32px; display: grid; place-items: center; font-weight: 900; }
#content { padding: 26px 30px 48px; border-top: 1px solid var(--workspace-divider); border-left: 1px solid var(--workspace-divider); border-top-left-radius: var(--workspace-corner); }
body.auth-pending #content {
  visibility: hidden;
  pointer-events: none;
}
body.auth-pending .app-shell,
body.auth-pending > #taskProgressDock {
  visibility: hidden !important;
  pointer-events: none !important;
}
.page { display: none; }
.page.active { display: block; }
.panel { color: var(--text); border: 1px solid var(--line); border-radius: 16px; background: linear-gradient(145deg, #0e1d2a, #0b1723); }
.hero { min-height: 250px; padding: 34px; display: flex; justify-content: space-between; align-items: center; position: relative; overflow: hidden; }
.hero h2 { margin: 12px 0 8px; font-size: 34px; }
.hero p { max-width: 630px; color: var(--muted); line-height: 1.8; }
.eyebrow { color: #7fa6ff; font-size: 13px; letter-spacing: 2px; }
.metric-grid { margin: 16px 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 13px; }
.metric { padding: 19px; border: 1px solid var(--line); border-radius: 14px; background: var(--panel); }
.two-col { display: grid; grid-template-columns: 1.3fr 1fr; gap: 16px; }
.panel-head { padding: 19px 20px; display: flex; justify-content: space-between; border-bottom: 1px solid var(--line); }

input, textarea, select { color: #e7eef8; border: 1px solid #28425b; border-radius: 10px; background: #0a1825; outline: none; }
input:focus, textarea:focus, select:focus { border-color: var(--blue); box-shadow: 0 0 0 3px #4d7cff20; }
input, select { height: 40px; padding: 0 12px; }
.btn {
  height: 40px;
  padding: 0 15px;
  border: 1px solid transparent;
  border-radius: 10px;
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  white-space: nowrap;
}
.btn:disabled { opacity: .45; cursor: wait; }
.btn.primary { background: linear-gradient(145deg, var(--blue), var(--blue2)); box-shadow: 0 8px 20px #315ee82d; }
.btn.ghost { color: #d3dfed; border-color: #294058; background: #102030; }
.btn.wide { width: 100%; }

.modal {
  position: fixed;
  inset: 0;
  z-index: 1400;
  padding: 24px;
  display: grid;
  place-items: center;
  background: rgba(2, 8, 14, .82);
}
.modal-card {
  width: 420px;
  max-height: calc(100vh - 48px);
  padding: 32px;
  overflow: auto;
  border: 1px solid #2a4158;
  border-radius: 20px;
  background: #0d1b28;
  box-shadow: 0 30px 80px #0008;
  contain: paint;
  transform: translateZ(0);
}
.auth-card { text-align: center; }
.company-auth-card { width: min(480px, calc(100vw - 36px)); padding: 34px; text-align: left; }
.company-auth-card .brand-mark { margin-bottom: 18px; }
.company-auth-card .eyebrow { display: block; text-align: center; }
.company-auth-card h2 { margin: 8px 0; text-align: center; font-size: 24px; }
.modal-card p { margin: 0; color: var(--muted); line-height: 1.7; font-size: 14px; }
.auth-panel .auth-field { margin: 11px 0; display: grid; gap: 6px; color: #8ea5bb; }
.auth-panel .auth-field input { width: 100%; height: 46px; margin: 0; padding: 0 14px; color: #e2ebf5; border-color: #2c4962; border-radius: 11px; background: #07131e; }
.auth-field input:focus { border-color: #547edf; box-shadow: 0 0 0 3px #416fd129; }
.auth-help { display: block; margin-top: 14px; color: #67829a; font-size: 13px; line-height: 1.6; text-align: center; }
.error-text { min-height: 18px; margin-top: 8px; color: var(--red); font-size: 13px; }

.build-mismatch { min-height: 100vh; padding: 30px; display: grid; place-items: center; background: radial-gradient(circle at top, #142d4d, #050c13 58%); }
.build-mismatch section { width: min(720px, calc(100vw - 60px)); padding: 40px; border: 2px solid #526fa8; border-radius: 24px; background: #0c1b29; text-align: center; box-shadow: 0 35px 100px #000a; }
.build-mismatch h1 { margin: 22px 0 12px; font-size: 32px; }
.build-mismatch p { color: #a9bed2; line-height: 1.75; }
.build-mismatch .build-root { padding: 12px; border: 1px solid #2d4964; border-radius: 10px; color: #8eacd0; background: #07131e; word-break: break-all; }
.build-mismatch small { display: block; margin-top: 18px; color: #7890a8; }

html[data-theme="light"] {
  color-scheme: light;
  --bg: #eafaff;
  --panel: #fff;
  --line: #b8e1ec;
  --text: #123a4d;
  --muted: #52788a;
  --muted2: #6c91a1;
  --blue: #1781b5;
  --blue2: #0d6f9d;
  --cyan: #2aa9ca;
  --green: #168b69;
  --red: #c44d62;
  --shell-rail-surface: #ddf6fb;
  --workspace-divider: #9bd5e3;
}
html[data-theme="light"] body { color: var(--text); background: var(--bg); }
html[data-theme="light"] .app-shell { background: radial-gradient(circle at 78% -8%, #c9f4ff, transparent 36%), #eafaff; }
html[data-theme="light"] .sidebar { color: #164359; }
html[data-theme="light"] .brand small { color: #53869d; }
html[data-theme="light"] .nav-item { color: #3c3155; }
html[data-theme="light"] .nav-item .nav-icon { color: #59467d; background: #ffffffa8; }
html[data-theme="light"] .nav-item.active { color: #fff; border-color: #1781b5; background: linear-gradient(135deg, #1781b5, #0c6d99); }
html[data-theme="light"] .panel, html[data-theme="light"] .metric { color: #123a4d; border-color: #b8e1ec; background: #fff; }
html[data-theme="light"] :is(input, textarea, select) { color: #123a4d; border-color: #9bcfdd; background: #fff; }
html[data-theme="light"] .modal { background: rgba(32, 79, 96, .28); }
html[data-theme="light"] .modal-card { color: #123a4d; border-color: #80bfd2; background: #f8fdff; box-shadow: 0 30px 80px #0d52633d; }
html[data-theme="light"] .auth-panel .auth-field { color: #52788a; }
html[data-theme="light"] .auth-panel .auth-field input { color: #123a4d; border-color: #9bcfdd; background: #fff; }
html[data-theme="light"] .auth-help { color: #52788a; }
html[data-theme="light"] :is(.task-log-btn, .user-icon-btn) { color: #fff; border-color: #1479aa; background: #1781b5; box-shadow: 0 8px 20px #1781b533; }
html[data-theme="light"] .top-points-btn { border-color: #d3b15f; background: #f7fdff; box-shadow: 0 7px 18px #1781b518; }
html[data-theme="light"] .top-points-btn strong { color: #c9941e; }
html[data-theme="light"] .project-select-btn { color: #123a4d; border-color: #87c3d4; background: linear-gradient(145deg, #fff, #effaff); }
html[data-theme="light"] .build-mismatch { background: #b9eaf36e; }

@media (min-width: 861px) {
  html, body { height: 100%; overflow: hidden; }
  .app-shell { height: 100dvh; min-height: 0; overflow: hidden; }
  .workspace { height: 100dvh; min-height: 0; display: grid; grid-template-rows: var(--compact-topbar-height) minmax(0, 1fr); overflow: hidden; }
  #content { height: 100%; min-height: 0; overflow-y: auto; }
}
/* ================= 26.3 r164 首页统一玻璃胶囊与最近项目卡片 ================= */
:root {
  --dashboard-glass: rgba(11, 18, 34, .62);
  --dashboard-glass-strong: rgba(12, 20, 39, .78);
  --dashboard-glass-line: rgba(205, 214, 255, .16);
  --dashboard-glass-highlight: rgba(255, 255, 255, .09);
  --dashboard-violet: #9b7cff;
}

/* Fixed attachment and full-screen animated composites were especially expensive
   when Edge fell back to WARP software rendering. */
html[data-theme] .sidebar,
html[data-theme] .workspace > .topbar {
  background-attachment: scroll !important;
}
body[data-page="dashboard"] .app-shell::before {
  inset: 0 !important;
  filter: none !important;
  transform: none !important;
  animation: none !important;
}
body[data-page="dashboard"] .app-shell::after { display: none !important; }

html[data-theme] body[data-page="dashboard"] .sidebar {
  padding: 16px 12px 14px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
body[data-page="dashboard"] .sidebar .brand { padding: 3px 8px 14px; }
body[data-page="dashboard"] .sidebar #nav {
  min-height: 0;
  padding: 12px 8px;
  display: grid;
  align-content: start;
  gap: 5px;
  overflow-y: auto;
  border: 1px solid var(--dashboard-glass-line);
  border-radius: 34px;
  background: linear-gradient(155deg, var(--dashboard-glass-highlight), transparent 32%), var(--dashboard-glass);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 22px 52px rgba(0,0,0,.24);
  -webkit-backdrop-filter: blur(18px) saturate(128%);
  backdrop-filter: blur(18px) saturate(128%);
  scrollbar-width: none;
  contain: paint;
}
body[data-page="dashboard"] .sidebar #nav::-webkit-scrollbar { display: none; }
body[data-page="dashboard"] .sidebar .nav-item {
  min-height: 44px !important;
  height: 44px !important;
  padding: 5px 8px !important;
  border-radius: 22px !important;
  background: transparent;
}
body[data-page="dashboard"] .sidebar .nav-item:is(:hover, :focus-visible) { background: rgba(255,255,255,.065); }
body[data-page="dashboard"] .sidebar .nav-item.active {
  border-color: rgba(180,160,255,.38) !important;
  background: linear-gradient(135deg, rgba(135,98,242,.74), rgba(68,102,207,.66)) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 8px 20px rgba(58,40,142,.25);
}
body[data-page="dashboard"] .sidebar-foot { border: 0 !important; }

html[data-theme] body[data-page="dashboard"] .workspace > .topbar {
  padding: 10px 22px 8px 20px !important;
  display: flex !important;
  align-items: center;
  gap: 12px;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
body[data-page="dashboard"] .topbar-title { margin-right: auto; }
body[data-page="dashboard"] #content {
  border: 0 !important;
  border-radius: 0 !important;
}
body[data-page="dashboard"] .top-actions-v2 { gap: 10px !important; }
body[data-page="dashboard"] .top-actions-v2 > :is(button, .notification-wrap, .user-menu-wrap),
body[data-page="dashboard"] .top-context-switchers > * {
  filter: none !important;
}
body[data-page="dashboard"] :is(.top-theme-btn, .top-points-btn, .notification-btn, .user-icon-btn, .project-select-btn, .dashboard-project-group-control) {
  border: 1px solid var(--dashboard-glass-line) !important;
  background: linear-gradient(145deg, rgba(255,255,255,.09), rgba(255,255,255,.018)), var(--dashboard-glass) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.09), 0 12px 28px rgba(0,0,0,.18) !important;
  -webkit-backdrop-filter: blur(14px) saturate(125%);
  backdrop-filter: blur(14px) saturate(125%);
}
body[data-page="dashboard"] :is(.top-theme-btn, .notification-btn, .user-icon-btn) { border-radius: 50% !important; }
body[data-page="dashboard"] .top-points-btn { border-radius: 24px !important; }
.top-context-switchers {
  display: grid;
  grid-template-columns: repeat(2, 190px);
  align-items: center;
  gap: 10px;
}
.top-context-switchers > :is(.dashboard-project-group-control, .top-project-stack) {
  position: relative !important;
  inset: auto !important;
  width: 190px !important;
  height: 48px !important;
  margin: 0 !important;
}
.top-context-switchers .dashboard-project-group-control { display: block; padding: 0; border-radius: 15px; overflow: hidden; }
.top-context-switchers .dashboard-project-group-control.hidden { display: none !important; }
.top-context-switchers .dashboard-project-group-control select {
  width: 100% !important;
  height: 100% !important;
  padding: 0 34px 0 15px !important;
  color: var(--text) !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: transparent !important;
  box-shadow: none !important;
  font-weight: 800;
  text-overflow: ellipsis;
}
.top-context-switchers .custom-project-switcher,
.top-context-switchers .project-select-btn { width: 100% !important; height: 48px !important; }
.top-context-switchers .project-select-btn { border-radius: 15px !important; }

#page-dashboard .dashboard-project-deck {
  position: relative;
  margin: 4px 0 28px;
  padding: 4px 0 0;
}
#page-dashboard .dashboard-project-deck-head {
  margin: 0 0 16px;
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
}
#page-dashboard .dashboard-project-deck-head span {
  display: block;
  margin-bottom: 3px;
  color: #a58cff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .16em;
}
#page-dashboard .dashboard-project-deck-head h2 { margin: 0; font-size: clamp(24px, 2vw, 32px); line-height: 1.15; }
#page-dashboard .dashboard-project-deck-head p { margin: 0 0 3px; color: var(--muted); font-size: 13px; }
#page-dashboard .dashboard-project-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 15px;
}
#page-dashboard .dashboard-recent-projects { display: contents; }
#page-dashboard .dashboard-project-card {
  min-width: 0;
  height: 286px;
  overflow: hidden;
  color: var(--text);
  border: 1px solid var(--dashboard-glass-line);
  border-radius: 24px;
  background: linear-gradient(150deg, rgba(255,255,255,.105), rgba(255,255,255,.018) 42%), var(--dashboard-glass);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.09), 0 18px 42px rgba(0,0,0,.2);
  -webkit-backdrop-filter: blur(15px) saturate(126%);
  backdrop-filter: blur(15px) saturate(126%);
  contain: paint;
}
#page-dashboard .dashboard-project-card.is-active {
  border-color: rgba(167,135,255,.72);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 0 0 1px rgba(145,111,255,.2), 0 20px 48px rgba(50,33,120,.28);
}
#page-dashboard .dashboard-project-cover {
  position: relative;
  width: 100%;
  height: 176px;
  padding: 0;
  overflow: hidden;
  color: #fff;
  border: 0;
  background: linear-gradient(135deg, #29345f, #442d70 52%, #152e4d);
}
#page-dashboard .dashboard-project-cover img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .25s ease; }
#page-dashboard .dashboard-project-cover:is(:hover, :focus-visible) img { transform: scale(1.025); }
#page-dashboard .dashboard-project-cover:focus-visible { outline: 2px solid #bcaaff; outline-offset: -3px; }
#page-dashboard .dashboard-project-cover-shade { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(4,7,18,.72)); }
#page-dashboard .dashboard-project-cover b {
  position: absolute;
  left: 13px;
  bottom: 11px;
  padding: 5px 9px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 999px;
  background: rgba(8,10,24,.48);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  font-size: 11px;
}
#page-dashboard .dashboard-project-monogram { width: 100%; height: 100%; display: grid; place-items: center; color: rgba(255,255,255,.86); font-size: 62px; font-weight: 900; text-shadow: 0 8px 28px rgba(0,0,0,.25); }
#page-dashboard .dashboard-project-card-body { padding: 12px 13px 13px; }
#page-dashboard .dashboard-project-card-title { min-width: 0; display: grid; gap: 2px; }
#page-dashboard .dashboard-project-card-title strong { overflow: hidden; font-size: 16px; white-space: nowrap; text-overflow: ellipsis; }
#page-dashboard .dashboard-project-card-title small { color: var(--muted); font-size: 11px; }
#page-dashboard .dashboard-project-card-tools { margin-top: 9px; display: flex; align-items: center; gap: 5px; }
#page-dashboard .dashboard-project-card-tools label { flex: 1 1 62px; min-width: 58px; }
#page-dashboard .dashboard-project-card-tools select,
#page-dashboard .dashboard-project-card-tools button {
  height: 30px;
  min-width: 0;
  padding: 0 8px;
  color: #dfe6fb;
  border: 1px solid rgba(188,199,235,.16);
  border-radius: 9px;
  background: rgba(6,11,25,.44);
  font-size: 11px;
  font-weight: 800;
}
#page-dashboard .dashboard-project-card-tools select { width: 100%; padding-right: 18px; }
#page-dashboard .dashboard-project-card-tools button:is(:hover, :focus-visible) { border-color: rgba(169,140,255,.6); color: #fff; outline: none; }
#page-dashboard .dashboard-project-card-tools .is-danger { color: #ff9aa8; }
#page-dashboard .dashboard-project-card.is-empty { display: grid; place-items: center; align-content: center; gap: 5px; border-style: dashed; color: var(--muted); text-align: center; }
#page-dashboard .dashboard-project-card.is-empty span { color: var(--text); font-weight: 850; }
#page-dashboard .dashboard-project-card.is-empty small { max-width: 150px; }
#page-dashboard .dashboard-project-add {
  padding: 24px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 7px;
  border-style: dashed;
  background: linear-gradient(145deg, rgba(146,111,255,.09), rgba(255,255,255,.018)), var(--dashboard-glass);
  text-align: center;
}
#page-dashboard .dashboard-project-add-icon {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(177,151,255,.48);
  border-radius: 22px;
  background: rgba(121,86,226,.15);
  color: #c8b7ff;
  font-size: 38px;
  line-height: 1;
}
#page-dashboard .dashboard-project-add strong { margin-top: 5px; font-size: 17px; }
#page-dashboard .dashboard-project-add small { color: var(--muted); font-size: 11px; }
#page-dashboard .dashboard-project-add:is(:hover, :focus-visible) { border-color: rgba(177,151,255,.76); background-color: rgba(30,24,61,.72); outline: none; }

/* The poster wall is 20% larger and user-controlled; no perpetual compositor work. */
#page-dashboard .dashboard-showcase { content-visibility: auto; contain-intrinsic-size: 560px; }
#page-dashboard .dashboard-showcase-viewport {
  min-height: 540px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  mask-image: none !important;
  scroll-snap-type: x proximity !important;
  scrollbar-color: rgba(157,132,255,.5) transparent;
  scrollbar-width: thin;
}
#page-dashboard .dashboard-showcase-track {
  min-height: 540px !important;
  animation: none !important;
  will-change: auto !important;
  transform: none;
}
#page-dashboard .showcase-marquee-group { gap: 22px !important; padding-right: 22px !important; }
#page-dashboard .showcase-poster,
#page-dashboard .showcase-add {
  flex-basis: clamp(246px, 18vw, 296px) !important;
  width: clamp(246px, 18vw, 296px) !important;
  scroll-snap-align: start !important;
}
#page-dashboard .showcase-floating-add { top: 235px !important; }

html[data-theme="light"] {
  --dashboard-glass: rgba(242, 250, 255, .64);
  --dashboard-glass-strong: rgba(247, 252, 255, .82);
  --dashboard-glass-line: rgba(48, 107, 145, .18);
  --dashboard-glass-highlight: rgba(255,255,255,.62);
}
html[data-theme="light"] #page-dashboard .dashboard-project-card-tools :is(select, button) { color: #24465d; background: rgba(255,255,255,.58); }
html[data-theme="light"] #page-dashboard .dashboard-project-card-tools .is-danger { color: #b83c52; }
html[data-theme="light"] #page-dashboard .dashboard-project-cover b { color: #fff; }

@media (max-width: 1280px) {
  .top-context-switchers { grid-template-columns: repeat(2, 168px); }
  .top-context-switchers > :is(.dashboard-project-group-control, .top-project-stack) { width: 168px !important; }
  body[data-page="dashboard"] .topbar-title p { display: none; }
}
@media (max-width: 1040px) and (min-width: 861px) {
  #page-dashboard .dashboard-project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-page="dashboard"] .topbar-title { display: none; }
}
@media (max-width: 860px) {
  body[data-page="dashboard"] .sidebar { padding: 7px 8px !important; }
  body[data-page="dashboard"] .sidebar #nav { padding: 3px; display: flex; border-radius: 22px; overflow-x: auto; overflow-y: hidden; }
  body[data-page="dashboard"] .workspace > .topbar { padding: 10px 11px !important; flex-wrap: wrap; }
  body[data-page="dashboard"] .topbar-title { width: 100%; }
  .top-context-switchers { grid-template-columns: repeat(2, minmax(156px, 1fr)); }
  .top-context-switchers > :is(.dashboard-project-group-control, .top-project-stack) { width: 100% !important; }
  #page-dashboard .dashboard-project-deck-head p { display: none; }
  #page-dashboard .dashboard-project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #page-dashboard .dashboard-project-card { height: 260px; border-radius: 19px; }
  #page-dashboard .dashboard-project-cover { height: 154px; }
  #page-dashboard .dashboard-showcase-viewport,
  #page-dashboard .dashboard-showcase-track { min-height: 468px !important; }
  #page-dashboard .showcase-poster,
  #page-dashboard .showcase-add { flex-basis: clamp(216px, 52vw, 252px) !important; width: clamp(216px, 52vw, 252px) !important; }
  #page-dashboard .showcase-floating-add { top: 202px !important; }
}
@media (max-width: 560px) {
  .top-context-switchers { width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #page-dashboard .dashboard-project-grid { grid-template-columns: minmax(0, 1fr); }
}


@media (max-width: 860px) {
  html, body { width: 100%; max-width: 100%; overflow-x: hidden; font-size: 15px; }
  .app-shell { display: block; width: 100%; grid-template-columns: minmax(0, 1fr); }
  .sidebar {
    position: sticky;
    top: 0;
    z-index: 500;
    width: 100%;
    min-width: 0;
    height: auto;
    padding: 7px 8px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    overflow: visible;
    border-bottom: 1px solid var(--line);
  }
  .sidebar .brand { padding: 0; gap: 6px; }
  .sidebar .brand-mark { width: 34px; height: 34px; flex-basis: 34px; border-radius: 10px; }
  .sidebar .brand strong { display: none; }
  .sidebar .brand small, .sidebar .sidebar-foot, .sidebar .theme-toggle-btn { display: none; }
  .sidebar nav { min-width: 0; padding: 2px 1px 5px; display: flex; gap: 5px; overflow-x: auto; overflow-y: hidden; }
  .sidebar .nav-item { flex: 0 0 auto; width: auto; min-width: 46px; height: 42px; min-height: 42px; padding: 5px 9px; gap: 6px; font-size: 0; }
  .sidebar .nav-item .nav-icon { flex-basis: 24px; width: 24px; height: 24px; padding: 4px; }
  .workspace { width: 100%; min-width: 0; }
  .workspace > .topbar { position: relative; width: 100%; height: auto; min-height: 0; padding: 11px 12px; display: flex; flex-wrap: wrap; gap: 9px; }
  .topbar-title { flex: 1 1 100%; width: 100%; }
  .topbar-title h1 { font-size: 21px; }
  .topbar-title p { font-size: 12px; }
  .top-actions-v2 { flex: 1 1 100%; width: 100%; justify-content: flex-start; overflow-x: auto; }
  .top-actions-v2 > * { flex: 0 0 auto; }
  #content { width: 100%; padding: 12px 11px 28px; }
  .metric-grid, .two-col { grid-template-columns: minmax(0, 1fr); }
  .hero { padding: 118px 14px 22px; }
  .modal { padding: 10px; }
  .modal-card { width: 100%; max-width: 100%; max-height: calc(100dvh - 20px); margin: 0; }
}

/* ================= 26.3 r163 连续一体式磨砂导航轨道 ================= */
:root {
  --navigation-glass-fill: rgba(6, 18, 31, .62);
  --navigation-glass-sheen: linear-gradient(118deg, rgba(255, 255, 255, .10), rgba(255, 255, 255, .025) 38%, rgba(75, 143, 209, .07) 100%);
}
html[data-theme="light"] {
  --navigation-glass-fill: rgba(225, 247, 251, .66);
  --navigation-glass-sheen: linear-gradient(118deg, rgba(255, 255, 255, .62), rgba(255, 255, 255, .18) 38%, rgba(65, 166, 194, .08) 100%);
}

/* A fixed-position sheen gives both elements the same optical surface instead
   of restarting the gradient independently at their shared corner. */
.sidebar,
.workspace > .topbar {
  background-color: var(--navigation-glass-fill) !important;
  background-image: var(--navigation-glass-sheen) !important;
  background-attachment: fixed !important;
  background-position: 0 0 !important;
  background-size: 100vw 100vh !important;
  border: 0 !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: blur(24px) saturate(155%) !important;
  backdrop-filter: blur(24px) saturate(155%) !important;
}
html[data-theme] .sidebar,
html[data-theme] .workspace > .topbar {
  background-color: var(--navigation-glass-fill) !important;
  background-image: var(--navigation-glass-sheen) !important;
  border: 0 !important;
  box-shadow: none !important;
}


@media (min-width: 861px) {
  /* The former radius exposed a separate rail-coloured pocket at the join.
     A square content corner lets the two glass navigation arms meet cleanly. */
  #content {
    border-top-left-radius: 0 !important;
  }
}

/* ================= r165 全局影院胶囊导航与横向创作台 ================= */
:root{--gfill:rgba(7,18,34,.68);--gstrong:rgba(8,21,39,.86);--gline:rgba(199,214,255,.18);--gshadow:0 18px 44px rgba(0,0,0,.26)}
html[data-theme="light"]{--gfill:rgba(229,247,252,.68);--gstrong:rgba(239,251,254,.88);--gline:rgba(46,111,146,.19);--gshadow:0 18px 44px rgba(26,78,103,.14)}
html[data-theme] body .app-shell{isolation:isolate;background:#06111d!important}
html[data-theme] body .app-shell::before{content:"";position:fixed;z-index:0;inset:0!important;display:block!important;pointer-events:none;background:linear-gradient(90deg,rgba(2,10,20,.78),rgba(2,10,20,.47) 42%,rgba(2,10,20,.24)),linear-gradient(180deg,rgba(1,7,16,.22),rgba(1,8,18,.58)),url("/dashboard-cinema-hero-20260824.png") center 32%/cover no-repeat!important;filter:none!important;transform:none!important;animation:none!important}
html[data-theme="light"] body .app-shell::before{opacity:.5;background:linear-gradient(90deg,rgba(235,250,253,.72),rgba(230,247,251,.42)),linear-gradient(180deg,rgba(242,252,255,.2),rgba(226,244,249,.56)),url("/dashboard-cinema-hero-20260824.png") center 32%/cover no-repeat!important}
html[data-theme] body .app-shell::after{display:none!important}
html[data-theme] body .app-shell>:is(.sidebar,.workspace){position:relative;z-index:2}
html[data-theme] body :is(.workspace,#content){background-color:transparent!important;background-image:none!important}
html[data-theme] body .workspace>.topbar{background:transparent!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
html[data-theme] body .sidebar{padding:16px 12px 14px!important;background:transparent!important;border:0!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
html[data-theme] body .sidebar .brand{padding:3px 8px 9px!important}
html[data-theme] body .sidebar #nav{width:calc(100% - 14px);min-height:0;margin:16px auto 0;padding:15px 8px;display:grid;align-content:start;gap:10px!important;overflow-x:hidden;overflow-y:auto;border:0;border-radius:36px;background:linear-gradient(150deg,rgba(255,255,255,.105),rgba(255,255,255,.016) 38%),var(--gfill)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),var(--gshadow)!important;-webkit-backdrop-filter:blur(19px) saturate(132%)!important;backdrop-filter:blur(19px) saturate(132%)!important;scrollbar-width:none;contain:paint}
html[data-theme] body .sidebar #nav::-webkit-scrollbar{display:none}
html[data-theme] body .sidebar .nav-icon{display:grid!important;flex:0 0 auto}
html[data-theme] body .sidebar .nav-item{min-height:43px!important;height:43px!important;padding:5px 11px!important;display:flex;justify-content:flex-start!important;gap:8px!important;border-radius:23px!important;text-align:left;letter-spacing:.04em}
html[data-theme] body .sidebar .nav-item:is(:hover,:focus-visible){background:rgba(255,255,255,.07)!important}
html[data-theme] body .sidebar .nav-item.active{border-color:rgba(185,165,255,.4)!important;background:linear-gradient(135deg,rgba(136,99,242,.78),rgba(55,107,205,.7))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 9px 22px rgba(43,32,132,.28)!important}
html[data-theme] body .sidebar .tutorial-nav-label{flex:0 0 auto}
html[data-theme] body .sidebar .tutorial-new-badge{position:absolute;right:9px}
html[data-theme] body .sidebar-foot{border:0!important}
html[data-theme] body :is(.sidebar,.workspace>.topbar)::before,
html[data-theme] body :is(.sidebar,.workspace>.topbar)::after{border:0!important;box-shadow:none!important}
html[data-theme] body[data-page]:not([data-page="dashboard"]){--bg:#090817;--bg2:#100d24;--panel:#17132c;--panel2:#1d1737;--line:rgba(139,112,211,.2);--line2:rgba(156,128,232,.3)}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content{border:0!important}
html[data-theme] body[data-page]:not([data-page="dashboard"]) .app-shell::before{background:linear-gradient(90deg,rgba(9,5,25,.9),rgba(16,8,41,.69) 48%,rgba(12,8,34,.55)),linear-gradient(180deg,rgba(19,9,48,.38),rgba(5,9,24,.76)),url("/dashboard-cinema-hero-20260824.png") center 32%/cover no-repeat!important}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .panel{border-color:rgba(145,118,219,.16)!important;background:linear-gradient(145deg,rgba(27,20,57,.88),rgba(9,16,35,.88))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 16px 42px rgba(2,4,18,.22)!important}
html[data-theme] body[data-page]:not([data-page="dashboard"]) :is(input,textarea,select){border-color:rgba(139,112,211,.22);background-color:rgba(10,10,29,.78)}
html[data-theme="light"] body[data-page]:not([data-page="dashboard"]){--bg:#ebe8f6;--bg2:#e4e1f2;--panel:#f3f0fa;--panel2:#ebe7f6;--line:rgba(100,76,166,.18);--line2:rgba(100,76,166,.27)}
html[data-theme="light"] body[data-page]:not([data-page="dashboard"]) .app-shell::before{opacity:.58;background:linear-gradient(90deg,rgba(242,239,252,.88),rgba(230,224,247,.67)),linear-gradient(180deg,rgba(236,230,250,.42),rgba(226,230,244,.74)),url("/dashboard-cinema-hero-20260824.png") center 32%/cover no-repeat!important}
html[data-theme="light"] body[data-page]:not([data-page="dashboard"]) #content .panel{background:linear-gradient(145deg,rgba(247,244,253,.9),rgba(232,237,249,.88))!important}
html[data-theme] body :is(.top-theme-btn,.top-points-btn,.notification-btn,.user-icon-btn,.project-select-btn,.dashboard-project-group-control){border:1px solid var(--gline)!important;background:linear-gradient(145deg,rgba(255,255,255,.095),rgba(255,255,255,.018)),var(--gfill)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 12px 28px rgba(0,0,0,.18)!important;-webkit-backdrop-filter:blur(15px) saturate(126%)!important;backdrop-filter:blur(15px) saturate(126%)!important}
html[data-theme] body :is(.task-log-popover,.notification-popover){border:1px solid var(--gline)!important;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.012)),var(--gstrong)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 24px 60px rgba(0,0,0,.34)!important;-webkit-backdrop-filter:blur(20px) saturate(132%)!important;backdrop-filter:blur(20px) saturate(132%)!important}
html[data-theme] body .notification-list{padding:8px 0 2px!important}
html[data-theme] body .notification-list .notification-item{width:85%!important;margin:0 auto 7px!important;border:1px solid rgba(184,166,242,.2)!important;border-radius:13px!important;background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(121,92,202,.045)),rgba(7,18,36,.54)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.075),0 9px 22px rgba(0,0,0,.13)!important;-webkit-backdrop-filter:blur(13px) saturate(128%)!important;backdrop-filter:blur(13px) saturate(128%)!important}
html[data-theme] body .notification-list .notification-item.unread{background:linear-gradient(145deg,rgba(76,164,226,.14),rgba(130,94,224,.07)),rgba(7,22,42,.58)!important;box-shadow:inset 3px 0 0 rgba(63,183,255,.82),inset 0 1px 0 rgba(255,255,255,.08),0 9px 22px rgba(0,0,0,.14)!important}
html[data-theme] body .notification-list .notification-item:hover{background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(133,98,225,.09)),rgba(10,25,46,.62)!important}
html[data-theme="light"] body .notification-list .notification-item{background:linear-gradient(145deg,rgba(255,255,255,.7),rgba(119,94,195,.07)),rgba(224,241,249,.64)!important}
html[data-theme="light"] body .notification-list .notification-item.unread{background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(73,173,221,.13)),rgba(218,239,248,.7)!important}
html[data-theme] body .notification-expand-btn{width:calc(85% - 2px);min-height:34px;margin:7px auto 12px;display:block;color:var(--text);border:1px solid var(--gline);border-radius:17px;background:rgba(255,255,255,.055);font-weight:800;cursor:pointer}
html[data-theme] body .notification-expand-btn:is(:hover,:focus-visible){border-color:rgba(165,140,255,.55);background:rgba(135,101,232,.16);outline:none}
html[data-theme] body .notification-expand-btn.hidden{display:none!important}
html[data-theme] body .task-log-title-row{display:flex;align-items:center;gap:10px}
#page-dashboard{--dashboard-section-gap:18px}
#page-dashboard .dashboard-project-deck{flex:0 0 auto;margin:0 0 var(--dashboard-section-gap)!important;padding:0!important;min-width:0}
#page-dashboard .dashboard-project-deck-head{margin:0 0 10px!important;min-height:30px}
#page-dashboard .dashboard-project-deck-head span,#page-dashboard .dashboard-project-deck-head p{display:none!important}
#page-dashboard .dashboard-project-deck-head h2{font-size:clamp(22px,1.72vw,28px)!important}
#page-dashboard .dashboard-project-grid{width:100%;padding:1px 1px 4px;display:flex!important;align-items:stretch;gap:12px!important;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-behavior:smooth;scrollbar-width:none}
#page-dashboard .dashboard-project-grid::-webkit-scrollbar{display:none}
#page-dashboard .dashboard-recent-projects{display:contents!important}
#page-dashboard .dashboard-project-card{position:relative;flex:0 0 clamp(230px,18vw,300px)!important;width:clamp(230px,18vw,300px)!important;min-width:clamp(230px,18vw,300px)!important;height:229px!important;border-radius:19px!important}
#page-dashboard .dashboard-project-cover{height:137px!important}
#page-dashboard .dashboard-project-monogram{font-size:48px!important}
#page-dashboard .dashboard-project-card-body{padding:8px 9px 9px!important}
#page-dashboard .dashboard-project-card-title{gap:1px!important}
#page-dashboard .dashboard-project-card-title strong{font-size:14px!important}
#page-dashboard .dashboard-project-card-title small{font-size:10px!important}
#page-dashboard .dashboard-project-card-tools{margin-top:6px!important;gap:6px!important}
#page-dashboard .dashboard-project-card-tools label{flex:0 0 64px!important;width:64px!important;min-width:64px!important}
#page-dashboard .dashboard-project-card-tools :is(select,button){height:34px!important;min-width:43px!important;padding:0 9px!important;border-radius:10px!important;font-size:11px!important}
#page-dashboard .dashboard-project-card-tools select{width:64px!important;padding-right:18px!important}
#page-dashboard .dashboard-project-pin{position:absolute;z-index:5;top:9px;right:9px;width:34px;height:34px;padding:7px;display:grid;place-items:center;color:#f1edff;border:1px solid rgba(211,203,255,.3);border-radius:50%;background:rgba(7,12,27,.58);box-shadow:0 8px 22px rgba(0,0,0,.24);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}
#page-dashboard .dashboard-project-pin svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}
#page-dashboard .dashboard-project-pin.is-pinned{color:#ffe09a;border-color:rgba(255,211,113,.55);background:rgba(127,83,18,.6)}
#page-dashboard .dashboard-project-name-input{width:100%;height:27px;padding:0 8px;color:var(--text);border:1px solid rgba(172,143,255,.66);border-radius:8px;background:rgba(4,10,24,.64);outline:none;font-weight:850}
#page-dashboard .dashboard-project-add{padding:16px!important}
#page-dashboard .dashboard-project-add-icon{width:50px!important;height:50px!important;border-radius:17px!important;font-size:31px!important}
#page-dashboard .dashboard-project-add strong{font-size:15px!important}
#page-dashboard .dashboard-project-add small{font-size:10px!important}
#page-dashboard .dashboard-launchpad{flex:0 0 auto;width:min(100%,1000px)!important;margin:0 auto var(--dashboard-section-gap)!important}
#page-dashboard .dashboard-entry-card{min-height:146px!important;height:146px!important}
#page-dashboard .dashboard-showcase{position:relative;flex:1 1 auto;min-height:0;margin:0!important;padding:0!important;display:flex;flex-direction:column;overflow:visible!important;contain:none!important;content-visibility:visible!important}
#page-dashboard .dashboard-showcase-head{position:static!important;flex:0 0 auto;min-height:30px!important;margin:0 0 8px!important;padding:0 4px!important;pointer-events:auto!important}
#page-dashboard .dashboard-showcase-head>div{display:flex;align-items:center;gap:8px}
#page-dashboard .dashboard-showcase-head span{color:#a991ff}
#page-dashboard .dashboard-showcase-head h3{margin:0;font-size:21px!important}
#page-dashboard .dashboard-showcase-viewport{flex:0 0 auto;min-height:0!important;height:clamp(270px,calc(80dvh - 488px),421px)!important;overflow:hidden!important;mask-image:linear-gradient(90deg,transparent 0,#000 24px,#000 calc(100% - 24px),transparent 100%)!important;scroll-snap-type:none!important;scrollbar-width:none!important}
html[data-theme] body #page-dashboard .dashboard-showcase-track{--showcase-marquee-duration:34s;min-height:0!important;height:100%!important;padding:0!important;display:flex!important;align-items:stretch!important;gap:0!important;animation:homepageShowcaseMarquee var(--showcase-marquee-duration) linear infinite!important;will-change:transform!important;transform:translate3d(0,0,0)}
html[data-theme] body #page-dashboard .dashboard-showcase-track.is-paused{animation-play-state:paused!important}
html[data-theme] body #page-dashboard .dashboard-showcase-track.is-static{animation:none!important;transform:none!important}
#page-dashboard .showcase-marquee-group{height:100%;display:flex!important;align-items:stretch!important;gap:18px!important;padding-right:18px!important}
#page-dashboard .showcase-poster{flex:0 0 auto!important;width:auto!important;height:100%!important;aspect-ratio:9/16!important;scroll-snap-align:none!important}
#page-dashboard .showcase-floating-add{top:50%!important;right:24px!important;transform:translateY(-50%)}
@keyframes homepageShowcaseMarquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(var(--showcase-marquee-offset,-50%),0,0)}}
@media (min-width:861px){body[data-page="dashboard"] #content{padding-top:8px!important;padding-bottom:8px!important;overflow:hidden!important}body[data-page="dashboard"] #page-dashboard.page.active{height:100%;min-height:0;display:flex!important;flex-direction:column;overflow:hidden}}
@media (max-width:860px){html[data-theme] body .sidebar{padding:7px 8px!important}html[data-theme] body .sidebar .brand{padding:2px 5px 5px!important}html[data-theme] body .sidebar #nav{margin-top:0;padding:4px;display:flex;gap:5px;border-radius:24px;overflow-x:auto;overflow-y:hidden}html[data-theme] body .sidebar .nav-item{min-width:72px;height:40px!important;min-height:40px!important}#page-dashboard .dashboard-project-card{flex-basis:min(76vw,280px)!important;width:min(76vw,280px)!important;min-width:min(76vw,280px)!important}#page-dashboard .dashboard-entry-card{height:auto!important;min-height:146px!important}#page-dashboard .dashboard-showcase-viewport{height:336px!important}}
@media (prefers-reduced-motion:reduce){html[data-theme] body #page-dashboard .dashboard-showcase-viewport{overflow-x:auto!important}html[data-theme] body #page-dashboard .dashboard-showcase-track{animation:none!important;transform:none!important}html[data-theme] body #page-dashboard .showcase-marquee-group[aria-hidden="true"]{display:none!important}}

/* ================= r167 全局双主题玻璃系统与宽松首页节奏 ================= */
html[data-theme="dark"] body[data-page]:not([data-page="dashboard"]){
  --page-canvas:#080719;
  --page-glass:rgba(22,15,48,.66);
  --page-glass-soft:rgba(20,18,48,.46);
  --page-glass-strong:rgba(16,11,38,.78);
  --page-glass-line:rgba(171,145,236,.22);
  --page-glass-highlight:rgba(255,255,255,.065);
  --page-control:rgba(12,11,31,.68);
  --page-accent:#8065e8;
  --page-accent-strong:#6546d2;
}
html[data-theme="light"] body[data-page]:not([data-page="dashboard"]){
  --page-canvas:#e9e5f4;
  --page-glass:rgba(249,247,255,.7);
  --page-glass-soft:rgba(239,237,250,.58);
  --page-glass-strong:rgba(252,250,255,.82);
  --page-glass-line:rgba(92,69,158,.2);
  --page-glass-highlight:rgba(255,255,255,.78);
  --page-control:rgba(255,255,255,.68);
  --page-accent:#5b43c2;
  --page-accent-strong:#44319c;
  --bg:#e9e5f4;
  --bg2:#e3dfef;
  --panel:#f4f1fa;
  --panel2:#ece8f5;
  --line:rgba(92,69,158,.2);
  --line2:rgba(92,69,158,.3);
  --text:#241c3d;
  --muted:#625978;
  --muted2:#786f8d;
  --blue:#5b43c2;
  --blue2:#44319c;
}
html[data-theme="dark"] body[data-page]:not([data-page="dashboard"]) .app-shell{
  background:var(--page-canvas)!important;
}
html[data-theme="dark"] body[data-page]:not([data-page="dashboard"]) .app-shell::before{
  opacity:1!important;
  background:
    linear-gradient(90deg,rgba(8,4,23,.8),rgba(20,9,49,.56) 48%,rgba(11,8,34,.44)),
    linear-gradient(180deg,rgba(35,14,75,.25),rgba(5,8,24,.65)),
    url("/dashboard-cinema-hero-20260824.png") center 32%/cover no-repeat!important;
}
html[data-theme="light"] body[data-page]:not([data-page="dashboard"]) .app-shell{
  background:var(--page-canvas)!important;
}
html[data-theme="light"] body[data-page]:not([data-page="dashboard"]) .app-shell::before{
  opacity:1!important;
  background:
    linear-gradient(90deg,rgba(239,235,250,.72),rgba(226,219,244,.53) 50%,rgba(231,227,247,.48)),
    linear-gradient(180deg,rgba(243,238,253,.32),rgba(225,228,243,.62)),
    url("/dashboard-cinema-hero-20260824.png") center 32%/cover no-repeat!important;
}

/* 页面级卡片、模块和控制台共享同一玻璃材质。 */
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.panel,[class$="-card"],[class*="-card "],[class$="-panel"],[class*="-panel "],
.prompt-episode-group,.material-item,.video-option-field,.video-current-prompt,.sticky-page-control-shell){
  border-color:var(--page-glass-line)!important;
  background:
    linear-gradient(145deg,var(--page-glass-highlight),transparent 34%),
    var(--page-glass)!important;
  box-shadow:inset 0 1px 0 var(--page-glass-highlight),0 16px 38px rgba(3,2,18,.16)!important;
  -webkit-backdrop-filter:blur(13px) saturate(128%)!important;
  backdrop-filter:blur(13px) saturate(128%)!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.toolbar-panel,.video-control-panel,.asset-library-toolbar,.material-panel,.chat-workspace,.chat-agent-panel){
  background:
    linear-gradient(135deg,var(--page-glass-highlight),transparent 38%),
    var(--page-glass-strong)!important;
  -webkit-backdrop-filter:blur(17px) saturate(132%)!important;
  backdrop-filter:blur(17px) saturate(132%)!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.compact-card-head,.compact-card-body,.work-id,.work-body,.video-job-body,.video-history-body,
.asset-body,.panel-head,.material-panel-head,.prompt-episode-group-toggle,.shot-index){
  border-color:var(--page-glass-line)!important;
  background:transparent!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.video-option-field,.asset-type-tabs,.episode-tabs,.video-episode-tabs,.asset-search-control,
.option-toggle,.episode-tab,.asset-type-tab){
  border-color:var(--page-glass-line)!important;
  background:var(--page-glass-soft)!important;
  -webkit-backdrop-filter:blur(10px) saturate(122%)!important;
  backdrop-filter:blur(10px) saturate(122%)!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.video-work-card.selected,.asset-card.generating,.asset-history-card.current,.video-history-card.current){
  border-color:var(--page-accent)!important;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--page-accent) 42%,transparent),0 16px 38px rgba(3,2,18,.2)!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"])
:is(input,textarea,select){
  color:var(--text)!important;
  border-color:var(--page-glass-line)!important;
  background:var(--page-control)!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"])
:is(input,textarea,select):focus{
  border-color:var(--page-accent)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--page-accent) 18%,transparent)!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.sticky-page-control-shell)::before,
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.sticky-page-control-shell)::after{
  background:transparent!important;
}
html[data-theme="light"] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.prompt-card p,.video-card p,.task-card p,.compact-field p,.work-body p,.video-job-body p){
  color:#49405f!important;
}
html[data-theme="light"] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(h2,h3,h4,strong,.compact-card-head strong,.work-id strong){
  color:#241c3d;
}

/* 浅色模式顶部控制：以深紫和墨色文字建立清晰对比。 */
html[data-theme="light"] body :is(.top-theme-btn,.notification-btn,.user-icon-btn){
  color:#fff!important;
  border-color:#47329f!important;
  background:linear-gradient(145deg,#6850d2,#4935a5)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 10px 24px rgba(67,46,145,.25)!important;
}
html[data-theme="light"] body :is(.top-theme-btn,.notification-btn,.user-icon-btn)
:is(.theme-toggle-icon,.task-log-icon,span,svg){
  color:#fff!important;
  stroke:currentColor!important;
}
html[data-theme="light"] body :is(.top-theme-btn,.notification-btn,.user-icon-btn):is(:hover,:focus-visible){
  border-color:#2f2079!important;
  background:linear-gradient(145deg,#5941c4,#39278d)!important;
  outline:3px solid rgba(88,64,190,.2);
  outline-offset:2px;
}
html[data-theme="light"] body .top-points-btn{
  color:#563900!important;
  border-color:#c69a32!important;
  background:linear-gradient(145deg,rgba(255,253,241,.96),rgba(255,238,186,.88))!important;
  box-shadow:inset 0 1px 0 #fff,0 9px 22px rgba(129,91,16,.16)!important;
}
html[data-theme="light"] body .top-points-btn strong{color:#563900!important}
html[data-theme="light"] body :is(.project-select-btn,.dashboard-project-group-control){
  color:#241c3d!important;
  border-color:rgba(79,58,145,.42)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(231,226,248,.84))!important;
  box-shadow:inset 0 1px 0 #fff,0 9px 22px rgba(70,53,125,.13)!important;
}
html[data-theme="light"] body :is(.project-select-btn,.dashboard-project-group-control) :is(strong,small,select,svg){
  color:#241c3d!important;
  stroke:currentColor!important;
}
html[data-theme="light"] body .project-select-copy small{color:#625978!important}

/* 浅色模式常用按钮和选项统一成可读的紫色控制体系。 */
html[data-theme="light"] body :is(.btn.ghost,.btn.secondary,.mini-btn,.icon-btn,.video-card-button,.video-job-action)
:not(.danger):not(.danger-text):not(.primary-action):not(.warning){
  color:#33265f!important;
  border-color:rgba(75,54,145,.38)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.9),rgba(228,224,245,.86))!important;
  box-shadow:inset 0 1px 0 #fff,0 6px 16px rgba(70,53,125,.1)!important;
}
html[data-theme="light"] body :is(.btn.primary,.primary-action,.asset-type-tab.active,.episode-tab.active,.option-toggle.active){
  color:#fff!important;
  border-color:#402b9c!important;
  background:linear-gradient(145deg,#654bc9,#4630a2)!important;
  box-shadow:0 8px 20px rgba(66,43,150,.22)!important;
}
html[data-theme="light"] body :is(.btn.danger,.mini-btn.danger,.danger-text){
  color:#8f243c!important;
  border-color:rgba(161,51,76,.38)!important;
  background:rgba(255,238,243,.88)!important;
}
html[data-theme="light"] body :is(.btn.warning,.video-job-action.warning){
  color:#684200!important;
  border-color:#c18a22!important;
  background:#fff2c8!important;
}
html[data-theme="light"] body :is(.btn,.mini-btn,.icon-btn,.video-card-button,.video-job-action):is(:hover,:focus-visible):not(:disabled){
  filter:none!important;
  outline:3px solid rgba(82,59,174,.18);
  outline-offset:1px;
}

/* 项目置顶采用填充态，不再只依赖微弱边框差异。 */
#page-dashboard .dashboard-project-pin.is-pinned,
#page-dashboard .dashboard-project-pin[aria-pressed="true"]{
  color:#2c1900!important;
  border-color:#ffe19a!important;
  background:linear-gradient(145deg,#ffd96f,#f2aa2f)!important;
  box-shadow:0 0 0 3px rgba(255,196,68,.2),0 10px 24px rgba(79,44,0,.3)!important;
}
#page-dashboard .dashboard-project-pin.is-pinned svg,
#page-dashboard .dashboard-project-pin[aria-pressed="true"] svg{
  fill:currentColor!important;
  stroke:currentColor!important;
}
html[data-theme="light"] #page-dashboard .dashboard-project-pin:not(.is-pinned){
  color:#3e2f74;
  border-color:rgba(70,48,139,.4);
  background:rgba(249,247,255,.82);
}

/* 首页三段采用同一节奏：项目、入口、海报标题之间保持严格等距。 */
#page-dashboard .dashboard-launchpad{
  width:min(100%,1120px)!important;
}
#page-dashboard .dashboard-entry-grid{
  grid-template-columns:repeat(2,minmax(0,540px))!important;
  gap:20px!important;
}
#page-dashboard .dashboard-entry-card{
  min-height:176px!important;
  height:176px!important;
  padding:18px 28px!important;
  grid-template-columns:68px minmax(0,1fr)!important;
  gap:22px!important;
}
#page-dashboard .dashboard-entry-copy{
  align-content:center;
}
#page-dashboard .dashboard-entry-copy small{
  line-height:1.55;
  letter-spacing:.12em!important;
}
#page-dashboard .dashboard-entry-copy strong{
  margin-top:4px!important;
  font-size:clamp(30px,2.15vw,36px)!important;
  line-height:1.22!important;
  letter-spacing:.08em!important;
}
#page-dashboard .dashboard-entry-copy em{
  margin-top:5px!important;
  line-height:1.72!important;
}
#page-dashboard .dashboard-entry-copy b{
  min-height:36px!important;
  margin-top:8px!important;
  padding-inline:18px!important;
  gap:14px!important;
  letter-spacing:.08em;
}
@media (min-width:861px){
  body[data-page="dashboard"] #page-dashboard.page.active{
    justify-content:flex-start!important;
    row-gap:var(--dashboard-section-gap);
  }
  #page-dashboard .dashboard-project-deck,
  #page-dashboard .dashboard-launchpad{
    margin-top:0!important;
    margin-bottom:0!important;
  }
  #page-dashboard .dashboard-showcase{
    flex:1 1 auto!important;
    min-height:0!important;
    width:100%;
    display:flex!important;
    justify-content:flex-end!important;
  }
  #page-dashboard .dashboard-showcase-head{
    position:static!important;
    margin:0 0 8px!important;
    padding-left:4px!important;
  }
  #page-dashboard .dashboard-showcase-viewport{
    flex:1 1 auto!important;
    height:auto!important;
    min-height:240px!important;
    max-height:421px!important;
  }
}
@media (max-width:860px){
  #page-dashboard .dashboard-project-deck,
  #page-dashboard .dashboard-launchpad{margin-bottom:20px!important}
  #page-dashboard .dashboard-entry-grid{grid-template-columns:minmax(0,1fr)!important}
  #page-dashboard .dashboard-entry-card{height:auto!important;min-height:176px!important}
  #page-dashboard .dashboard-showcase{display:flex!important}
  #page-dashboard .dashboard-showcase-head{position:static!important;margin-bottom:8px!important}
}


/* ================= r167.1 性能分层玻璃、浅色可读性与无缝边界 ================= */
html[data-theme] body .workspace::before,
html[data-theme] body .workspace::after{
  content:none!important;
  display:none!important;
  border:0!important;
  box-shadow:none!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content{
  border:0!important;
  box-shadow:none!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active{
  color:var(--text);
}

/* 只让一级工作台承担高强度模糊；大量重复卡片用透明度和内高光模拟玻璃，降低 Edge 合成负担。 */
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.editor-panel,.toolbar-panel,.asset-library-toolbar,.video-control-panel,.material-panel,
.chat-agent-panel,.chat-workspace,.backup-panel,.employee-admin-panel,.audit-panel,
.developer-lock-panel,.developer-toolbar,.developer-agent-list-panel,.developer-agent-editor,
.commercial-code-panel,.commercial-tariff-panel,.commercial-history-panel,
.manual-recharge-review-panel,.tutorial-hero,.tutorial-step){
  border-color:var(--page-glass-line)!important;
  background:
    linear-gradient(138deg,var(--page-glass-highlight),transparent 36%),
    var(--page-glass-strong)!important;
  box-shadow:inset 0 1px 0 var(--page-glass-highlight),0 18px 44px rgba(3,2,18,.18)!important;
  -webkit-backdrop-filter:blur(18px) saturate(132%)!important;
  backdrop-filter:blur(18px) saturate(132%)!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(
  .episode-card,.asset-card,.asset-history-card,.shot-card,.prompt-card,
  .video-work-card,.rich-video-card,.video-card,.video-history-card,.failed-video-group-card,
  .chat-agent-item,.chat-bubble,.chat-file-card,.chat-billing-card,
  .runtime-card,.backup-item,.employee-row,.audit-row,
  .developer-api-card,.developer-credential,.developer-agent-item,.knowledge-item,
  .generated-code-row,.commercial-tariff-list article,.redemption-history-row,
  .manual-recharge-review-row
){
  border-color:var(--page-glass-line)!important;
  background:
    linear-gradient(145deg,var(--page-glass-highlight),transparent 38%),
    var(--page-glass)!important;
  box-shadow:inset 0 1px 0 var(--page-glass-highlight),0 12px 30px rgba(3,2,18,.14)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(
  #scriptEditor,.file-info,.script-drop-zone,
  .asset-type-tabs,.asset-search-control,.asset-generation-settings-popover,.asset-global-more-menu,
  .variant-edit-panel,.asset-more-menu,.asset-comment-list,.asset-comment-draft-entry,
  .asset-revision-prompt,.asset-audio-upload-panel,.asset-audio-file-status,
  .compact-card-head,.shot-index,.preview-card-foot,.episode-tabs,.episode-tab,
  .prompt-episode-group,.prompt-episode-group-toggle,
  .work-id,.video-current-prompt,.material-item,.model-hint,.toggle-box,
  .video-option-field,.video-failure-detail,.video-history-prompt,
  .chat-composer,.chat-input-shell,.chat-pending-file,.chat-uploading,.chat-message-files.output,
  .employee-stats span,.channel-enable-line,.developer-agent-head,.developer-editor-tabs,
  .developer-editor-foot,.toggle-field,.inline-check,.style-prompt-intro,.knowledge-drop-zone,
  .developer-permanent-section,.developer-knowledge-quick,.developer-style-quick,
  .tutorial-flow span
){
  color:var(--text);
  border-color:var(--page-glass-line)!important;
  background:
    linear-gradient(145deg,var(--page-glass-highlight),transparent 44%),
    var(--page-glass-soft)!important;
  box-shadow:inset 0 1px 0 var(--page-glass-highlight)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.asset-body,.compact-card-body,.work-body,.video-job-body,.video-history-body,.panel-head,.material-panel-head){
  background:transparent!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
.prompt-episode-group.prompt-episode-tab-content{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}

/* 首屏阶段即采用最终的无缝集合/吸顶壳，避免运行时样式到达前闪出矩形色块。 */
html[data-theme] body[data-page="assets"] #content #page-assets.page.active>.sticky-page-control-shell,
html[data-theme] body[data-page="videos"] #content #page-videos.page.active>.sticky-page-control-shell{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
}
html[data-theme] body[data-page="assets"] #content #page-assets.page.active>.sticky-page-control-shell::before,
html[data-theme] body[data-page="assets"] #content #page-assets.page.active>.sticky-page-control-shell::after,
html[data-theme] body[data-page="videos"] #content #page-videos.page.active>.sticky-page-control-shell::before,
html[data-theme] body[data-page="videos"] #content #page-videos.page.active>.sticky-page-control-shell::after{
  content:none!important;
  display:none!important;
}
html[data-theme] body #content .page.active :is(
  #shotGrid,#promptGrid,.prompt-episode-tab-content,.prompt-episode-card-grid,
  .video-generate-section,.video-generate-body,#videoPromptGrid,#videoGrid,#assetGrid
){
  border:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html[data-theme] body #page-videos .video-options-grid-v24{border-top:0!important;background:transparent!important;box-shadow:none!important}
html[data-theme] body #page-videos .video-control-panel>.video-console-header{border-bottom:0!important}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
.sticky-page-control-shell{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
.sticky-page-control-shell::before,
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
.sticky-page-control-shell::after{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* 交互和语义状态要压过通用玻璃表面。 */
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.episode-tab.active,.asset-type-tab.active,.option-toggle.active,.video-work-card.selected,
.asset-history-card.current,.video-history-card.current){
  color:#fff!important;
  border-color:var(--page-accent)!important;
  background:linear-gradient(145deg,var(--page-accent),var(--page-accent-strong))!important;
  box-shadow:0 0 0 2px color-mix(in srgb,var(--page-accent) 24%,transparent),0 12px 28px rgba(38,22,101,.22)!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.failed-video-group-card,.error,.is-error){
  border-color:rgba(224,80,111,.62)!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
.chat-message.user .chat-bubble{
  color:#fff!important;
  border-color:rgba(172,147,255,.56)!important;
  background:linear-gradient(145deg,#7457d8,#4d37a7)!important;
}
html[data-theme="dark"] body .employee-creation-notice{
  color:#f0eaff!important;
  border-color:rgba(174,146,238,.3)!important;
  background:rgba(31,20,62,.72)!important;
}

/* 浅色表面采用同一套淡紫底、墨紫字和可辨识边界。 */
html[data-theme="light"] body{
  --light-control-border:#9583ba;
  --light-text:#241c3d;
  --light-secondary:#49405f;
  --light-focus:#745dc3;
}
html[data-theme="light"] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(p,small,.muted,.field-hint,.model-hint,.developer-note,.tutorial-step p){
  color:var(--light-secondary);
}
html[data-theme="light"] body[data-page]:not([data-page="dashboard"])
:is(input,textarea,select){
  color-scheme:light;
}
html[data-theme="light"] body
:is(.project-select-btn,.dashboard-project-group-control){
  border-color:var(--light-control-border)!important;
}
html[data-theme="light"] body
:is(.btn.ghost,.btn.secondary,.mini-btn,.small-btn,.icon-btn,.video-card-button,.video-job-action)
:not(.danger):not(.danger-text):not(.primary-action):not(.warning){
  border-color:var(--light-control-border)!important;
}
html[data-theme="light"] body
:is(.btn,.mini-btn,.small-btn,.icon-btn,.video-card-button,.video-job-action):focus-visible{
  outline:3px solid var(--light-focus)!important;
  outline-offset:2px!important;
}
html[data-theme="light"] body .top-points-btn{
  border-color:#aa7b1f!important;
}
html[data-theme="light"] body .project-select-copy small,
html[data-theme="light"] body .project-select-chevron{
  color:var(--light-secondary)!important;
}
html[data-theme="light"] body .project-select-chevron{
  border-color:var(--light-control-border)!important;
}
html[data-theme="light"] body .dashboard-project-group-control::before{
  background-color:var(--light-control-border)!important;
}
html[data-theme="light"] body .notification-list .notification-item{
  color:var(--light-text)!important;
  border-color:var(--light-control-border)!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.76),rgba(116,83,199,.08)),
    rgba(246,242,255,.8)!important;
}
html[data-theme="light"] body .notification-list .notification-item.unread{
  color:var(--light-text)!important;
  border-color:#806bc0!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.82),rgba(87,105,210,.1)),
    rgba(238,234,255,.84)!important;
}
html[data-theme="light"] body .notification-list .notification-item:hover,
html[data-theme="light"] body .notification-list .notification-item.unread:hover{
  color:var(--light-text)!important;
  border-color:#745dc3!important;
  background:rgba(235,229,255,.96)!important;
}
html[data-theme="light"] body
:is(.notification-item small,.notification-item time,.notification-item>b,
.task-log-head small,.task-log-item small,.task-log-item>b){
  color:var(--light-secondary)!important;
}
html[data-theme="light"] body .notification-expand-btn{
  color:var(--light-text)!important;
  border-color:var(--light-control-border)!important;
  background:rgba(246,242,255,.86)!important;
}
html[data-theme="light"] body :is(.notification-popover,.task-log-popover){
  color:var(--light-text)!important;
  border-color:var(--light-control-border)!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.82),rgba(110,82,190,.06)),
    rgba(246,242,255,.9)!important;
}
@media (max-width:860px){
  html[data-theme] body[data-page]:not([data-page="dashboard"]) #content{
    border:0!important;
    border-radius:0!important;
  }
}


/* r167.2：补齐不会以 card/panel 结尾的配置导航和嵌套表面。 */
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
:is(.developer-tabs,.developer-tab:not(.active),.asset-generation-settings-popover>section,.chat-welcome){
  color:var(--text)!important;
  border-color:var(--page-glass-line)!important;
  background:
    linear-gradient(145deg,var(--page-glass-highlight),transparent 44%),
    var(--page-glass-soft)!important;
  box-shadow:inset 0 1px 0 var(--page-glass-highlight)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
html[data-theme] body[data-page]:not([data-page="dashboard"]) #content .page.active
.developer-tab.active{
  color:#fff!important;
  border-color:var(--page-accent)!important;
  background:linear-gradient(145deg,var(--page-accent),var(--page-accent-strong))!important;
}
html[data-theme="light"] #assetModal .asset-editor-compare>div>span{
  background:linear-gradient(145deg,#654bc9,#4630a2)!important;
  box-shadow:0 8px 20px rgba(66,43,150,.22)!important;
}

/* r171 首屏关键形态：运行时样式加载前也不闪现旧的暗带、方形积分或重复字段背板。 */
html[data-theme] body .top-points-btn{border-radius:999px!important}
html[data-theme="light"] body #page-dashboard .dashboard-project-card{box-shadow:inset 0 1px 0 rgba(255,255,255,.78)!important}
html[data-theme="light"] body #page-dashboard .dashboard-project-card.is-active{box-shadow:inset 0 1px 0 rgba(255,255,255,.86),0 0 0 1px rgba(126,91,224,.14)!important}
html[data-theme] body[data-page="videos"] #content #page-videos.page.active .video-options-grid-v24>.video-option-field{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
#page-videos #videoMaterialPanel>.material-panel-head{border-bottom:0!important}
#page-videos>.video-section-divider{display:none!important}
@media (min-width:861px){
  html[data-theme] body[data-page] .workspace>.topbar{width:100%!important;height:var(--compact-topbar-height)!important;min-height:var(--compact-topbar-height)!important;max-height:var(--compact-topbar-height)!important;padding:8px 22px 8px 20px!important;display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;grid-template-rows:54px!important;align-items:center!important;gap:12px!important}
  html[data-theme] body[data-page] .workspace>.topbar>#taskProgressDock{grid-column:1;grid-row:1;justify-self:center;width:min(100%,540px)!important;min-width:0!important;margin:0!important}
  html[data-theme] body[data-page] .workspace>.topbar>.top-actions-v2{grid-column:2;grid-row:1;justify-self:end;width:max-content!important;min-width:max-content!important;margin:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important}
}
@media (min-width:861px) and (max-width:1380px){html[data-theme] body[data-page] .workspace>.topbar>#taskProgressDock{grid-template-columns:minmax(72px,1fr) 40px auto 10px!important;gap:8px!important}html[data-theme] body[data-page] .workspace>.topbar>#taskProgressDock>.task-dock-copy{display:none!important}}

/* r184 首屏按钮与浮窗遮罩：运行时样式到达前也使用同一半透明镜片。 */
:root{
  --bootstrap-button-glass-fill:rgba(13,13,35,.58);
  --bootstrap-button-glass-line:rgba(191,176,239,.31);
  --bootstrap-button-glass-text:#eeeaff;
}
html[data-theme="light"]{
  --bootstrap-button-glass-fill:rgba(255,255,255,.62);
  --bootstrap-button-glass-line:rgba(79,58,145,.32);
  --bootstrap-button-glass-text:#33265f;
}
html[data-theme] body .btn{
  color:var(--bootstrap-button-glass-text)!important;
  border-color:var(--bootstrap-button-glass-line)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.14),transparent 44%),var(--bootstrap-button-glass-fill)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 8px 20px rgba(20,12,61,.16)!important;
  -webkit-backdrop-filter:blur(10px) saturate(126%)!important;
  backdrop-filter:blur(10px) saturate(126%)!important;
}
html[data-theme] body .btn.primary{
  color:#fff!important;
  border-color:rgba(184,163,255,.58)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.22),transparent 42%),rgba(75,48,171,.74)!important;
}
html[data-theme] body>.modal{inset:0!important;background:rgba(8,7,23,.76)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
html[data-theme="light"] body>.modal{background:rgba(224,222,239,.79)!important}
html[data-theme] body>#taskProgressDock{position:fixed!important;left:50vw!important;top:14px!important;width:min(540px,30vw)!important;margin:0!important;transform:translateX(-50%)!important;z-index:2147483647!important}

/* r215：桌面窗口恢复为 Windows 原生标题栏和缩放边框。 */
html[data-theme] body.auth-pending>#authModal{
  background:
    radial-gradient(circle at 50% 42%,rgba(99,76,186,.16),transparent 34%),
    linear-gradient(90deg,rgba(5,5,19,.9),rgba(16,9,41,.72) 52%,rgba(7,8,25,.84)),
    url("/dashboard-cinema-hero-20260824.png") center 34%/cover no-repeat!important;
}
html[data-theme="light"] body.auth-pending>#authModal{
  background:
    radial-gradient(circle at 50% 42%,rgba(104,75,190,.13),transparent 36%),
    linear-gradient(90deg,rgba(235,231,247,.9),rgba(232,226,247,.77) 52%,rgba(232,235,248,.86)),
    url("/dashboard-cinema-hero-20260824.png") center 34%/cover no-repeat!important;
}
.top-create-group-btn{
  height:48px!important;
  min-width:112px;
  padding:0 15px!important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  color:#e8e3fb!important;
  border:1px solid rgba(151,127,229,.34)!important;
  border-radius:15px!important;
  background:linear-gradient(145deg,rgba(119,82,215,.23),rgba(29,26,68,.7))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 9px 24px rgba(11,8,35,.16)!important;
  white-space:nowrap;
}
.top-create-group-btn>span{font-size:20px;line-height:1}
.top-create-group-btn>strong{font-size:13px;font-weight:680}
.top-create-group-btn:is(:hover,:focus-visible){color:#fff!important;border-color:rgba(190,172,247,.62)!important;background:linear-gradient(145deg,rgba(132,92,236,.4),rgba(45,34,105,.82))!important}
html[data-theme="light"] .top-create-group-btn{color:#39265f!important;border-color:rgba(97,70,174,.28)!important;background:rgba(255,255,255,.58)!important}
@media (max-width:1180px){
  .top-create-group-btn{width:48px!important;min-width:48px!important;padding:0!important}
  .top-create-group-btn>strong{display:none}
}

/* r273: a compact refresh logo and one desktop alignment baseline. */
@media (min-width:861px) {
  html[data-theme] body[data-page] #content { padding-top:14px!important; }
  html[data-theme] body .sidebar #brandHomeBtn {
    display:flex;
    flex:0 0 56px;
    flex-direction:column;
    align-items:center;
    justify-content:flex-start;
    gap:0;
    width:100%;
    height:56px;
    min-height:56px;
    margin:0;
    padding:3px 0 5px!important;
    border:0;
    border-radius:12px;
    background:transparent;
    color:inherit;
    font:inherit;
    cursor:pointer;
  }
  html[data-theme] body .sidebar #brandHomeBtn .brand-mark {
    flex:0 0 48px;
    width:48px;
    height:48px;
    margin:0;
  }
  html[data-theme] body .sidebar #brandHomeBtn .sidebar-brand-copy,
  html[data-theme] body .sidebar #brandHomeBtn::after { display:none!important; }
  html[data-theme] body .sidebar #brandHomeBtn:is(:hover,:focus-visible) { background:rgba(114,88,255,.09); }
  html[data-theme] body .sidebar #brandHomeBtn:focus-visible { outline:2px solid #9578e8; outline-offset:2px; }
  html[data-theme] body .sidebar #nav { margin-top:12px; }
}

/* r274 logo: bare D marks with a shared, seamless violet/cyan light orbit. */
html[data-theme] body .app-shell {
  --brand-light:0;
  --brand-flow-state:paused;
  --brand-flow-violet:#a17dff;
  --brand-flow-cyan:#58d9ff;
  --brand-orbit-light:conic-gradient(from 15deg,transparent 0deg,#a17dff 42deg,#f2e7ff 58deg,transparent 85deg,transparent 175deg,#58d9ff 210deg,#e8ffff 228deg,transparent 255deg,transparent 1turn);
}
html[data-theme] body .app-shell:has(#brandHomeBtn:is(:hover,:focus-visible),#page-dashboard.active .dashboard-entry-hub:is(:hover,:focus-visible)) :is(.sidebar #brandHomeBtn .brand-mark,#page-dashboard .dashboard-entry-hub,#page-dashboard .dashboard-entry-links) {
  --brand-light:1;
  --brand-flow-state:running;
}
html[data-theme] body .sidebar #brandHomeBtn,
html[data-theme] body .sidebar #brandHomeBtn:is(:hover,:focus,:focus-visible,:active) {
  background:transparent!important;
  background-image:none!important;
  border-color:transparent!important;
  box-shadow:none!important;
  outline:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
html[data-theme] body .sidebar #brandHomeBtn .brand-mark {
  position:relative;
  isolation:isolate;
  overflow:visible;
  border:0;
  border-radius:50%;
  background:transparent!important;
  box-shadow:none!important;
}
html[data-theme] body .sidebar #brandHomeBtn .brand-mark img {
  position:relative;
  z-index:2;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:contain;
  border-radius:0;
  background:transparent!important;
  transform:translateX(-2.4%) scale(2.02);
  transform-origin:center;
  filter:brightness(calc(1 + var(--brand-light) * .14)) saturate(calc(1 + var(--brand-light) * .18)) drop-shadow(0 2px 4px rgba(15,12,50,.24));
  transition:filter .24s ease;
}
html[data-theme] body :is(.sidebar #brandHomeBtn .brand-mark,#page-dashboard .dashboard-entry-hub)::before,
html[data-theme] body :is(.sidebar #brandHomeBtn .brand-mark,#page-dashboard .dashboard-entry-hub)::after {
  content:"";
  position:absolute;
  z-index:1;
  inset:-7px;
  border-radius:50%;
  pointer-events:none;
  background:var(--brand-orbit-light);
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));
  mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));
  opacity:var(--brand-light);
  animation:daotuBrandOrbit 5.6s linear -1.1s infinite!important;
  animation-play-state:var(--brand-flow-state)!important;
  transition:opacity .28s ease;
}
html[data-theme] body :is(.sidebar #brandHomeBtn .brand-mark,#page-dashboard .dashboard-entry-hub)::after {
  inset:-11px;
  -webkit-mask:radial-gradient(farthest-side,transparent 62%,#000 83%,transparent 100%);
  mask:radial-gradient(farthest-side,transparent 62%,#000 83%,transparent 100%);
  filter:blur(5px);
  opacity:calc(var(--brand-light) * .72);
  animation-duration:7.4s!important;
  animation-direction:reverse!important;
}
html[data-theme] body #page-dashboard .dashboard-entry-hub,
html[data-theme] body #page-dashboard .dashboard-entry-hub:is(:hover,:focus-visible) {
  isolation:isolate;
  overflow:visible;
  border-color:color-mix(in srgb,var(--brand-flow-violet) 62%,transparent)!important;
  background:radial-gradient(circle at 40% 30%,#3b347b,#17132f 70%)!important;
  box-shadow:inset 0 0 0 4px rgba(255,255,255,.045),0 0 0 3px rgba(140,112,238,.11),-12px 0 30px rgba(130,75,234,.24),12px 0 30px rgba(44,168,242,.22)!important;
  scale:calc(1 + var(--brand-light) * .025)!important;
  outline:none;
  transition:scale .28s ease,box-shadow .28s ease,border-color .28s ease;
}
html[data-theme] body #page-dashboard .dashboard-entry-hub::before {
  inset:-6px;
  opacity:calc(.22 + var(--brand-light) * .78);
  -webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2.4px),#000 calc(100% - 1.6px));
  mask:radial-gradient(farthest-side,transparent calc(100% - 2.4px),#000 calc(100% - 1.6px));
}
html[data-theme] body #page-dashboard .dashboard-entry-hub::after { inset:-16px; filter:blur(9px); }
html[data-theme] body #page-dashboard .dashboard-entry-hub img,
html[data-theme] body #page-dashboard .dashboard-entry-hub:is(:hover,:focus-visible) img {
  filter:brightness(calc(1 + var(--brand-light) * .12)) saturate(calc(1 + var(--brand-light) * .16)) drop-shadow(0 4px 12px rgba(63,92,212,.28))!important;
  transition:filter .24s ease;
}
html[data-theme] body .sidebar #brandHomeBtn:focus-visible .brand-mark,
html[data-theme] body #page-dashboard .dashboard-entry-hub:focus-visible {
  outline:2px solid var(--brand-flow-cyan)!important;
  outline-offset:4px;
}
html[data-theme] body #page-dashboard .dashboard-entry-link-base path { opacity:.32!important; }
html[data-theme] body #page-dashboard .dashboard-entry-stream path,
html[data-theme] body #page-dashboard .dashboard-entry-hub:is(:hover,:focus-visible) + .dashboard-entry-links .dashboard-entry-stream path {
  opacity:calc(var(--brand-light) * .88)!important;
  animation:daotuBrandStream var(--stream-duration,4.6s) linear var(--stream-delay,0s) infinite!important;
  animation-play-state:var(--brand-flow-state)!important;
  transition:opacity .28s ease!important;
}
html[data-theme] body #page-dashboard .dashboard-entry-stream path.is-right { animation-direction:reverse!important; }
html[data-theme="light"] body .app-shell {
  --brand-flow-violet:#7750d6;
  --brand-flow-cyan:#159fc1;
  --brand-orbit-light:conic-gradient(from 15deg,transparent 0deg,#8b55e8 42deg,#5128be 58deg,transparent 85deg,transparent 175deg,#26bed0 210deg,#04769c 228deg,transparent 255deg,transparent 1turn);
}
html[data-theme="light"] body #page-dashboard .dashboard-entry-hub,
html[data-theme="light"] body #page-dashboard .dashboard-entry-hub:is(:hover,:focus-visible) {
  background:radial-gradient(circle at 40% 30%,#fff,#edeaff 72%)!important;
  box-shadow:inset 0 0 0 4px rgba(255,255,255,.62),0 0 0 3px rgba(110,77,200,.1),-12px 0 26px rgba(144,92,210,.15),12px 0 26px rgba(31,149,194,.15)!important;
}
@keyframes daotuBrandOrbit { from { transform:rotate(0turn); } to { transform:rotate(1turn); } }
/* Each inherited dash pattern completes exactly one repeating period per cycle. */
@keyframes daotuBrandStream { from { stroke-dashoffset:0; } to { stroke-dashoffset:var(--stream-loop,-81); } }
@media(prefers-reduced-motion:reduce) {
  html[data-theme] body :is(.sidebar #brandHomeBtn .brand-mark,#page-dashboard .dashboard-entry-hub)::before,
  html[data-theme] body :is(.sidebar #brandHomeBtn .brand-mark,#page-dashboard .dashboard-entry-hub)::after,
  html[data-theme] body #page-dashboard .dashboard-entry-stream path,
  html[data-theme] body #page-dashboard .dashboard-entry-hub:is(:hover,:focus-visible) + .dashboard-entry-links .dashboard-entry-stream path {
    animation:none!important;
    transition:none!important;
  }
  html[data-theme] body #page-dashboard .dashboard-entry-hub,
  html[data-theme] body #page-dashboard .dashboard-entry-hub:is(:hover,:focus-visible),
  html[data-theme] body #page-dashboard .dashboard-entry-hub img,
  html[data-theme] body .sidebar #brandHomeBtn .brand-mark img {
    transition:none!important;
    scale:1!important;
  }
}
/* Ended blocking tasks show a durable result, never a frozen running meter. */
#taskProgressDock.blocking-task-notice .task-dock-progress { visibility:hidden; }
#taskProgressDock.blocking-task-notice .task-dock-dot { animation:none!important; }
