/* 易星云 XSERVER · 基础布局，品牌蓝/青绿主题由 brand.css 统一管理。 */
:root{
  --red:#0866ff;--red-dark:#064bbd;--red-soft:#e6f0ff;--cyan:#18c7b8;--navy:#071f49;
  --sky:#dbe7f5;--sky-2:#f5f8fc;
  --bg-1:#eef3f9;--bg-2:#f7f9fc;
  --ink:#17181c;--ink-2:#262626;--muted:#4b4f58;--faint:#6b7280;
  --glass:rgba(255,255,255,.6);--glass-group:rgba(235,235,235,.6);
  --glass-line:0 0 1px rgba(0,0,0,.16);
  --line:rgba(0,0,0,.08);--line-strong:rgba(0,0,0,.15);
  --max:1320px;
  --sans:'Helvetica Neue',Helvetica,'PingFang SC','Hiragino Sans GB','Microsoft YaHei',Arial,sans-serif;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg-2);color:var(--ink-2);font-family:var(--sans);font-size:14px;line-height:1.7;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
.shell{max-width:var(--max);margin:0 auto;padding-left:32px;padding-right:32px}
ul,ol{list-style:none}

/* ---------- 阅读进度条（红色） ---------- */
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:60;pointer-events:none}
.reading-progress span{display:block;height:100%;width:0;background:var(--red);transition:width .12s linear}

/* ---------- 顶部导航：白色半透明 blur ---------- */
.site-header{position:fixed;left:0;right:0;top:0;z-index:50;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - var(--max))/2));background:rgba(255,255,255,.72);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:11px}
.brand-mark{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.6);box-shadow:var(--glass-line);display:grid;place-items:center}
.brand-mark img{width:24px;height:24px;object-fit:contain}
.brand strong{display:block;font-size:16px;font-weight:600;color:var(--ink);letter-spacing:.08em}
.brand small{display:block;color:var(--faint);font:10px var(--mono);letter-spacing:.22em;margin-top:-2px}
.main-nav{display:flex;align-items:center;gap:6px}
.main-nav a{position:relative;color:var(--ink);font-size:14px;font-weight:500;padding:9px 13px;border-radius:20px;transition:color .3s ease,background .3s ease}
.main-nav a::after{content:"";position:absolute;left:13px;right:13px;bottom:3px;height:2px;border-radius:2px;background:var(--red);transform:scaleX(0);transform-origin:center;transition:transform .3s ease}
.main-nav a:hover{color:var(--red)}
.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}
.main-nav a.active{color:var(--red)}
.nav-new{display:inline-block;vertical-align:top;margin-left:3px;padding:1px 5px;border-radius:8px;background:var(--red);color:#fff;font-size:9px;font-style:normal;font-weight:700;letter-spacing:.06em;line-height:1.5}
.main-nav .nav-download{color:var(--red);border:1px solid rgba(8,102,255,.35)}
.main-nav .nav-download::after{display:none}
.main-nav .nav-download:hover{background:var(--red-soft)}
.main-nav .nav-consult{background:var(--red);color:#fff;border-radius:20px;font-weight:500}
.main-nav .nav-consult::after{display:none}
.main-nav .nav-consult:hover{background:var(--red-dark);color:#fff}
.main-nav .auth-trigger{border:1px solid var(--line-strong);color:var(--ink);border-radius:20px;font-size:13px;padding:9px 13px;background:transparent;cursor:pointer}.main-nav .auth-trigger:hover{border-color:var(--red);color:var(--red)}
.auth-modal{border:0;border-radius:16px;padding:34px;max-width:440px;width:calc(100% - 32px);background:var(--surface);color:var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.26);font-size:16px;max-height:calc(100dvh - 32px);overflow:auto;margin:auto}.auth-modal::backdrop{background:rgba(20,24,32,.58);backdrop-filter:blur(8px)}.auth-modal label{display:grid;gap:8px;margin:18px 0;font-size:14px}.auth-modal input{font:16px var(--sans);min-width:0;max-width:100%;padding:12px 14px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);color:var(--ink)}.auth-code-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.auth-code-row label{margin-bottom:0}.auth-consent{display:flex!important;grid-template-columns:none!important;align-items:center;display:flex!important;gap:8px!important}.auth-consent input{width:auto}.auth-modal .button{width:100%;margin-top:8px}.auth-status{min-height:24px;color:var(--muted);font-size:13px}
.main-nav .theme-switch{border:1px solid var(--line-strong);color:var(--muted);border-radius:20px;font-size:13px}
.main-nav .theme-switch::after{display:none}
.main-nav .theme-switch:hover{border-color:var(--red);color:var(--red)}
.menu-toggle{display:none;background:none;border:0;padding:8px;color:var(--ink)}
.menu-toggle span{display:block;width:24px;height:2px;border-radius:2px;background:currentColor;margin:5px}

/* ---------- 路由视图 ---------- */
.view{display:none;padding-top:72px;min-height:calc(100vh - 72px)}
.view.active{display:block;animation:page-in .5s ease both}
@keyframes page-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* ---------- Hero：全宽浅蓝渐变 + 场景图 + 斜向光带 ---------- */
.hero{position:relative;min-height:calc(100vh - 72px);display:flex;align-items:center;overflow:hidden;background:var(--sky-2)}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:brightness(1.08) contrast(.82) saturate(.9);animation:photo-in 2.2s .3s ease both}
@keyframes photo-in{from{opacity:0;transform:scale(1.04)}to{opacity:.55;transform:scale(1)}}
.hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(245,248,252,.5),rgba(245,248,252,.25) 45%,rgba(247,249,252,.92))}
.hero-inner{position:relative;z-index:2;padding-top:120px;padding-bottom:90px;text-align:center}
.hero .eyebrow{margin:0 auto}
.hero h1{font-size:clamp(40px,7.2vw,84px);line-height:1.12;font-weight:700;color:var(--ink);letter-spacing:.01em;margin:22px 0 20px}
.hero h1 em{font-style:normal;color:var(--red)}
.lead{font-size:20px;font-weight:300;color:var(--muted);max-width:720px;margin:0 auto}
.hero .actions{justify-content:center}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.hero-note{color:var(--muted);font-size:13px;margin-top:30px}
.signal{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--red);margin-right:8px;box-shadow:0 0 0 4px var(--red-soft)}

