/* Shared light-blue visual system for 蓝教授's public page and workspace. */
:root {
  --ink: #1c3552;
  --muted: #5e7694;
  --line: #d8e6f7;
  --panel: #ffffff;
  --page: #f2f7ff;
  --nav: #e9f3ff;
  --nav-strong: #dcecff;
  --blue: #4385d8;
  --blue-dark: #2d68b3;
  --blue-soft: #e8f2ff;
  --green: #4385d8;
  --orange: #739fd2;
  --shadow: 0 14px 36px rgba(47, 99, 160, 0.11);
}

body { color: var(--ink); background: var(--page); }

.site-header {
  color: #1d3a5e;
  background: linear-gradient(90deg, #f8fbff, #eaf3ff);
  border-bottom: 1px solid #dce9f8;
  box-shadow: 0 8px 24px rgba(54, 104, 165, .1);
}
.site-header a,
.site-header button,
.top-nav a { color: #294d76; }
.top-nav a.active,
.top-nav a:hover {
  color: #235f9f;
  background: #dbeaff;
}
.contact-chip,
.header-action {
  color: #315a85;
  background: #fff;
  border-color: #c9ddf4;
}
.header-action { background: #e9f3ff; }
.side-nav {
  color: #294b72;
  background: linear-gradient(180deg, #edf6ff, #e2efff);
  border-right: 1px solid #d2e2f5;
}
.side-title { color: #1d3b60; border-bottom-color: #d4e4f6; }
.nav-group p { color: #6885a6; }
.nav-item { color: #31577f; }
.nav-item:hover,
.nav-item.active {
  color: #1f5eaa;
  background: #d7e9ff;
}
.nav-item.muted { color: #6383a8; }
.work-area { background: #f2f7ff; }
.workspace-hub-head h1 { color: #1c3858; }
.workspace-hub-head p:not(.eyebrow) { color: #5e7897; font-size: 16px; }
.workspace-hub .eyebrow { color: #4c83bd; font-size: 13px; }
.workspace-hub-account {
  color: #3c6997;
  background: #e8f2ff;
  border-color: #d0e2f7;
  font-size: 14px;
}
.workspace-hub-account svg { color: #4b88cc; }
.workspace-service-card {
  color: #2d4e70;
  border-color: #d8e6f6;
  border-radius: 11px;
  box-shadow: 0 6px 20px rgba(45, 82, 125, .055);
}
.workspace-service-card:hover,
.workspace-service-card:focus-visible {
  border-color: #9fc3eb;
  box-shadow: 0 11px 25px rgba(45, 100, 163, .12);
}
.workspace-service-card.featured { border-color: #afccec; }
.service-card-icon { color: #4385d8; background: #e8f2ff; }
.service-card-copy strong { color: #284b70; font-size: 17px; }
.service-card-copy small { color: #5d7897; font-size: 14px; }
.service-card-arrow { color: #6691bf; }
.service-card-tag { color: #396b9d; background: #eaf3ff; font-size: 12px; }

/* Carry the light-blue palette through the right-hand workspace rail as well. */
.workspace-progress-panel {
  color: #1c3552;
  background: #f1f7ff;
}
.workspace-progress-panel .section-head h2,
.usage-guide h3,
.task-list-heading h3,
.utility-panel-head h3 { color: #24486e; }
.workspace-progress-panel .section-head p:last-child,
.usage-step p,
.usage-step ul,
.usage-faq p,
.utility-panel-head p:not(.eyebrow) { color: #617d9d; }
.workspace-progress-panel .stage-card,
.utility-parameter-panel {
  border-color: #d4e4f7;
  background: #f8fbff;
  box-shadow: 0 8px 22px rgba(55, 105, 164, .07);
}
.workspace-progress-panel .stage-header { border-bottom-color: #dce9f8; }
.workspace-progress-panel .stage-header strong,
.usage-step strong { color: #31577f; }
.workspace-progress-panel .stage-card pre { color: #5d7897; background: #edf5ff; }
.usage-step { border-bottom-color: #dce9f8; }
.usage-step-number {
  color: #356da9;
  background: #dfedff;
}
.usage-faq { border-top-color: #d4e4f7; }
.usage-faq p strong { color: #31577f; }
.task-item {
  color: #294c70;
  background: #f8fbff;
  border-color: #d4e4f7;
  border-left-color: #78a8df;
  box-shadow: 0 5px 16px rgba(55, 105, 164, .055);
}
.task-item.is-done,
.task-item.is-paused { border-left-color: #78a8df; }
.task-item-head span,
.task-item.is-done .task-item-head span,
.task-item.is-failed .task-item-head span,
.task-item.is-paused .task-item-head span {
  color: #35628f;
  background: #e5f0ff;
}
.task-item-time { color: #7892af !important; }
.task-progress-meta { color: #5d7897; }
.task-progress-meta b { color: #3678c3; }
.task-progress-track { background: #dfeaf7; }
.task-progress-track span { background: #4385d8; }
.task-progress-step { color: #829ab5; }
.task-progress-step.is-complete,
.task-progress-step.is-current { color: #3c648e; }
.task-progress-step::before {
  background: #d6e5f7;
  border-color: #f8fbff;
  box-shadow: 0 0 0 1px #b9d0eb;
}
.task-progress-step:not(:last-child)::after { background: #d6e5f7; }
.task-progress-step.is-complete::before,
.task-progress-step.is-current::before {
  background: #4385d8;
  box-shadow: 0 0 0 1px #4385d8;
}
.task-progress-step.is-complete:not(:last-child)::after { background: #8db7e8; }
.task-download-button { background: #4385d8; border-color: #4385d8; }
.task-download-button:hover { background: #2d68b3; border-color: #2d68b3; }
.workspace-progress-panel .task-refresh-button {
  color: #35628f;
  border-color: #c7dcf4;
  background: #edf5ff;
}
.workspace-progress-panel .task-refresh-button:hover { background: #e2efff; }
.utility-panel-head > span {
  color: #426b95;
  border-color: #d4e4f7;
  background: #edf5ff;
}
.utility-tool-picker,
.utility-param-item { color: #426487; }
.utility-tool-picker select,
.utility-param-item input,
.utility-param-item select {
  color: #294c70;
  border-color: #cbdff5;
}
.utility-tool-picker select:focus,
.utility-param-item input:focus,
.utility-param-item select:focus {
  border-color: #78a8df;
  box-shadow: 0 0 0 3px rgba(67, 133, 216, .12);
}
.empty-task {
  color: #6682a1;
  background: #f8fbff;
  border-color: #d4e4f7;
}

.marketing-site.landing-v2 {
  --landing-ink: #1b3552;
  --landing-muted: #58718f;
  --landing-blue: #4385d8;
  --landing-blue-dark: #2d68b3;
  --landing-blue-soft: #e8f2ff;
  --landing-green: var(--landing-blue);
  --landing-green-dark: var(--landing-blue-dark);
  --landing-green-soft: var(--landing-blue-soft);
  --landing-gold: #739fd2;
  --landing-paper: #f3f8ff;
  color: var(--landing-ink);
  background: var(--landing-paper);
  font-size: 16px;
}
.landing-v2 .marketing-header {
  background: rgba(250, 252, 255, .97);
  border-bottom-color: #dce9f8;
  box-shadow: 0 5px 22px rgba(43, 86, 139, .07);
}
.landing-v2 .marketing-brand span {
  background: #4385d8;
  box-shadow: 0 5px 14px rgba(67, 133, 216, .2);
}
.landing-v2 .marketing-header nav a,
.landing-v2 .marketing-login { color: #365b82; font-size: 14px; }
.landing-v2 .marketing-header nav a:hover { color: #245e9f; background: #e8f2ff; }
.landing-v2 .marketing-login { border-color: #cbdcf0; }
.landing-v2 .marketing-login:hover { color: #245e9f; border-color: #a9c9ed; }
.landing-v2 .marketing-header-cta {
  background: #4385d8;
  box-shadow: 0 7px 18px rgba(67, 133, 216, .2);
  font-size: 14px;
}
.landing-v2 .marketing-header-cta:hover { background: #2d68b3; }
.landing-v2 :focus-visible { outline-color: #76a9e5; }
.landing-v2 .announcement-bar {
  color: #f6faff;
  background: #2c659f;
  font-size: 14px;
}
.landing-v2 .announcement-bar svg { color: #cfe4ff; }
.landing-v2 .hero-section {
  background-color: #f3f8ff;
  background-image:
    linear-gradient(rgba(67, 117, 177, .055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(67, 117, 177, .055) 1px, transparent 1px),
    radial-gradient(ellipse at 15% 88%, rgba(160, 198, 239, .36), transparent 42%),
    radial-gradient(ellipse at 92% 8%, rgba(199, 222, 249, .42), transparent 35%);
}
.landing-v2 .hero-kicker,
.landing-v2 .section-label { color: #3678c3; font-size: 12px; }
.landing-v2 .hero-kicker { color: #315d8b; background: rgba(255, 255, 255, .96); border-color: #d7e6f7; }
.landing-v2 .hero-kicker span { background: #6e9fd6; box-shadow: 0 0 0 4px rgba(111, 161, 218, .18); }
.landing-v2 .hero-copy h1 { color: #1b3552; }
.landing-v2 .hero-copy h1 strong { color: #3678c3; }
.landing-v2 .hero-lede { color: #536e8d; font-size: 16px; }
.landing-v2 .primary-cta { background: #4385d8; box-shadow: 0 11px 23px rgba(67, 133, 216, .22); }
.landing-v2 .primary-cta:hover { background: #2d68b3; box-shadow: 0 14px 28px rgba(45, 104, 179, .24); }
.landing-v2 .secondary-cta { color: #365b82; background: rgba(255, 255, 255, .95); border-color: #ccdef2; }
.landing-v2 .secondary-cta:hover { color: #245e9f; border-color: #a9c9ed; }
.landing-v2 .primary-cta,
.landing-v2 .secondary-cta { font-size: 15px; }
.landing-v2 .proof-row { color: #597491; font-size: 14px; }
.landing-v2 .proof-row svg { color: #3678c3; }

.landing-v2 .assistant-demo { color: #233e5d; border-color: #d8e5f4; box-shadow: 0 23px 65px rgba(45, 78, 118, .14), 0 4px 13px rgba(45, 78, 118, .06); }
.landing-v2 .assistant-topbar { border-bottom-color: #e0ebf7; font-size: 14px; }
.landing-v2 .assistant-topbar b,
.landing-v2 .result-heading b,
.landing-v2 .result-row b { color: #294b70; }
.landing-v2 .online-dot { background: #5d9de2; box-shadow: 0 0 0 4px #e3f0ff; }
.landing-v2 .demo-label { color: #386b9e; background: #eaf3ff; font-size: 12px; }
.landing-v2 .assistant-body { background: linear-gradient(180deg, #fafdff, #f3f8ff); }
.landing-v2 .user-message { background: #4385d8; box-shadow: 0 6px 15px rgba(67, 133, 216, .18); font-size: 14px; }
.landing-v2 .assistant-result { border-color: #dce8f6; box-shadow: 0 3px 10px rgba(34, 71, 114, .045); }
.landing-v2 .result-heading { border-bottom-color: #e5eef8; }
.landing-v2 .result-heading > span,
.landing-v2 .example-files > div > svg { color: #3678c3; background: #e7f1ff; }
.landing-v2 .result-heading b,
.landing-v2 .result-row b { font-size: 14px; }
.landing-v2 .result-heading small,
.landing-v2 .result-row small { color: #6883a0; font-size: 12px; }
.landing-v2 .result-row { border-bottom-color: #e8eff8; }
.landing-v2 .result-row > span { color: #316da9; background: #e7f1ff; font-size: 12px; }
.landing-v2 .result-row > svg,
.landing-v2 .result-heading > svg { color: #7b98b7; }
.landing-v2 .example-files > div { background: #f7faff; border-color: #e0eaf6; }
.landing-v2 .example-files b { color: #36597e; font-size: 13px; }
.landing-v2 .example-files small { color: #748ba5; font-size: 12px; }
.landing-v2 .assistant-input { color: #6b83a0; border-color: #dce8f6; font-size: 13px; }
.landing-v2 .assistant-input svg { color: #3678c3; }
.landing-v2 .hero-art-caption { color: #66809b; font-size: 12px; }

.landing-v2 .topic-strip { background: #fbfdff; border-color: #dce8f6; }
.landing-v2 .topic-inner > p { color: #4e6c8e; font-size: 14px; }
.landing-v2 .topic-inner span { color: #3e6085; background: #f7faff; border-color: #dce8f6; font-size: 13px; }
.landing-v2 .capability-section { background: #f3f8ff; }
.landing-v2 .section-label { color: #3678c3; }
.landing-v2 .section-intro h2,
.landing-v2 .workflow-top h2,
.landing-v2 .faq-layout h2,
.landing-v2 .toolkit-heading h2 { color: #1b3552; }
.landing-v2 .section-intro h2 em,
.landing-v2 .workflow-top h2 strong { color: #3678c3; }
.landing-v2 .section-description,
.landing-v2 .method-copy > p:not(.eyebrow),
.landing-v2 .toolkit-heading > p,
.landing-v2 .workflow-top > p { color: #5d7694; font-size: 16px; }
.landing-v2 .method-showcase { border-color: #dce8f6; box-shadow: 0 15px 42px rgba(48, 84, 126, .07); }
.landing-v2 .method-copy .eyebrow { color: #356b9f; background: #eaf3ff; font-size: 12px; }
.landing-v2 .method-copy h3 { color: #274666; }
.landing-v2 .method-tags span { color: #3e6388; background: #eaf3ff; font-size: 13px; }
.landing-v2 .software-note { background: #f6faff; border-left-color: #8db7e8; }
.landing-v2 .software-note small,
.landing-v2 .software-note p { color: #66809d; font-size: 13px; }
.landing-v2 .software-note b { color: #385d83; border-color: #dce8f6; font-size: 13px; }
.landing-v2 .line-cta { color: #3678c3; font-size: 14px; }
.landing-v2 .data-demo { background: linear-gradient(145deg, #f7fbff, #edf5ff); border-color: #dce8f6; }
.landing-v2 .data-demo-head small { color: #6c88a6; font-size: 12px; }
.landing-v2 .data-demo-head b { color: #315577; font-size: 14px; }
.landing-v2 .data-demo-head > span { color: #4f78a3; font-size: 12px; }
.landing-v2 .data-demo-head > span i { background: #78a8df; }
.landing-v2 .matrix-labels span,
.landing-v2 .matrix-row b { color: #557391; font-size: 12px; }
.landing-v2 .tone-strong { background: #4385d8; }
.landing-v2 .tone-mid { background: #78a9df; }
.landing-v2 .tone-light { background: #b7d3f2; }
.landing-v2 .tone-soft { background: #e0edfb; }
.landing-v2 .data-demo-foot { color: #6883a0; font-size: 12px; }
.landing-v2 .data-demo-foot i { background: #b7d3f2; }
.landing-v2 .data-demo-foot i:last-of-type { background: #4385d8; }

.landing-v2 .toolkit-section,
.landing-v2 .faq-section,
.landing-v2 .landing-footer { background: #fbfdff; border-color: #dce8f6; }
.landing-v2 .toolkit-list { border-top-color: #dce8f6; }
.landing-v2 .toolkit-list article { border-bottom-color: #dce8f6; }
.landing-v2 .toolkit-list article > span { color: #7590ad; font-size: 12px; }
.landing-v2 .toolkit-list h3 { color: #315577; font-size: 15px; }
.landing-v2 .toolkit-list p { color: #5d7694; font-size: 14px; }
.landing-v2 .toolkit-list article > b,
.landing-v2 .toolkit-list article.toolkit-pending > b { color: #356b9f; background: #eaf3ff; font-size: 12px; }
.landing-v2 .toolkit-list article > svg,
.landing-v2 .toolkit-list article.toolkit-pending > svg { color: #6e90b5; }
.landing-v2 .toolkit-note { color: #5d7694; font-size: 13px; }
.landing-v2 .toolkit-note svg { color: #4d82bc; }
.landing-v2 .toolkit-cta { color: #3475bd; border-color: #a8c7e9; font-size: 14px; }
.landing-v2 .toolkit-cta:hover { background: #eaf3ff; }
.landing-v2 .workflow-section { background: #f0f6ff; }
.landing-v2 .workflow-steps { background: rgba(255, 255, 255, .86); border-color: #dce8f6; }
.landing-v2 .workflow-steps article { border-right-color: #dce8f6; }
.landing-v2 .workflow-steps article > span { color: #356ba2; background: #e4f0ff; font-size: 12px; }
.landing-v2 .workflow-steps article > svg { color: #4e86c2; }
.landing-v2 .workflow-steps h3 { color: #315577; font-size: 15px; }
.landing-v2 .workflow-steps p { color: #5d7694; font-size: 14px; }
.landing-v2 .faq-layout > div:first-child > p:last-child { color: #5d7694; font-size: 15px; }
.landing-v2 .faq-list details { border-color: #dce8f6; }
.landing-v2 .faq-list details[open] { border-color: #a9c8ea; }
.landing-v2 .faq-list summary { color: #315577; font-size: 15px; }
.landing-v2 .faq-list summary > span { color: #3678c3; background: #e8f2ff; }
.landing-v2 .faq-list details > p { color: #5d7694; border-top-color: #e4edf8; font-size: 14px; }
.landing-v2 .final-cta { color: #1d3b5d; background: linear-gradient(105deg, #e8f3ff, #dcecff 58%, #eff7ff); }
.landing-v2 .final-cta p { color: #3f73aa; font-size: 12px; }
.landing-v2 .final-cta h2 { color: #1d3b5d; }
.landing-v2 .final-cta span { color: #557698; font-size: 14px; }
.landing-v2 .primary-cta.inverted { color: #fff; background: #4385d8; }
.landing-v2 .primary-cta.inverted:hover { background: #2d68b3; }
.landing-v2 .landing-footer { color: #58718f; }
.landing-v2 .landing-footer .marketing-brand { font-size: 16px; }
.landing-v2 .landing-footer .marketing-brand span { background: #4385d8; font-size: 13px; }
.landing-v2 .footer-brand p,
.landing-v2 .footer-column p,
.landing-v2 .footer-column { color: #5d7694; font-size: 13px; }
.landing-v2 .footer-column > b { color: #315577; font-size: 14px; }
.landing-v2 .footer-column a,
.landing-v2 .footer-bottom a { color: #58718f; }
.landing-v2 .footer-column a:hover,
.landing-v2 .footer-bottom a:hover { color: #2d68b3; }
.landing-v2 .footer-bottom { border-top-color: #dce8f6; }
.landing-v2 .footer-bottom > div { color: #66809d; font-size: 12px; }

@media (max-width: 1080px) {
  .landing-v2 .marketing-header nav a { font-size: 13px; }
}
@media (max-width: 760px) {
  .landing-v2 .marketing-login,
  .landing-v2 .marketing-header-cta { font-size: 13px; }
  .landing-v2 .announcement-bar { font-size: 12px; }
  .landing-v2 .hero-lede { font-size: 15px; }
  .landing-v2 .proof-row { font-size: 13px; }
  .landing-v2 .topic-inner span { font-size: 12px; }
}
@media (max-width: 430px) {
  .landing-v2 .marketing-header-cta { font-size: 12px; }
  .landing-v2 .hero-kicker { font-size: 11px; }
  .landing-v2 .primary-cta,
  .landing-v2 .secondary-cta { font-size: 13px; }
  .landing-v2 .assistant-topbar { font-size: 12px; }
  .landing-v2 .toolkit-list article > b { font-size: 11px; }
}
