/* Public brand skin: logo blue, navy, and neutral surfaces. */
:root {
  --site-blue: #1c66fc;
  --site-navy: #002679;
  --site-blue-hover: #1555d7;
  --site-surface: #f7f9fc;
  --site-soft-blue: #eef4ff;
  --site-border: #e6ebf2;
  --site-muted: #667085;
  --feishu-color-primary: var(--site-blue);
  --feishu-color-primary-hover: var(--site-blue-hover);
  --feishu-color-primary-active: var(--site-navy);
  --feishu-color-primary-light-default: var(--site-soft-blue);
  --feishu-color-primary-light-hover: #e5eeff;
  --feishu-color-text-0: #17243b;
  --feishu-color-text-1: #344054;
  --feishu-color-text-2: var(--site-muted);
  --feishu-color-text-3: #7a8495;
  --feishu-color-border: var(--site-border);
  --feishu-color-bg-0: #fff;
  --feishu-color-bg-1: var(--site-surface);
  --workbench-brand-primary: var(--site-blue);
  --workbench-text-accent: var(--site-blue);
  --workbench-text-primary: #17243b;
  --workbench-text-secondary: var(--site-muted);
  --workbench-atmosphere-color: #fff;
  --workbench-atmosphere-image: none;
  --workbench-border-subtle: var(--site-border);
  --workbench-surface-selected: var(--site-soft-blue);
  --workbench-panel-shadow: none;
}