/* hero 圆形成就徽章 */
.hero-stats{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;margin-top:56px}
.hero-stats li{width:120px;height:120px;border-radius:50%;background:var(--glass);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:var(--glass-line);display:grid;align-content:center;justify-items:center;text-align:center;padding:14px;color:var(--ink-2);transition:all .3s ease}
.hero-stats strong{font-size:24px;font-weight:700;color:var(--red);line-height:1.1;transition:color .3s ease}
.hero-stats strong small{font-size:12px;font-weight:500}
.hero-stats span{font-size:10px;line-height:1.45;color:var(--muted);margin-top:5px;transition:color .3s ease}

/* ---------- 玻璃拟态卡片（原站真实值） ---------- */
.glass-group{background:var(--glass-group);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:32px;padding:16px;display:grid;gap:16px;box-shadow:var(--glass-line)}
.glass-group>.capability-card,.glass-group>.download-card,.glass-group>article,.glass-group>.shot,.glass-group>div,.glass-group>.case-card,.glass-group>.skill-item{background:var(--glass);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:16px;box-shadow:var(--glass-line);color:var(--ink-2)}
.invert-hover{transition:all .3s ease}
.invert-hover:hover{background:var(--red-dark);color:#fff;transform:translateY(-4px);box-shadow:0 12px 28px rgba(6,75,189,.22)}
.invert-hover:hover strong,.invert-hover:hover h2,.invert-hover:hover h3,.invert-hover:hover h4,.invert-hover:hover b,.invert-hover:hover p,.invert-hover:hover span,.invert-hover:hover small,.invert-hover:hover dt,.invert-hover:hover dd{color:#fff}
.invert-hover:hover .text-link{color:#fff}
.glass-panel{background:var(--glass);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:24px;box-shadow:var(--glass-line)}

/* ---------- 按钮：药丸 ---------- */
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;padding:12px 28px;border-radius:20px;font-size:14px;font-weight:500;white-space:nowrap;transition:all .3s ease}
.button-primary{background:var(--red);color:#fff}
.button-primary:hover{background:var(--red-dark);color:#fff;transform:translateY(-2px);box-shadow:0 10px 22px rgba(6,75,189,.22)}
.button-secondary{border-color:var(--line-strong);color:var(--ink-2);background:transparent}
.button-secondary:hover{border-color:var(--red);color:var(--red);transform:translateY(-2px)}

/* ---------- 章节标题：居中 ---------- */
.section-pad{padding-top:110px;padding-bottom:110px}
.section-heading{text-align:center;margin-bottom:44px}
.section-heading .eyebrow{margin-bottom:6px}
.section-heading h2{font-size:clamp(28px,4vw,44px);line-height:1.25;font-weight:700;color:var(--ink);margin-top:10px}
.section-heading>p:last-child{font-size:20px;font-weight:300;color:#1e1e1e;width:80%;max-width:860px;margin:14px auto 0}
.section-heading.compact{margin-bottom:32px}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--red);text-transform:uppercase}
.text-link{display:inline-block;color:var(--red);font-size:13px;font-weight:500;margin-top:20px;transition:all .3s ease}
.text-link:hover{color:var(--red-dark);transform:translateX(4px)}

/* ---------- 首页能力卡 ---------- */
.capability-grid{grid-template-columns:repeat(3,1fr)}
.capability-card{padding:30px;min-height:280px;display:flex;flex-direction:column}
.card-index{font:12px var(--mono);color:var(--red);letter-spacing:.1em}
.capability-card h3{font-size:22px;font-weight:600;margin-top:40px}
.capability-card p{color:var(--muted);font-size:14px;margin-top:12px;flex:1}
.capability-card .text-link{margin-top:18px}

/* ---------- 企业名片分屏（左图右文） ---------- */
.company-split{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.split-media{border-radius:32px;overflow:hidden;box-shadow:var(--glass-line);background:var(--glass-group)}
.split-media img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform 1.2s ease}
.split-media:hover img{transform:scale(1.06)}
.company-card{position:relative;padding:34px 34px 78px;min-height:420px;background:var(--glass);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:32px;box-shadow:var(--glass-line);color:var(--ink-2)}
.card-top,.card-bottom{display:flex;justify-content:space-between;color:var(--faint);font:10px var(--mono);letter-spacing:.08em}
.card-code{color:var(--red)}
.card-logo{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;letter-spacing:.12em;color:var(--red);margin-top:56px}
.card-logo img{width:46px;height:56px;object-fit:contain;flex-shrink:0}
.company-card h2{font-size:22px;font-weight:600;color:var(--ink);margin-top:20px}
.card-en{font:10px var(--mono);letter-spacing:.06em;color:var(--faint);margin-top:5px}
.card-rule{width:55px;height:2px;border-radius:2px;background:var(--red);margin:30px 0 17px}
.card-slogan{font-size:14px;color:var(--muted);line-height:1.9}
.card-bottom{position:absolute;bottom:28px;left:34px;right:34px}

/* ---------- 版块横幅：webp + 白色渐变遮罩 ---------- */
.band{position:relative;isolation:isolate}
.band::before{content:"";position:absolute;inset:0;z-index:-1;background-image:url(assets/bright-delivery-site.webp);background-size:cover;background-position:center}
.band-delivery::before{background-image:url(assets/bright-delivery-site.webp)}
.band-solver::before{background-image:url(assets/bright-aie-solver-lab.webp)}
.band-gateway::before{background-image:url(assets/bright-model-gateway.webp)}
.band-trade::before{background-image:url(assets/bright-trade-documents.webp)}
.band-review::before{background-image:url(assets/bright-aie-report-review.webp)}
.band::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(247,249,252,.94),rgba(247,249,252,.78) 55%,rgba(247,249,252,.96))}

/* ---------- 应用场景 ---------- */
.scene-group{grid-template-rows:auto auto}
.scene-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.scene-grid button{position:relative;padding:22px;text-align:left;background:var(--glass);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border:0;border-radius:16px;box-shadow:var(--glass-line);color:var(--ink-2);transition:all .3s ease}
.scene-grid button>span{font:11px var(--mono);color:var(--red);letter-spacing:.1em}
.scene-grid strong{display:block;font-size:17px;font-weight:600;margin:16px 0 8px}
.scene-grid .scene-summary{font-size:12px;color:var(--muted);font-family:var(--sans);letter-spacing:0}
.scene-grid button:hover,.scene-grid button.active{background:var(--red-dark);color:#fff;transform:translateY(-4px)}
.scene-grid button:hover>span,.scene-grid button.active>span,.scene-grid button:hover .scene-summary,.scene-grid button.active .scene-summary{color:rgba(255,255,255,.85)}
.scene-panel{padding:32px;display:grid;grid-template-columns:1fr 1.1fr;gap:40px;background:var(--glass);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:16px;box-shadow:var(--glass-line)}
.scene-panel h3{font-size:24px;font-weight:600;line-height:1.45;color:var(--ink)}
.scene-panel p{font-size:14px;color:var(--muted);margin-top:12px}
.scene-panel dl,.aie-step-panel dl{display:grid;gap:16px}
.scene-panel dt,.aie-step-panel dt{font-size:12px;font-weight:700;color:var(--red);letter-spacing:.08em}
.scene-panel dd,.aie-step-panel dd{font-size:14px;color:var(--muted);margin-top:4px}
.scene-panel .text-link{margin-top:24px}

/* ---------- 技术条 & CTA ---------- */
.tech-strip{display:flex;justify-content:space-between;gap:35px;align-items:center;flex-wrap:wrap}
.tech-strip h2{font-size:clamp(24px,3vw,34px);font-weight:700;color:var(--ink);margin-top:10px}
.tech-list{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.tech-list span,.token-points span{background:var(--glass);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:var(--glass-line);border-radius:20px;padding:10px 20px;color:var(--ink-2);font-size:13px;font-weight:500}
.home-cta{display:flex;justify-content:space-between;align-items:center;gap:36px;margin:0 auto;background:var(--glass-group);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:32px;box-shadow:var(--glass-line);padding:52px}
.home-cta h2{font-size:clamp(24px,3vw,34px);font-weight:700;color:var(--ink);margin:10px 0}
.home-cta p:not(.eyebrow){color:var(--muted)}

/* ---------- 内页 Hero ---------- */
.page-hero{padding-top:130px;padding-bottom:70px;text-align:center}
.page-hero .eyebrow{margin-bottom:6px}
.page-hero h1{font-size:clamp(38px,6vw,70px);line-height:1.15;font-weight:700;color:var(--ink);margin:16px 0 18px}
.page-hero>p:last-child{font-size:20px;font-weight:300;color:var(--muted);max-width:820px;margin:0 auto}

/* ---------- 智能体架构 ---------- */
.agent-architecture .architecture{display:grid;gap:12px;max-width:820px;margin:0 auto}
.arch-layer{display:flex;align-items:center;gap:30px;padding:18px 26px;border-radius:16px;background:var(--glass);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:var(--glass-line);border-left:3px solid rgba(0,0,0,.15);font-size:14px;transition:all .3s ease}
.arch-layer b{width:82px;flex-shrink:0;color:var(--ink)}
.arch-layer span{color:var(--muted)}
.arch-layer:hover{border-left-color:var(--red);transform:translateX(6px)}
.arch-layer.accent{border-left-color:var(--red);background:linear-gradient(135deg,rgba(8,102,255,.08),rgba(255,255,255,.6))}

/* ---------- 智能体工作台 tabs ---------- */
.agent-workbench{padding-top:80px;padding-bottom:20px}
.agent-tabs{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:34px}
.agent-tabs button{background:transparent;border:1px solid var(--line-strong);color:var(--muted);padding:12px 26px;border-radius:20px;font-size:15px;font-weight:500;transition:all .3s ease}
.agent-tabs button:hover{border-color:var(--red);color:var(--red)}
.agent-tabs button.active{background:var(--red);border-color:var(--red);color:#fff;box-shadow:0 10px 22px rgba(6,75,189,.2)}
.agent-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;padding:12px 0 60px}
.agent-panel h3{font-size:28px;font-weight:700;color:var(--ink)}
.agent-panel>div>p{color:var(--muted);margin-top:12px;font-size:15px}
.skill-list{grid-template-columns:repeat(2,1fr)}
.skill-item{overflow:hidden}
.skill-item button{width:100%;text-align:left;color:var(--ink);background:none;border:0;padding:16px 18px;font-weight:600;font-size:15px;position:relative;transition:color .3s ease}
.skill-item button:hover{color:var(--red)}
.skill-item button::after{content:"+";position:absolute;right:18px;top:14px;color:var(--red);font-size:18px}
.skill-item.open button{color:var(--red)}
.skill-item.open button::after{content:"−"}
.skill-detail{color:var(--muted);font-size:13px;padding:0 18px 18px;border-top:1px solid var(--line);margin:0 18px}
.skill-detail p{margin-top:12px}
.skill-detail b{color:var(--ink-2);font-weight:500}

/* ---------- 产品截图 ---------- */
.screenshots .shot-grid{grid-template-columns:1fr 1fr}
.shot{padding:0;background:var(--glass);border:0;border-radius:16px;overflow:hidden;box-shadow:var(--glass-line);text-align:left;transition:all .3s ease}
.shot:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(23,24,28,.12)}
.shot img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top;transition:transform 1.2s ease}
.shot:hover img{transform:scale(1.06)}
.shot span{display:block;padding:13px 16px;color:var(--muted);font-size:12px}

/* ---------- 生态 / 价值 ---------- */
.ecosystem-band{background:linear-gradient(180deg,rgba(219,231,245,.5),rgba(255,255,255,.4))}
.ecosystem-grid,.value-grid{grid-template-columns:repeat(3,1fr)}
.ecosystem-grid>div,.value-grid article{padding:26px;min-height:200px}
.eco-num,.value-grid span{font:12px var(--mono);color:var(--red);letter-spacing:.12em}
.ecosystem-grid h3,.value-grid h3{font-size:19px;font-weight:600;margin:18px 0 8px}
.ecosystem-grid p,.value-grid p{color:var(--muted);font-size:14px}

/* ---------- 下载 ---------- */
.download-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}
.download-copy h2{font-size:clamp(26px,3vw,36px);font-weight:700;color:var(--ink);margin:10px 0}
.download-copy p:last-child{color:var(--muted);margin-top:12px}
.download-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.download-card{padding:26px;transition:transform .3s ease,box-shadow .3s ease}
.download-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(23,24,28,.1)}
.platform,.hardware-label,.case-index{font:11px var(--mono);letter-spacing:.14em;color:var(--red)}
.download-card h3{margin:36px 0 8px;font-weight:600}
.download-card p{font-size:13px;color:var(--muted);min-height:48px}
.download-card button{margin-top:16px}

/* ---------- 硬件矩阵 ---------- */
.hardware-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.hardware-card{padding:26px;display:flex;flex-direction:column}
.hardware-card h3{font-size:24px;font-weight:600;margin:18px 0 8px}
.hardware-card>p{font-size:14px;color:var(--muted);min-height:70px}
.hardware-card ul{margin:18px 0;flex:1}
.hardware-card li{font-size:12px;color:var(--muted);padding:9px 0;border-top:1px solid var(--line)}
.hardware-card .button{align-self:flex-start;margin-top:10px}
.hardware-card a{font-size:12px;color:var(--red);margin-top:10px}
.hardware-card a:hover{color:var(--red-dark)}
.hpc-entry{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:16px;padding:34px;border-radius:32px;background:var(--glass-group);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:var(--glass-line)}
.hpc-entry h3{font-size:24px;font-weight:600;color:var(--ink);margin:12px 0}
.hpc-entry p{font-size:14px;color:var(--muted);max-width:760px}
.hardware-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-top:18px}
.note-card{border-left:3px solid var(--red);padding:6px 18px;border-radius:0 16px 16px 0;background:linear-gradient(90deg,var(--red-soft),transparent)}
.note-card b{font-size:14px;color:var(--ink)}
.note-card p{font-size:12px;color:var(--muted);margin-top:6px}