body { background: #fff; color: #17243b; }
.nav { background: #fff; backdrop-filter: none; border-bottom-color: var(--site-border); }
.nav.is-scrolled { box-shadow: 0 2px 12px rgb(0 38 121 / 4%); }
.brand-name { color: #17243b; }
.intro { background: radial-gradient(ellipse at 79% 25%, #dce8ff 0, #f1f6ff 28%, transparent 60%), #fff; }
.intro::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 48%;
  height: 620px;
  z-index: -1;
  pointer-events: none;
  background-image: linear-gradient(rgb(58 110 203 / 8%) 1px, transparent 1px), linear-gradient(90deg, rgb(58 110 203 / 8%) 1px, transparent 1px);
  background-size: 40px 40px;
  mask-image: radial-gradient(ellipse at 50% 48%, #000 8%, transparent 70%);
  animation: none;
}
.hero-copy > .eyebrow { color: var(--site-muted); letter-spacing: 1.5px; }
.hero-copy > h1 { color: #17243b; }
.hero h1 span {
  color: var(--site-blue);
  background: none;
  -webkit-text-fill-color: currentColor;
  animation: none;
}
.hero-copy > p { color: var(--site-muted); }
.btn { border-radius: 12px; transition: color .18s, background-color .18s, border-color .18s; }
.btn:not(.secondary), .btn:not(.secondary):hover {
  background: var(--site-blue);
  border-color: var(--site-blue);
  color: #fff;
  box-shadow: none;
}
.btn:not(.secondary):is(:hover, :focus-visible) { background: var(--site-blue-hover); border-color: var(--site-blue-hover); }
.btn:hover { transform: none; box-shadow: none; }
.btn.secondary, .btn.secondary:is(:hover, :focus-visible) { color: var(--site-blue); border-color: #bccff9; background: #fff; }
.btn.secondary:is(:hover, :focus-visible) { border-color: var(--site-blue); }
a:focus-visible, button:focus-visible { outline: 2px solid var(--site-blue); outline-offset: 4px; }
.nav nav a:is(:hover, :focus-visible), .brand-name:is(:hover, :focus-visible),
.footer-links a:is(:hover, :focus-visible), .legal a:is(:hover, :focus-visible),
.textlink, .textlink:is(:hover, :focus-visible), .label { color: var(--site-blue); }
.feature-tabs button, .scene-tabs button { color: var(--site-muted); }
.feature-tabs button[aria-selected=true], .scene-tabs button[aria-selected=true],
.feature-tabs button:is(:hover, :active, :focus-visible):not(:disabled),
.scene-tabs button:is(:hover, :active, :focus-visible):not(:disabled) {
  color: var(--site-blue);
  background: transparent;
}
.feature-tabs button[aria-selected=true], .scene-tabs button[aria-selected=true] { border-color: var(--site-blue); }
.feature-tabs button:hover .icon { transform: none; }
.demo { background: var(--site-surface); border: 1px solid var(--site-border); border-radius: 16px; box-shadow: none; }
.demo-top p, .sample p, .heading p, .split p, .template-col p, .scene-content p, .handoff p { color: var(--site-muted); }
.demo-top small, .workspace-head small, .foot-label, .workflow small, .structure span, .legal { color: #7a8495; }
.window { border: 1px solid var(--site-border); border-radius: 10px; box-shadow: none; }
.sidebar, .sample, .visual, .structure, .scene-content, .template-col .papers { background: var(--site-surface); }
.sidebar strong { color: #344054; }
.side.selected { color: var(--site-blue); background: var(--site-soft-blue); }
.example-row { color: #526078; border-color: var(--site-border); }
.example-row span:last-child { color: var(--site-muted); }
.workflow b { color: var(--site-blue); background: var(--site-soft-blue); }
.flowline, .flowline::after { background: #cbdaf8; }
.flowline::after { animation: none; }
#templates { background: var(--site-surface); }
.template-col { border: 1px solid var(--site-border); border-radius: 12px; }
.template-col:hover, .template-col:hover .paper:first-child, .template-col:hover .paper:last-child, .workflow div:hover { transform: none; }
.structure small, .path small { color: var(--site-blue); }
.paper { color: var(--site-navy); background: #eaf1ff; box-shadow: none; }
.paper.alt { color: #344054; background: #f2f5f9; }
.path div { color: #344054; }
.path div:last-child { color: var(--site-navy); background: var(--site-soft-blue); }
#collaboration { background: #fff; border-top: 1px solid var(--site-border); }
.全局客服按钮 { background: var(--site-blue) !important; border-radius: 12px; box-shadow: none !important; }
.全局客服按钮:is(:hover, :focus-visible) { background: var(--site-blue-hover) !important; }
.联系标题 h1, .联系卡 h2, .联系说明 h2 { color: #17243b; }
.微信号 { background: var(--site-soft-blue); }
.primary-note { color: var(--site-muted); }
.login-method-tab.已选中 { color: var(--site-blue); }
.login-card, .qr-frame-wrap { box-shadow: none; }

/* Light on the AGI surface, a scan, and independent orbital signals. */
.agi-word { animation: agi-float 5s ease-in-out infinite; }
.agi-letter { animation: agi-light 4.5s ease-in-out infinite; }
.agi-letter:nth-child(2) { animation-delay: .35s; }
.agi-letter:nth-child(3) { animation-delay: .7s; }
.core-scan-band { animation: agi-scan 4.5s ease-in-out infinite; }
.core-orbit-trace { stroke-dasharray: 5 20 1 74; animation: agi-orbit 12s linear infinite; }
.core-node { animation: agi-node 3.5s ease-in-out infinite; }
.core-node-delayed { animation-delay: 1.75s; }
.hero .btn:not(.secondary) { box-shadow: 0 8px 24px rgb(28 102 252 / 18%); }
.hero .btn.secondary { background: rgb(255 255 255 / 85%); }
@keyframes agi-float { 0%, 100% { transform: translateY(2px); } 50% { transform: translateY(-3px); } }
@keyframes agi-light { 0%, 100% { fill: #dceaff; opacity: .92; } 50% { fill: #fff; opacity: 1; } }
@keyframes agi-scan { 0%, 100% { transform: translateY(-65px); opacity: 0; } 15% { opacity: 1; } 75% { transform: translateY(100px); opacity: 1; } 85% { transform: translateY(100px); opacity: 0; } }
@keyframes agi-orbit { to { stroke-dashoffset: -100; } }
@keyframes agi-node { 0%, 100% { opacity: .35; } 50% { opacity: 1; } }
@media (prefers-reduced-motion: reduce) {
  .agi-word, .agi-letter, .core-scan-band, .core-orbit-trace, .core-node { animation: none; }
  .core-scan-band { opacity: .4; }
}

@media (max-width: 760px) {
  .intro { background: radial-gradient(ellipse at 50% 42%, #e5eeff, transparent 64%), #fff; }
  .intro::before { inset: 220px 0 auto; height: 360px; background-size: 32px 32px; }
  .全局客服 { bottom: max(16px, calc(env(safe-area-inset-bottom) + 12px)); }
  .全局客服按钮 { min-width: 112px; font-size: 12px; padding-inline: 12px; }
}