/* ---------- 容量矩阵 / 表格（浅色玻璃） ---------- */
.device-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:20px}
.device-filters button{padding:10px 20px;background:var(--glass);border:1px solid var(--line-strong);border-radius:20px;color:var(--muted);font-size:13px;font-weight:500;transition:all .3s ease}
.device-filters button:hover{border-color:var(--red);color:var(--red)}
.device-filters button.active{background:var(--red);border-color:var(--red);color:#fff}
.matrix-toolbar{display:grid;gap:8px;justify-items:center;margin-bottom:18px;color:var(--muted);font-size:13px}
.matrix-toolbar label{display:flex;align-items:center;gap:8px;cursor:pointer}
.matrix-toolbar label:has(input:disabled){opacity:.55;cursor:default}
.matrix-toolbar input{accent-color:var(--red);width:16px;height:16px;flex-shrink:0}
#capacity-summary{color:var(--red);font-weight:500}
.model-table-wrap{overflow-x:auto}
.capacity-table{min-width:1070px}
.data-table{width:100%;border-collapse:collapse;min-width:660px;font-size:13px}
.data-table th{text-align:left;color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.05em;background:rgba(0,0,0,.04)}
.data-table th,.data-table td{padding:14px 15px;border-bottom:1px solid var(--line);vertical-align:top}
.data-table td{color:var(--muted)}
.data-table tr:last-child td{border-bottom:0}
.data-table td:first-child{color:var(--ink-2);font-weight:600}
.data-table tbody tr{transition:background .3s ease}
.data-table tbody tr:hover{background:rgba(8,102,255,.045)}
.capacity-table caption{text-align:left;padding:14px 16px;font-size:12px;color:var(--faint)}
.capacity-table thead th{font-size:12px;letter-spacing:0;min-width:165px}
.capacity-table thead th:first-child{min-width:195px}
.capacity-table th strong,.capacity-table small{display:block;font-size:11px;line-height:1.6;margin-top:7px;font-weight:400;color:var(--muted)}
.capacity-table th strong{color:var(--red);font:15px var(--mono)}
.capacity-table tbody th{font-size:13px;font-weight:600;letter-spacing:0;color:var(--ink-2);background:transparent}
.capacity-table td{font-size:12px}
.capacity-table .selected-capacity{background:rgba(8,102,255,.06);box-shadow:inset 1px 0 rgba(8,102,255,.3),inset -1px 0 rgba(8,102,255,.3)}
.capacity-status{display:inline-block;padding:4px 10px;border:1px solid;border-radius:12px;font-size:11px;white-space:nowrap}
.capacity-status.fits{color:#177a4c;border-color:rgba(23,122,76,.35);background:rgba(23,122,76,.06)}
.capacity-status.tight{color:#b97c14;border-color:rgba(185,124,20,.4);background:rgba(185,124,20,.06)}
.capacity-status.insufficient{color:var(--red);border-color:rgba(8,102,255,.3);background:var(--red-soft)}
.capacity-legend{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:20px 0}
.capacity-explainer{border:0;border-radius:24px;background:var(--glass-group);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:var(--glass-line);padding:26px 30px;color:var(--muted);font-size:12px;display:grid;gap:12px}
.capacity-explainer b{color:var(--ink)}
#model-sizing{scroll-margin-top:90px}

/* ---------- Token 服务 ---------- */
.token-overview{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:40px;flex-wrap:wrap}
.overview-tag{font:12px var(--mono);letter-spacing:.18em;color:var(--red)}
.token-overview h2{margin-top:8px;font-size:clamp(24px,3vw,32px);font-weight:700;color:var(--ink)}
.token-points{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.price-head{display:flex;justify-content:space-between;align-items:end;gap:25px;flex-wrap:wrap}
.price-head .section-heading{text-align:left;margin-bottom:0}
.price-head h2{font-size:clamp(24px,3vw,32px)}
.price-head input{width:280px;background:rgba(255,255,255,.75);border:1px solid var(--line-strong);border-radius:20px;color:var(--ink-2);padding:12px 18px;outline:0;transition:border-color .3s ease}
.price-head input:focus{border-color:var(--red)}
.source-note{color:var(--faint);font-size:12px;max-width:890px;margin:20px 0}
.token-table{min-width:860px}
.table-empty{color:var(--muted);padding:22px;text-align:center}
.token-disclaimer{border-radius:32px;background:var(--glass-group);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:var(--glass-line);padding:30px 34px;margin-bottom:90px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.token-disclaimer b{font-size:18px;color:var(--ink)}
.token-disclaimer p{color:var(--muted);font-size:13px;flex:1;min-width:280px}

/* ---------- 案例 ---------- */
.case-grid{grid-template-columns:repeat(3,1fr)}
.case-card{padding:28px;min-height:360px;display:flex;flex-direction:column;transition:all .3s ease}
.case-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(23,24,28,.1)}
.case-card h2{font-size:25px;font-weight:600;margin:36px 0 12px}
.case-card>p{color:var(--muted);font-size:14px}
.case-meta{margin-top:auto;margin-bottom:20px;border-top:1px solid var(--line);padding-top:14px;display:grid;gap:5px;color:var(--faint);font-size:12px}
.case-card button{align-self:flex-start}
.case-cta{border-radius:32px;background:var(--glass-group);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:var(--glass-line);padding:44px 52px;margin:20px auto 90px;display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.case-cta h2{font-size:27px;font-weight:700;color:var(--ink);margin-top:8px}

/* ---------- 关于我们 ---------- */
.about-profile{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.about-copy h2{font-size:clamp(28px,3.4vw,37px);font-weight:700;color:var(--ink);line-height:1.3;margin:15px 0}
.about-copy p{color:var(--muted);font-size:15px;margin-top:14px;max-width:560px}
.about-copy .text-link{margin-top:24px}
.fact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:var(--glass-group);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:32px;padding:16px;box-shadow:var(--glass-line)}
.fact-grid>div{padding:28px;border-radius:16px;background:var(--glass);box-shadow:var(--glass-line)}
.fact-grid strong{display:block;color:var(--red);font-size:36px;font-weight:700;line-height:1.1}
.fact-grid span{display:block;color:var(--muted);font-size:12px;margin-top:8px}
.about-values{background:linear-gradient(180deg,rgba(219,231,245,.5),rgba(255,255,255,.4))}
.value-grid article{padding:26px}
.value-grid h3{font-size:21px;font-weight:600}
.contact-brief{display:flex;justify-content:space-between;align-items:end;gap:35px;padding-top:70px;padding-bottom:80px;flex-wrap:wrap}
.contact-brief h2{font-size:30px;font-weight:700;color:var(--ink);margin:12px 0}
.contact-brief p{color:var(--muted);font-size:14px}
.contact-brief>div:last-child{display:grid;gap:10px;font-size:13px}
.contact-brief a{color:var(--red)}
.contact-brief a:hover{color:var(--red-dark)}

/* ---------- 咨询表单 ---------- */
.consult-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:70px}
.consult-form{display:grid;gap:18px;background:var(--glass-group);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:32px;padding:36px;box-shadow:var(--glass-line)}
.form-intro{margin-bottom:8px}
.form-intro h2,.consult-process h2{font-size:29px;font-weight:700;color:var(--ink);margin-top:9px}
.form-intro p:last-child{color:var(--muted);font-size:13px;margin-top:10px}
.consult-form label{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:500}
.consult-form input,.consult-form textarea{width:100%;background:rgba(255,255,255,.75);color:var(--ink-2);border:1px solid var(--line-strong);border-radius:12px;padding:12px 14px;resize:vertical;outline:0;transition:border-color .3s ease}
.consult-form input:focus,.consult-form textarea:focus{border-color:var(--red)}
.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
.form-status{color:var(--red);font-size:12px;min-height:20px}
.consult-form select{width:100%;padding:12px 14px;border:1px solid var(--line-strong);border-radius:12px;background:var(--bg-1);color:var(--ink)}
.consult-form select:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.consult-form .consult-consent{display:flex;align-items:flex-start;gap:10px;line-height:1.7}
.consult-form .consult-consent input{width:18px;height:18px;flex:0 0 18px;margin-top:3px;accent-color:var(--red)}
.consult-form fieldset{min-width:0;padding:14px;border:1px solid var(--line-strong);border-radius:12px}
.consult-form fieldset input{max-width:100%;font-size:12px}
#consult-privacy,#consult-attachment-note{font-size:12px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}
.consult-form button:disabled{opacity:.6;cursor:wait}
.consult-process{border-left:0;padding:32px;background:var(--glass-group);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:20px;box-shadow:var(--glass-line);min-width:0}
.consult-process ol{margin-top:26px}
.consult-process li{display:grid;gap:3px;border-top:1px solid var(--line);padding:15px 0}
.consult-process li b{font-size:15px;color:var(--ink)}
.consult-process li span{color:var(--muted);font-size:12px}
.contact-side{display:grid;gap:3px;border-top:1px solid var(--line);padding-top:20px;margin-top:30px}
.contact-side span{color:var(--faint);font-size:11px;margin-top:6px}
.contact-side strong{font-size:16px;color:var(--red);font-family:var(--mono)}

/* ---------- AIE（JS 渲染） ---------- */
.aie-workspace{padding:40px 0 70px;border-top:1px solid var(--line)}
.aie-workspace .section-heading h2{font-size:clamp(28px,4vw,38px)}
.aie-workspace .section-heading h3{font-size:26px;font-weight:600;margin-top:8px;line-height:1.4;color:var(--ink)}
.aie-architecture{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:start;background:var(--glass-group);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:32px;padding:36px;box-shadow:var(--glass-line)}
.aie-architecture h3{font-size:25px;font-weight:600;line-height:1.4;color:var(--ink)}
.aie-architecture>div>p{font-size:14px;color:var(--muted);margin-top:16px}
.aie-flow-label{display:inline-block;margin-top:25px;color:var(--red);font-size:12px;font-weight:700;letter-spacing:.06em}
.aie-layers{display:grid;gap:10px}
.aie-layers li{display:flex;gap:18px;padding:20px;background:var(--glass);border-radius:16px;box-shadow:var(--glass-line);border-left:3px solid var(--red);transition:all .3s ease}
.aie-layers li:hover{transform:translateX(6px);box-shadow:0 10px 24px rgba(23,24,28,.1)}
.aie-layer-index{font:12px var(--mono);color:var(--red);padding-top:4px}
.aie-layers h4{font-size:18px;font-weight:600;color:var(--ink)}
.aie-layers h4 small{display:block;color:var(--muted);font-size:12px;font-weight:400;margin-top:4px}
.aie-layers p{color:var(--muted);font-size:12px;margin-top:9px}
.aie-block{margin-top:56px;padding-top:44px;border-top:1px solid var(--line)}
.aie-step-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.aie-step-tabs button{position:relative;padding:18px 14px;text-align:left;color:var(--muted);border:1px solid var(--line-strong);border-radius:16px;background:var(--glass);box-shadow:var(--glass-line);font-size:13px;font-weight:500;transition:all .3s ease}
.aie-step-tabs button>span{display:block;font:11px var(--mono);color:var(--red);margin-bottom:15px}
.aie-step-tabs button>small{position:absolute;right:11px;top:16px;color:var(--red)}
.aie-step-tabs button:hover{border-color:var(--red);color:var(--red)}
.aie-step-tabs button.active{background:var(--red-dark);border-color:transparent;color:#fff}
.aie-step-tabs button.active>span,.aie-step-tabs button.active>small{color:rgba(255,255,255,.85)}
.aie-step-panel{display:grid;grid-template-columns:1.1fr 1fr;gap:36px;padding:30px;margin-top:12px;background:var(--glass);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:16px;box-shadow:var(--glass-line)}
.aie-step-panel .eyebrow{font-size:11px}
.aie-step-panel h4{font-size:24px;font-weight:600;margin-top:10px;color:var(--ink)}
.aie-step-panel p,.aie-step-panel dd{font-size:13px;color:var(--muted);margin-top:9px}
.aie-step-panel dl dd{margin-top:4px}
.solver-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.solver-grid article{display:flex;flex-direction:column;padding:24px}
.solver-grid h4{font-size:22px;color:var(--red);margin-bottom:15px;font-family:var(--mono);font-weight:600}
.solver-grid b{font-size:14px;color:var(--ink-2)}
.solver-grid p{font-size:13px;color:var(--muted);margin-top:13px}
.solver-grid p span{display:block;color:var(--ink-2);font-size:11px;font-weight:700;margin-bottom:5px}
.solver-grid footer{border-top:1px solid var(--line);padding-top:14px;margin-top:20px;color:var(--muted);font-size:12px}
.aie-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.aie-stages li{border-top:3px solid var(--red);padding:20px 16px 16px;background:var(--glass);border-radius:0 0 16px 16px;box-shadow:var(--glass-line);transition:transform .3s ease}
.aie-stages li:hover{transform:translateY(-4px)}
.aie-stages li>span{font:12px var(--mono);color:var(--red)}
.aie-stages h4{font-size:17px;font-weight:600;margin:18px 0 10px;color:var(--ink)}
.aie-stages p{font-size:13px;color:var(--muted)}
.aie-stages small{display:block;color:var(--red);font-size:11px;margin-top:16px}
.aie-boundary{display:grid;grid-template-columns:1fr 1.2fr;gap:36px;border-left:3px solid var(--red);border-radius:32px;padding:34px;margin-top:50px;background:linear-gradient(120deg,var(--red-soft),var(--glass-group));backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);box-shadow:var(--glass-line)}
.aie-boundary h3{font-size:25px;font-weight:600;line-height:1.4;margin-top:12px;color:var(--ink)}
.aie-boundary h4{font-size:15px;font-weight:600;margin-bottom:6px;color:var(--ink)}
.aie-boundary h4:not(:first-child){margin-top:22px}
.aie-boundary p:not(.eyebrow){font-size:13px;color:var(--muted);margin-top:12px}
.skill-detail p{margin-top:12px}

/* ---------- 入场动效 / tab 面板过渡 ---------- */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
.fade-slide{animation:fade-slide .45s ease both}
@keyframes fade-slide{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* ---------- 覆盖层 ---------- */
.lightbox,.modal{position:fixed;inset:0;z-index:70;background:rgba(238,243,249,.9);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);display:grid;place-items:center;padding:25px}
.lightbox[hidden],.modal[hidden]{display:none}
.lightbox img{max-width:min(1100px,94vw);max-height:88vh;object-fit:contain;border-radius:16px;box-shadow:0 24px 60px rgba(23,24,28,.25)}
.lightbox-close,.modal-close{position:absolute;right:25px;top:18px;background:rgba(255,255,255,.7);border:1px solid var(--line-strong);width:42px;height:42px;border-radius:50%;color:var(--ink);font-size:24px;line-height:1;transition:all .3s ease}
.lightbox-close:hover,.modal-close:hover{background:var(--red);border-color:var(--red);color:#fff}
.modal-panel{position:relative;max-width:630px;width:100%;background:rgba(255,255,255,.85);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-radius:32px;box-shadow:var(--glass-line);padding:38px}
.modal-panel h2{font-size:30px;font-weight:700;color:var(--ink);margin:12px 0 18px}
.modal-panel p{font-size:14px;color:var(--muted);margin-top:10px}
.modal-panel ul{padding-left:18px;color:var(--muted);font-size:13px;margin-top:12px;list-style:disc}
.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;background:rgba(255,255,255,.92);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border:1px solid rgba(8,102,255,.35);border-radius:20px;color:var(--ink-2);padding:13px 22px;font-size:13px;z-index:80;max-width:min(560px,90vw);transition:all .3s ease}
.toast.show{opacity:1;transform:translate(-50%,0)}

/* ---------- 页脚：浅色多栏 ---------- */
.site-footer{border-top:1px solid var(--line);background:rgba(255,255,255,.5);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px)}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:36px;padding-top:52px;padding-bottom:46px}
.footer-grid>div{display:grid;align-content:start;gap:8px}
.footer-brand{margin-bottom:10px}
.footer-grid p,.footer-grid span,.footer-grid a:not(.brand){font-size:12px;color:var(--muted)}
.footer-grid b{font-size:12px;color:var(--ink);margin-bottom:8px}
.footer-grid a:not(.brand):hover{color:var(--red)}
.footer-bottom{border-top:1px solid var(--line);padding-top:18px;padding-bottom:20px;display:flex;justify-content:space-between;color:var(--faint);font:11px var(--mono)}

/* ---------- 通用 ---------- */
[hidden]{display:none!important}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex="0"]:focus-visible{outline:2px solid var(--red);outline-offset:4px}

/* ---------- 响应式 ---------- */
@media(max-width:980px){
  .site-header{padding:0 20px}
  .main-nav a{padding-left:8px;padding-right:8px}
  .hero-stats{gap:16px}
  .capability-grid,.ecosystem-grid,.value-grid{grid-template-columns:1fr 1fr}
  .hardware-grid,.case-grid{grid-template-columns:1fr 1fr}
  .aie-architecture{grid-template-columns:1fr}
  .aie-stages{grid-template-columns:repeat(2,minmax(0,1fr))}
  .solver-grid{grid-template-columns:1fr 1fr}
  .company-split,.about-profile{grid-template-columns:1fr;gap:40px}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .site-header{height:64px}
  .brand-name{min-width:0}
  .menu-toggle{display:block}
  .main-nav{display:none;position:absolute;top:64px;left:0;right:0;background:rgba(255,255,255,.96);backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);border-bottom:1px solid var(--line);padding:12px 20px 22px;flex-direction:column;align-items:stretch;gap:4px}
  .main-nav.open{display:flex}
  .main-nav a{padding:13px 10px;border-bottom:1px solid var(--line);border-radius:0}
  .main-nav a::after{display:none}
  .main-nav .nav-consult,.main-nav .theme-switch{border-radius:20px;margin-top:8px;justify-content:center;text-align:center}
  .view{padding-top:64px}
  .hero{min-height:auto}
  .hero-inner{padding:110px 0 70px}
  .hero-stats li{width:104px;height:104px}
  .section-pad{padding-top:64px;padding-bottom:64px}
  .section-heading>p:last-child{width:100%;font-size:17px}
  .capability-grid,.scene-grid,.ecosystem-grid,.value-grid,.hardware-grid,.case-grid{grid-template-columns:1fr}
  .scene-panel,.aie-step-panel,.aie-boundary,.aie-architecture{grid-template-columns:1fr;gap:26px}
  .scene-panel,.aie-step-panel,.aie-boundary{padding:24px}
  .scene-panel{background:transparent;box-shadow:none;backdrop-filter:none}
  .scene-group{padding:16px 16px 0}
  .scene-group .scene-panel{margin:0 -16px 16px;border-radius:16px;padding:22px}
  .tech-strip,.home-cta,.token-overview,.token-disclaimer,.case-cta,.contact-brief{display:block}
  .home-cta,.case-cta{padding:34px}
  .tech-list{justify-content:flex-start;margin-top:24px}
  .home-cta .button,.case-cta .button,.token-disclaimer .button{margin-top:22px}
  .page-hero{padding-top:90px;padding-bottom:44px}
  .agent-panel,.download-section,.about-profile,.consult-layout{grid-template-columns:1fr;gap:34px}
  .agent-panel{padding-bottom:28px}
  .skill-list,.shot-grid{grid-template-columns:1fr}
  .download-cards{grid-template-columns:1fr}
  .price-head{display:block}
  .price-head input{width:100%;margin-top:20px}
  .hardware-notes{grid-template-columns:1fr;gap:20px}
  .hpc-entry{display:block;padding:26px}
  .hpc-entry .button{margin-top:22px}
  .aie-step-tabs{grid-template-columns:repeat(3,1fr)}
  .aie-step-tabs button{padding:15px 10px}
  .aie-stages{grid-template-columns:repeat(2,minmax(0,1fr))}
  .solver-grid{grid-template-columns:1fr}
  .solver-grid article{display:block}
  .agent-tabs button{padding:11px 18px;font-size:14px}
  .consult-form{padding:24px}
  .consult-process{border-top:0;padding:24px;border-radius:20px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:28px}
  .footer-bottom{display:block}
  .footer-bottom span{display:block;margin-top:5px}
}
@media(max-width:420px){
  .footer-grid{grid-template-columns:1fr}
  .hero-stats{gap:12px}
  .hero-stats li{width:92px;height:92px}
  .hero-stats strong{font-size:19px}
  .company-card{min-height:auto;padding:24px 24px 74px}
  .company-card h2{font-size:18px}
  .card-slogan{font-size:12px}
  .card-bottom{left:24px;right:24px}
  .card-logo{margin-top:36px}
  .hero h1{font-size:40px}
  .aie-step-tabs{grid-template-columns:repeat(2,1fr)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .hero-photo{opacity:.55}
  .reveal{opacity:1;transform:none}
}

/* Native hidden state takes precedence over existing form layout rules. */
#checkin-dialog [hidden], #auth-modal [hidden]{display:none!important}
.auth-modal select{font:16px var(--sans);padding:12px 14px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface);color:var(--ink)}
