/*
 * 视觉基线：以浅灰白工作台、细网格和克制蓝紫色建立 SaaS 质感。
 * 需求说明：重要内容放在页面顶部与左侧，右侧仅使用立方体、状态卡等辅助视觉，落实 F 型阅读布局。
 */
:root { --ink:#1f2430; --muted:#697386; --soft:#f6f7fb; --line:#e5e8f0; --blue:#465fff; --violet:#7668ff; --mint:#17a67a; --panel:#ffffff; --shadow:0 18px 44px rgba(39,52,92,.08); --radius:18px; }
* { box-sizing:border-box; } html { background:var(--soft); } body { min-width:320px; margin:0; color:var(--ink); background-color:var(--soft); background-image:linear-gradient(rgba(113,126,158,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(113,126,158,.065) 1px,transparent 1px); background-size:34px 34px; font-family:"Microsoft YaHei",Arial,sans-serif; } body::before { position:fixed; inset:0; z-index:-1; content:""; background:rgba(248,249,252,.78); pointer-events:none; } a { color:inherit; text-decoration:none; } button { font:inherit; cursor:pointer; } h1,h2,h3,p { margin-top:0; } .lucide { width:17px; height:17px; stroke-width:1.8; }

/* 需求说明：书签与进群链接归入右侧连续操作区，避免进群入口与导航分散在横幅两端。 */
.site-header { position:sticky; top:0; z-index:20; border-bottom:1px solid rgba(229,232,240,.92); background:rgba(255,255,255,.88); backdrop-filter:blur(14px); }.nav-shell { display:grid; grid-template-columns:1fr auto auto; column-gap:24px; align-items:center; width:min(1180px,calc(100% - 48px)); min-height:74px; margin:auto; }.brand { display:inline-flex; align-items:center; gap:10px; width:max-content; }.brand img { width:38px; height:38px; border:1px solid #dfe5f2; border-radius:11px; object-fit:cover; box-shadow:0 5px 13px rgba(43,64,111,.12); }.brand span { display:grid; line-height:1.12; }.brand strong { color:#252c3d; font-size:15px; letter-spacing:.5px; }.brand small { margin-top:4px; color:var(--blue); font-size:8px; font-weight:800; letter-spacing:1.5px; }.site-nav { display:flex; gap:28px; align-items:center; color:#697386; font-size:13px; font-weight:600; }.site-nav a { position:relative; padding:27px 0 24px; transition:color .2s ease; }.site-nav a::after { position:absolute; right:0; bottom:-1px; left:0; height:2px; content:""; background:var(--blue); transform:scaleX(0); transition:transform .2s ease; }.site-nav a:hover,.site-nav a.active { color:#252c3d; }.site-nav a.active::after { transform:scaleX(1); }.join-link { justify-self:end; color:#36425e; font-size:12px; font-weight:700; transition:color .2s ease,opacity .2s ease; }.join-link:hover { color:var(--blue); opacity:.78; }.menu-toggle { display:none; }

.hero-shell { display:grid; grid-template-columns:minmax(0,1fr) minmax(350px,.78fr); gap:66px; align-items:center; min-height:620px; padding-top:76px; padding-bottom:68px; }.hero-copy { max-width:630px; }.eyebrow { display:flex; align-items:center; gap:9px; margin-bottom:15px; color:#6573aa; font-size:10px; font-weight:800; letter-spacing:1.8px; }.eyebrow span { width:25px; height:1px; background:var(--blue); }.hero-copy h1,.page-intro h1 { margin-bottom:21px; color:#202638; font-size:clamp(44px,5.1vw,70px); font-weight:800; letter-spacing:0; line-height:1.09; }.hero-copy h1 em { color:var(--blue); font-style:normal; }.hero-intro { max-width:590px; margin-bottom:0; color:#687285; font-size:15px; line-height:1.9; }.hero-actions { display:flex; flex-wrap:wrap; gap:11px; margin-top:29px; }.primary-action,.secondary-action { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; padding:0 15px; border-radius:10px; font-size:13px; font-weight:700; transition:transform .2s ease,box-shadow .2s ease; }.primary-action { color:#fff; background:var(--blue); border:1px solid var(--blue); box-shadow:0 11px 22px rgba(70,95,255,.23); }.primary-action:hover { box-shadow:0 15px 25px rgba(70,95,255,.3); transform:translateY(-2px); }.secondary-action { color:#47526b; background:#fff; border:1px solid #dce1eb; }.secondary-action:hover { background:#f9faff; border-color:#bdc7e5; }.hero-actions .lucide,.inline-action .lucide { width:16px; height:16px; }.copy-feedback { min-height:20px; margin:10px 0 0; color:var(--mint); font-size:12px; font-weight:600; }.hero-facts { display:flex; flex-wrap:wrap; gap:32px; margin:43px 0 0; }.hero-facts div { display:grid; gap:1px; }.hero-facts dt { color:#8a93a4; font-size:11px; }.hero-facts dd { margin:0; color:#30394d; font-size:16px; font-weight:800; }

/* 需求说明：右侧工作台卡片只承担氛围和辅助状态，不放置入服等核心业务行动。 */
.workspace-card { position:relative; align-self:center; min-height:455px; padding:17px; overflow:hidden; background:rgba(255,255,255,.84); border:1px solid rgba(218,224,238,.95); border-radius:22px; box-shadow:var(--shadow); }.workspace-card::after { position:absolute; top:48px; right:-16px; width:154px; height:154px; content:""; border:1px solid rgba(70,95,255,.13); border-radius:50%; }.workspace-top { display:flex; justify-content:space-between; color:#798298; font-size:10px; font-weight:700; letter-spacing:1px; }.workspace-top i { display:inline-block; width:7px; height:7px; margin-right:5px; background:var(--mint); border-radius:50%; animation:blink 2s ease-in-out infinite; }.workspace-top span:last-child { color:var(--mint); }.cube-field { position:relative; display:grid; height:302px; place-items:center; margin-top:14px; overflow:hidden; border:1px solid #eceef4; border-radius:15px; background:#f5f6fa; }.cube-field::before { position:absolute; inset:0; content:""; opacity:.65; background-image:linear-gradient(rgba(119,132,163,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(119,132,163,.1) 1px,transparent 1px); background-size:22px 22px; }.cube { position:absolute; width:90px; height:90px; border:1px solid rgba(70,95,255,.23); box-shadow:12px 13px 0 rgba(70,95,255,.09); transform:rotate(30deg) skew(-8deg,-8deg); animation:float 6s ease-in-out infinite; }.cube::after { position:absolute; inset:12px; content:""; background:rgba(112,104,255,.1); border:1px solid rgba(112,104,255,.14); }.cube-a { background:#dfe4ff; transform:translate(-44px,-17px) rotate(30deg) skew(-8deg,-8deg); }.cube-b { width:57px; height:57px; background:#d7f3ee; transform:translate(70px,50px) rotate(30deg) skew(-8deg,-8deg); animation-delay:-2s; }.cube-c { width:42px; height:42px; background:#faeacf; transform:translate(82px,-71px) rotate(30deg) skew(-8deg,-8deg); animation-delay:-4s; }.orbit-ring { position:absolute; width:206px; height:118px; border:1px solid rgba(70,95,255,.22); border-radius:50%; transform:rotate(-18deg); }.workspace-info { display:flex; align-items:center; justify-content:space-between; margin-top:15px; }.workspace-info small { display:block; color:#8a93a4; font-size:11px; }.workspace-info strong { display:block; margin-top:2px; color:#313b50; font-size:13px; }.workspace-info img { width:43px; height:43px; border:1px solid #e6eaf2; border-radius:11px; object-fit:cover; }

.section-shell { padding-top:88px; }.section-heading { display:flex; align-items:end; justify-content:space-between; gap:25px; margin-bottom:26px; }.section-heading h2,.subhead h2 { margin:0; color:#252c3d; font-size:29px; letter-spacing:0; line-height:1.25; }.quiet-link { display:inline-flex; align-items:center; gap:7px; color:#6270a7; font-size:12px; font-weight:700; }.quiet-link .lucide { width:15px; }.server-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.server-card,.add-server-card { min-height:215px; padding:21px; border:1px solid #e2e6ef; border-radius:var(--radius); box-shadow:0 5px 14px rgba(39,52,92,.035); transition:box-shadow .25s ease,transform .25s ease,border-color .25s ease; }.server-card { position:relative; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; background:#fff; }.server-card::after { position:absolute; right:-22px; bottom:-31px; width:115px; height:115px; content:""; background:#f0f2ff; border-radius:50%; }.server-card:hover,.add-server-card:hover { border-color:#c8d0ff; box-shadow:0 15px 27px rgba(54,72,145,.1); transform:translateY(-4px); }.card-index { color:#9aa5cc; font-size:11px; font-weight:800; letter-spacing:1.3px; }.server-card p { margin-bottom:4px; color:#7a859a; font-size:12px; }.server-card h3 { position:relative; z-index:1; margin-bottom:3px; color:#252c3d; font-size:23px; }.server-card strong { position:relative; z-index:1; color:var(--blue); font-size:14px; }.card-status { position:relative; z-index:1; display:inline-flex; align-items:center; gap:6px; width:max-content; color:var(--mint); font-size:11px; font-weight:700; }.card-status i,.node-light { width:7px; height:7px; background:var(--mint); border-radius:50%; box-shadow:0 0 0 4px rgba(23,166,122,.1); }.add-server-card { display:grid; align-content:center; justify-items:center; background:rgba(255,255,255,.52); border-style:dashed; text-align:center; }.add-server-card .lucide { width:22px; height:22px; color:#8d9ad0; }.add-server-card p { margin:11px 0 1px; color:#5e6b85; font-size:13px; font-weight:700; }.add-server-card small { color:#959eae; font-size:11px; }

.feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.feature-card { position:relative; min-height:205px; padding:21px; background:rgba(255,255,255,.68); border:1px solid #e2e6ef; border-radius:var(--radius); transition:transform .25s ease,background .25s ease; }.feature-card:hover { background:#fff; transform:translateY(-4px); }.feature-card > span { position:absolute; top:17px; right:18px; color:#b1b9ce; font-size:11px; font-weight:800; }.feature-card > .lucide { width:25px; height:25px; color:var(--blue); }.feature-card h3 { margin:42px 0 7px; color:#2b3447; font-size:18px; }.feature-card p { margin:0; color:#747f91; font-size:13px; line-height:1.75; }


.page-shell { min-height:calc(100vh - 132px); padding-top:67px; padding-bottom:76px; }.page-intro { max-width:720px; margin-bottom:46px; }.page-intro h1 { font-size:clamp(42px,5vw,62px); }.page-intro > p:last-child { color:#707a8d; font-size:15px; line-height:1.85; }.status-summary { display:grid; grid-template-columns:.85fr 1.15fr; gap:20px; align-items:center; padding:25px; background:#fff; border:1px solid #e0e5ef; border-radius:var(--radius); box-shadow:0 8px 19px rgba(39,52,92,.04); }.status-summary > div { padding-left:3px; }.status-summary p { margin:0 0 1px 17px; color:#7d889b; font-size:12px; }.status-summary strong { margin-left:17px; color:#263148; font-size:21px; }.pulse-dot { position:absolute; width:9px; height:9px; margin-top:7px; background:var(--mint); border-radius:50%; animation:blink 2s ease infinite; }.status-summary dl { display:grid; grid-template-columns:repeat(3,1fr); gap:13px; margin:0; padding-left:26px; border-left:1px solid #edf0f5; }.status-summary dt { color:#8c95a5; font-size:11px; }.status-summary dd { margin:3px 0 0; color:#344058; font-size:18px; font-weight:800; }.node-list { display:grid; gap:13px; margin-top:18px; }.node-card { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:23px; background:#fff; border:1px solid #e0e5ef; border-radius:var(--radius); box-shadow:0 6px 15px rgba(39,52,92,.035); transition:transform .2s ease,box-shadow .2s ease; }.node-card:hover { box-shadow:0 14px 27px rgba(39,52,92,.09); transform:translateY(-3px); }.node-main { display:flex; align-items:center; gap:14px; }.node-main > .node-light { flex:0 0 9px; width:9px; height:9px; }.node-main p { margin:0 0 3px; color:#8b96aa; font-size:10px; font-weight:800; letter-spacing:1.1px; }.node-main h2 { margin:0; color:#293348; font-size:21px; }.node-main strong { color:var(--blue); font-size:12px; }.node-meta { display:flex; align-items:center; gap:25px; color:#8790a1; font-size:12px; }.node-meta b { display:block; margin-top:1px; color:#344058; font-size:13px; }.node-meta a { display:inline-flex; align-items:center; gap:5px; color:#5668d9; font-weight:700; }.node-meta .lucide { width:14px; }.status-help { display:grid; grid-template-columns:auto 1fr auto; gap:15px; align-items:center; margin-top:18px; padding:21px 23px; color:#60709b; background:#edf0ff; border-radius:15px; }.status-help > .lucide { color:#5368e7; }.status-help h2 { margin:0 0 2px; color:#35405d; font-size:14px; }.status-help p { margin:0; color:#72809b; font-size:12px; }.status-help button,.faq-side button,.guide-card button { display:inline-flex; align-items:center; gap:6px; width:max-content; padding:0; color:#4d60d9; background:transparent; border:0; font-size:12px; font-weight:800; }.status-help button .lucide,.faq-side button .lucide,.guide-card button .lucide { width:15px; }

.faq-layout { display:grid; grid-template-columns:.72fr 1.28fr; gap:42px; align-items:start; }.faq-side { position:sticky; top:100px; padding:24px; background:#fff; border:1px solid #e2e6ef; border-radius:var(--radius); box-shadow:0 8px 19px rgba(39,52,92,.04); }.faq-side > p { margin-bottom:12px; color:#7280b6; font-size:10px; font-weight:800; letter-spacing:1.4px; }.faq-side h2 { margin-bottom:20px; color:#2d374d; font-size:23px; line-height:1.4; }.faq-list { border-top:1px solid #dfe4ee; }.faq-item { border-bottom:1px solid #dfe4ee; }.faq-item summary { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:21px 4px; color:#333c51; font-size:15px; font-weight:700; cursor:pointer; list-style:none; }.faq-item summary::-webkit-details-marker { display:none; }.faq-item summary .lucide { color:#6679e5; transition:transform .2s ease; }.faq-item[open] summary .lucide { transform:rotate(45deg); }.faq-item p { max-width:710px; margin:0; padding:0 4px 21px; color:#737e91; font-size:13px; line-height:1.85; }

.resource-section { margin-top:72px; }.subhead { margin-bottom:21px; }.subhead > p { margin-bottom:6px; color:#7887bf; font-size:10px; font-weight:800; letter-spacing:1.5px; }.guide-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.guide-card { min-height:205px; padding:22px; background:#fff; border:1px solid #e1e6ef; border-radius:var(--radius); }.guide-card > span { color:#6377e6; font-size:12px; font-weight:800; }.guide-card h3 { margin:37px 0 7px; color:#2c364c; font-size:18px; }.guide-card p { margin-bottom:14px; color:#778195; font-size:13px; line-height:1.75; }.guide-card a { display:inline-flex; align-items:center; gap:6px; color:#4d60d9; font-size:12px; font-weight:800; }.guide-card a .lucide { width:15px; }.team-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }.team-card { display:flex; align-items:center; gap:18px; padding:21px; background:#fff; border:1px solid #e1e6ef; border-radius:var(--radius); }.team-card img { width:67px; height:67px; border:2px solid #ecedff; border-radius:18px; object-fit:cover; }.team-card p { margin:0 0 2px; color:#7887bf; font-size:10px; font-weight:800; letter-spacing:1.1px; }.team-card h3 { margin:0 0 2px; color:#2b354b; font-size:21px; }.team-card span { color:#768195; font-size:13px; }.announcement { display:grid; grid-template-columns:100px 1fr; gap:20px; padding:23px; background:#fff; border:1px solid #e1e6ef; border-radius:var(--radius); }.announcement time { color:#6476dd; font-size:12px; font-weight:800; }.announcement h3 { margin-bottom:5px; color:#303a50; font-size:17px; }.announcement p { margin:0; color:#778195; font-size:13px; }.sponsor-empty { display:grid; min-height:152px; place-content:center; justify-items:center; background:rgba(255,255,255,.62); border:1px dashed #d6dce9; border-radius:var(--radius); text-align:center; }.sponsor-empty .lucide { width:26px; height:26px; color:#7484e1; }.sponsor-empty p { margin:8px 0 1px; color:#54617b; font-size:13px; font-weight:800; }.sponsor-empty small { color:#8b95a5; font-size:11px; }

.site-footer { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:58px; color:#8791a1; border-top:1px solid #e2e6ee; font-size:11px; }.site-footer button { display:inline-flex; align-items:center; gap:5px; padding:0; color:#6678d9; background:transparent; border:0; font-size:11px; font-weight:800; }.site-footer .lucide { width:14px; }.reveal { opacity:0; transform:translateY(13px); transition:opacity .55s ease,transform .55s ease; }.reveal.is-visible { opacity:1; transform:translateY(0); }.delay-one { transition-delay:.12s; }.delay-two { transition-delay:.24s; } @keyframes float { 50% { translate:0 -11px; } } @keyframes blink { 50% { opacity:.38; box-shadow:0 0 0 6px rgba(23,166,122,.07); } }

@media (max-width:850px) { .nav-shell { width:calc(100% - 32px); grid-template-columns:1fr auto auto; column-gap:10px; min-height:65px; }.menu-toggle { display:grid; width:37px; height:37px; place-items:center; margin-right:10px; color:#47526b; background:#fff; border:1px solid #dde2ed; border-radius:10px; }.menu-toggle .lucide { width:18px; }.site-nav { position:absolute; top:65px; right:0; left:0; display:none; gap:0; padding:8px 16px 14px; background:#fff; border-bottom:1px solid #e4e8f0; box-shadow:0 8px 15px rgba(39,52,92,.05); }.site-nav.is-open { display:grid; }.site-nav a { padding:10px 0; }.site-nav a::after { right:auto; bottom:5px; width:25px; }.join-link { padding:0 10px; }.hero-shell { grid-template-columns:1fr; gap:31px; min-height:auto; padding-top:62px; padding-bottom:34px; }.workspace-card { width:min(100%,540px); min-height:390px; }.cube-field { height:245px; }.server-grid,.feature-grid,.guide-grid { grid-template-columns:1fr; }.section-shell { padding-top:65px; }.status-summary,.faq-layout { grid-template-columns:1fr; }.status-summary dl { padding:18px 0 0; border-top:1px solid #edf0f5; border-left:0; }.node-card { align-items:flex-start; flex-direction:column; }.node-meta { width:100%; justify-content:space-between; }.faq-side { position:static; }.resource-section { margin-top:58px; }.team-grid { grid-template-columns:1fr; } }
@media (max-width:520px) { .nav-shell,.page-shell { width:calc(100% - 32px); }.page-shell { padding-top:48px; }.brand img { width:34px; height:34px; }.brand strong { font-size:14px; }.join-link { padding:0 4px; font-size:11px; }.hero-copy h1 { font-size:45px; }.hero-facts { gap:17px; }.section-heading { align-items:flex-start; flex-direction:column; }.workspace-card { min-height:350px; }.cube-field { height:209px; }.status-summary dl { grid-template-columns:1fr 1fr; }.status-summary dl div:last-child { display:none; }.node-meta { display:grid; grid-template-columns:1fr 1fr; gap:15px; }.node-meta a { grid-column:1 / -1; }.status-help { grid-template-columns:auto 1fr; }.status-help button { grid-column:1 / -1; }.announcement { grid-template-columns:1fr; gap:7px; }.site-footer { width:calc(100% - 32px); flex-wrap:wrap; padding:17px 0; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation-duration:.01ms !important; scroll-behavior:auto !important; transition-duration:.01ms !important; } }

/*
 * 参考站视觉适配：使用服务器自己的场景图作为沉浸式首屏，透明导航与留白内容区延续自然的 Minecraft 社区氛围。
 * 需求说明：保留左上品牌、顶部导航和左侧核心入服信息，避免使用其它服务器的标识、图片或文案。
 */
body { background:#fff; background-image:none; color:#25303b; } body::before { display:none; }
/* 需求说明：首页书签栏贴紧网页顶部并覆盖头图，黑色底色由滚动距离连续计算，避免在半屏位置突变。 */
.home-page .site-header { --home-nav-opacity:0; position:fixed; top:0; right:0; left:0; border-bottom-color:transparent; background-color:rgba(0,0,0,var(--home-nav-opacity)); backdrop-filter:none; transition:background-color .06s linear; }.home-page .brand strong,.home-page .site-nav a,.home-page .join-link { color:#fff; }.home-page .brand small { color:#dce9ff; }.home-page .brand img { border-color:rgba(255,255,255,.5); box-shadow:none; }.home-page .site-nav a::after { background:#fff; }
/* 需求说明：首屏图片仅作为场景氛围，核心介绍和 QQ 入口固定在左下视觉区，方便玩家首次访问时快速行动。 */
/* 需求说明：使用用户提供的科技建筑截图作为首页头图，展示服务器的科技向实际建设成果。 */
/* 需求说明：头图高度扣除原书签栏的 74px，导航采用覆盖定位后不再额外拉长首屏。 */
.home-page .hero-shell { position:relative; display:block; width:100%; max-width:none; min-height:686px; padding:0; overflow:hidden; background-color:#4e6b8a; background-image:none; }.home-page .hero-shell::before { position:absolute; inset:0; content:""; background:rgba(19,33,49,.36); }.home-page .hero-copy { position:relative; z-index:1; max-width:630px; padding:372px 7vw 72px; color:#fff; }.home-page .hero-copy .eyebrow { color:#ecf6ff; }.home-page .hero-copy .eyebrow span { background:#ecf6ff; }.home-page .hero-copy h1 { color:#fff; font-size:clamp(44px,5vw,70px); text-shadow:0 2px 14px rgba(0,0,0,.38); }.home-page .hero-copy h1 em { color:#fff; }.home-page .hero-intro { max-width:570px; color:#f4f7fb; text-shadow:0 1px 8px rgba(0,0,0,.28); }.home-page .primary-action { color:#253242; background:#fff; border-color:#fff; box-shadow:0 10px 25px rgba(0,0,0,.18); }.home-page .secondary-action { color:#fff; background:rgba(20,31,44,.24); border-color:rgba(255,255,255,.55); }.home-page .hero-facts { gap:37px; }.home-page .hero-facts dt { color:#e1eaf3; }.home-page .hero-facts dd { color:#fff; }.home-page .workspace-card { display:none; }
.home-page .section-shell { width:min(1100px,calc(100% - 48px)); padding-top:88px; }.section-heading h2,.subhead h2 { font-weight:700; }.server-card,.add-server-card,.feature-card,.guide-card,.team-card,.announcement,.status-summary,.node-card,.faq-side { border-color:#e5e5e5; border-radius:7px; box-shadow:none; }.server-card:hover,.add-server-card:hover,.feature-card:hover,.node-card:hover { border-color:#c9c9c9; box-shadow:0 12px 25px rgba(38,52,67,.08); }.server-card::after { background:#f2f2f2; }.feature-card { background:#fff; }.feature-card > .lucide,.card-status,.quiet-link { color:#718fa4; }.section-shell .eyebrow,.subhead > p { color:#e67e22; }.section-shell .eyebrow span { background:#e67e22; }.site-footer { width:min(1100px,calc(100% - 48px)); color:#8a8a8a; border-color:#e5e5e5; }
/* 需求说明：三大分服以参考图的居中标题、上图下文卡片展示，图片负责传达玩法氛围，文字负责说明版本和玩法边界。 */
.realm-explorer { padding:118px max(24px,calc((100% - 1100px) / 2)); background:#fff; }.realm-heading { max-width:760px; margin:0 auto 66px; text-align:center; }.realm-heading h2 { margin-bottom:24px; color:#182233; font-size:clamp(32px,3.4vw,48px); font-weight:800; letter-spacing:.02em; }.realm-heading p { margin:0; color:#778397; font-size:16px; line-height:1.8; }.realm-heading span { display:block; width:68px; height:4px; margin:30px auto 0; background:#1769d8; }.realm-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; }.realm-card { overflow:hidden; background:#f6f7fa; border-radius:16px; transition:transform .25s ease,box-shadow .25s ease; }.realm-card:hover { box-shadow:0 18px 35px rgba(32,48,73,.14); transform:translateY(-6px); }.realm-card img { display:block; width:100%; aspect-ratio:1.5 / 1; object-fit:cover; transition:transform .35s ease; }.realm-card:hover img { transform:scale(1.04); }.realm-card-body { padding:31px 30px 34px; }.realm-code { margin-bottom:13px; color:#246fda; font-size:11px; font-weight:800; letter-spacing:1.1px; }.realm-card h3 { margin-bottom:16px; color:#182233; font-size:26px; line-height:1.2; }.realm-card-body > p:not(.realm-code) { min-height:112px; margin-bottom:21px; color:#6c788b; font-size:14px; line-height:1.75; }.realm-card ul { display:grid; gap:10px; margin:0; padding-left:22px; color:#344155; font-size:13px; line-height:1.45; }.realm-card li::marker { color:#1769d8; }
@media (max-width:850px) { .realm-explorer { padding:82px 24px; }.realm-heading { margin-bottom:42px; }.realm-grid { grid-template-columns:1fr; max-width:560px; margin:auto; }.realm-card-body > p:not(.realm-code) { min-height:0; } }
@media (max-width:520px) { .realm-explorer { padding:64px 16px; }.realm-heading h2 { font-size:31px; }.realm-heading p { font-size:14px; }.realm-card-body { padding:25px 22px 28px; } }
/* 需求说明：左侧轮播一页固定三张成员卡片，右侧说明模块独立于轨道，切换时保持不动。 */
.management-section { padding:96px max(24px,calc((100% - 1320px) / 2)); color:#242424; background:#f7f7f7; }.management-layout { display:flex; align-items:center; gap:clamp(44px,7vw,118px); }.management-showcase { display:grid; grid-template-columns:52px minmax(0,1fr) 52px; align-items:center; gap:20px; flex:1 1 830px; min-width:0; }.management-viewport { min-width:0; overflow:hidden; }.management-track { display:flex; transition:transform .5s ease; }.management-page { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; flex:0 0 100%; min-width:100%; }.management-card { min-width:0; text-align:center; }.management-avatar { width:100%; aspect-ratio:1 / 1.12; overflow:hidden; background:#dfe8ec; }.management-avatar img { display:block; width:100%; height:100%; object-fit:cover; }.management-card-body { padding-top:20px; }.management-card h3 { margin:0 0 9px; color:#222; font-size:clamp(20px,1.8vw,28px); font-weight:500; line-height:1.25; }.management-role { margin:0 0 8px; color:#26b5e6; font-size:14px; line-height:1.45; }.management-description { margin:0; color:#66727c; font-size:13px; line-height:1.6; }.management-switch { display:grid; width:52px; height:52px; padding:0; place-items:center; color:#fff; background:#25b8e9; border:0; cursor:pointer; transition:background .2s ease,transform .2s ease; }.management-switch:hover { background:#119dcc; transform:translateY(-2px); }.management-switch:focus-visible { outline:3px solid rgba(37,184,233,.35); outline-offset:4px; }.management-switch .lucide { width:28px; height:28px; stroke-width:3; }.management-static-intro { flex:0 1 270px; min-width:245px; }.management-static-intro h2 { margin:0; color:#242424; font-size:clamp(35px,3.1vw,48px); font-weight:400; line-height:1.18; }.management-static-intro p { margin:4px 0 58px; color:#25b8e9; font-size:clamp(28px,2.5vw,40px); line-height:1.2; }.management-static-intro a { display:inline-flex; align-items:center; gap:9px; padding-bottom:2px; color:#292929; border-bottom:2px solid #25b8e9; font-size:15px; line-height:1.5; text-decoration:none; }.management-static-intro a:hover { color:#119dcc; }.management-static-intro a .lucide { width:20px; height:20px; } @media (prefers-reduced-motion:reduce) { .management-track { transition:none; } }
@media (max-width:860px) { .management-section { padding:64px 18px; }.management-layout { display:grid; gap:54px; }.management-static-intro { order:-1; min-width:0; text-align:center; }.management-static-intro p { margin-bottom:28px; }.management-page { grid-template-columns:1fr; gap:38px; }.management-avatar { max-width:340px; margin:auto; }.management-showcase { grid-template-columns:44px minmax(0,1fr) 44px; gap:10px; }.management-switch { width:44px; height:44px; }.management-switch .lucide { width:23px; height:23px; } }
/* 需求说明：保留入服横幅的场景与标题，群号提示及复制按钮由下方联系方式区块统一承担。 */
.join-banner { position:relative; display:grid; min-height:420px; place-items:center; margin-top:88px; overflow:hidden; color:#fff; background:#5d7590 url("assets/hero.jpg") center / cover; text-align:center; }.join-banner::before { position:absolute; inset:0; content:""; background:rgba(25,35,42,.48); }.join-banner-content { position:relative; z-index:1; display:grid; justify-items:center; padding:40px 24px; }.join-banner-content > p { margin-bottom:9px; color:#e3edf8; font-size:11px; font-weight:800; letter-spacing:2px; }.join-banner h2 { margin-bottom:0; font-size:42px; letter-spacing:2px; }
/* 需求说明：状态、问答和资料页沿用场景式导航色，内容区域保持清晰的浅色阅读背景。 */
body[data-page="status"] .site-header,body[data-page="faq"] .site-header,body[data-page="community"] .site-header { border-bottom-color:rgba(255,255,255,.18); background:rgba(41,60,79,.92); }.site-header .brand strong,.site-header .site-nav a { color:#293446; } body[data-page="status"] .brand strong,body[data-page="faq"] .brand strong,body[data-page="community"] .brand strong,body[data-page="status"] .site-nav a,body[data-page="faq"] .site-nav a,body[data-page="community"] .site-nav a,body[data-page="status"] .join-link,body[data-page="faq"] .join-link,body[data-page="community"] .join-link { color:#fff; } body[data-page="status"] .brand small,body[data-page="faq"] .brand small,body[data-page="community"] .brand small { color:#dce9ff; } body[data-page="status"] .brand img,body[data-page="faq"] .brand img,body[data-page="community"] .brand img { border-color:rgba(255,255,255,.5); box-shadow:none; } body[data-page="status"] .site-nav a::after,body[data-page="faq"] .site-nav a::after,body[data-page="community"] .site-nav a::after { background:#fff; }.page-shell { width:min(1100px,calc(100% - 48px)); }.page-intro { position:relative; max-width:none; margin-right:0; margin-bottom:42px; padding:42px; overflow:hidden; background:#546f87 url("assets/hero.jpg") center 43% / cover; border-radius:7px; }.page-intro::before { position:absolute; inset:0; content:""; background:rgba(26,43,58,.57); }.page-intro > * { position:relative; z-index:1; }.page-intro .eyebrow { color:#edf6ff; }.page-intro .eyebrow span { background:#edf6ff; }.page-intro h1,.page-intro > p:last-child { color:#fff; text-shadow:0 1px 8px rgba(0,0,0,.25); }.status-help { background:#eef3f6; border-radius:7px; }.faq-item { border-color:#e5e5e5; }.faq-item summary { color:#394452; }.faq-item summary .lucide { color:#718fa4; }.faq-side { background:#fff; }.sponsor-empty { background:#f9f9f9; border-color:#e5e5e5; border-radius:7px; }
@media (max-width:850px) { .home-page .menu-toggle { color:#fff; background:rgba(255,255,255,.12); border-color:rgba(255,255,255,.4); }.home-page .site-nav { background:#273c51; border-bottom-color:rgba(255,255,255,.18); }.home-page .hero-shell { min-height:625px; background-position:center; }.home-page .hero-copy { padding:338px 32px 55px; }.page-intro { padding:34px 28px; } }
@media (max-width:520px) { .home-page .hero-shell { min-height:600px; }.home-page .hero-copy { padding:322px 24px 42px; }.home-page .hero-copy h1 { font-size:43px; }.home-page .hero-intro { font-size:13px; }.home-page .hero-facts { gap:19px; }.page-intro { padding:29px 22px; }.join-banner { min-height:330px; margin-top:65px; }.join-banner h2 { font-size:34px; }.site-footer,.home-page .section-shell,.page-shell { width:calc(100% - 32px); } }

/* 需求说明：首页导航处于深色场景图上方，因此通过更具体的选择器固定白色文字对比度。 */
.home-page .site-header .brand strong,.home-page .site-header .site-nav a { color:#fff; }

/* 需求说明：旧官网的横幅 Logo 保留透明边缘，使用独立尺寸覆盖默认方形图标样式。 */
.brand img.brand-banner { width:190px; height:auto; border:0; border-radius:0; object-fit:contain; box-shadow:none; }.home-page .brand img.brand-banner { border:0; }
/* 需求说明：旧官网的分区展示图作为卡片背景，文字层保持前景层级，方便继续阅读版本与开放状态。 */
.server-card,.add-server-card { isolation:isolate; }.server-visual { position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover; opacity:.27; filter:saturate(.88) contrast(.92); }.server-card::after { z-index:0; opacity:.48; }.server-card > :not(.server-visual),.add-server-card > :not(.server-visual) { position:relative; z-index:1; }.add-server-card .server-visual { opacity:.16; }
@media (max-width:520px) { .brand img.brand-banner { width:142px; } }

/*
 * 需求说明：首页头图需要作为底层场景保留在视口中；标题与后续内容属于同一浅色内容层，
 * 用户向下滚动时内容层整体上移并逐步覆盖场景图，首屏高度严格等于一个视口高度。
 */
.home-page main { position:relative; }
.home-page .hero-shell { position:sticky; top:0; z-index:0; min-height:100vh; }
.home-page .home-content-layer { position:relative; z-index:1; margin-top:-100vh; }
.home-page .home-intro-shell { display:grid; width:min(1100px,calc(100% - 48px)); min-height:100vh; place-items:center; margin:0 auto; padding:74px 0 0; text-align:center; }
/* 需求说明：首页标题仅作为场景标识，使用较小字号、常规字重和柔和白色，避免压过头图主体。 */
.home-page .home-title { margin:0; color:rgba(255,255,255,.74); font-size:clamp(34px,4.2vw,56px); font-weight:500; letter-spacing:.08em; line-height:1.2; text-shadow:0 2px 12px rgba(0,0,0,.3); }
.home-page .home-sections-layer { padding-top:1px; background:#fff; box-shadow:0 -18px 40px rgba(38,52,67,.08); }
/* 需求说明：旧官网服务器介绍以文案、Logo 和角色素材并列展示，保留原有欢迎语与社区定位。 */
.legacy-about-section { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(270px,.72fr); gap:48px; align-items:center; width:100%; min-height:530px; margin:0 auto; padding:78px max(24px,calc((100% - 1100px) / 2)) 58px; background:#fff; }
.legacy-about-copy { display:grid; justify-items:center; text-align:center; }
.legacy-about-copy > p { margin-bottom:20px; color:#8d8d8d; font-size:15px; }
.legacy-about-copy h2 { margin-bottom:58px; color:#e67e22; font-family:"Open Sans","Microsoft YaHei",Arial,sans-serif; font-size:29px; font-weight:800; letter-spacing:1px; }
.legacy-about-copy > div { color:#617182; font-size:15px; line-height:2; text-align:left; }
.legacy-about-copy img { width:min(400px,88%); margin-top:28px; }
.legacy-about-character { width:min(100%,390px); justify-self:end; align-self:end; }

/* 需求说明：窄屏沿用一屏头图高度，避免导航和标题向首屏额外追加高度。 */
@media (max-width:850px) { .home-page .hero-shell { min-height:100vh; }.home-page .home-content-layer { margin-top:-100vh; }.home-page .home-intro-shell { width:calc(100% - 32px); min-height:100vh; padding-top:65px; }.home-page .home-title { font-size:clamp(30px,8vw,46px); } }
@media (max-width:520px) { .home-page .hero-shell { min-height:100vh; }.home-page .home-content-layer { margin-top:-100vh; }.home-page .home-intro-shell { min-height:100vh; padding-top:65px; }.home-page .home-title { font-size:clamp(29px,8.5vw,40px); letter-spacing:.04em; } }

/*
 * 需求说明：首屏沿用旧官网的全屏淡入淡出轮播逻辑，每 6 秒自动切换，左右按钮允许玩家立即切换场景。
 * 头图单独分层，避免切换时影响标题和页面滚动内容。
 */
.home-page .hero-slides { position:absolute; inset:0; z-index:0; overflow:hidden; }
.home-page .hero-slide { position:absolute; inset:0; opacity:0; background-position:center; background-size:cover; transition:opacity .6s ease; }
.home-page .hero-slide.is-active { opacity:1; }
.home-page .hero-shell::before { z-index:1; }
.home-page .home-intro-shell { position:relative; }
/* 需求说明：标题恢复旧官网的 Open Sans 橙白双色、800 字重和 2px 字距，轮播切换时同步显示对应文案。 */
.hero-carousel-copy { position:absolute; inset:0; display:grid; align-content:center; justify-items:center; padding:74px 48px 0; opacity:0; pointer-events:none; text-align:center; transform:translateY(12px); transition:opacity .35s ease,transform .35s ease; }
.hero-carousel-copy.is-active { opacity:1; pointer-events:auto; transform:translateY(0); }
.home-page .home-title { color:#fff; font-family:"Open Sans","Microsoft YaHei",Arial,sans-serif; font-size:clamp(36px,4vw,50px); font-weight:800; letter-spacing:2px; line-height:1.2; text-shadow:none; }
.home-page .home-title span { color:#e67e22; }
.hero-slide-subtitle { margin:22px 0 0; color:#fff; font-family:"Open Sans","Microsoft YaHei",Arial,sans-serif; font-size:20px; font-weight:300; letter-spacing:1px; line-height:1.5; }
.hero-slide-action { display:inline-flex; align-items:center; justify-content:center; width:180px; min-height:61px; margin-top:50px; padding:12px 15px; color:#fff; background:#354b60; border-radius:3px; font-size:18px; font-weight:400; transition:background .2s ease; }
.hero-slide-action:hover { color:#fff; background:#e67e22; }
/* 需求说明：桌面端的箭头在鼠标离开首屏后淡出，保留旧官网“悬停露出控制器”的操作方式。 */
/* 需求说明：控制器跨越整个视口宽度，使左右箭头贴近屏幕边缘，不受居中内容容器宽度限制。 */
.hero-carousel-controls { position:absolute; top:50%; left:50%; z-index:2; display:flex; justify-content:space-between; width:100vw; padding:0 15px; opacity:0; pointer-events:none; transform:translate(-50%,-50%); transition:opacity .25s ease; visibility:hidden; }
/* 需求说明：箭头位于视口边缘，显示条件必须覆盖整层首页内容；否则鼠标从中间移向箭头时会提前退出悬停区域。 */
.home-content-layer:hover .hero-carousel-controls,.home-content-layer:focus-within .hero-carousel-controls { opacity:1; visibility:visible; }
.hero-carousel-controls button { display:grid; width:40px; height:40px; place-items:center; color:#e67e22; background:#fff; border:0; box-shadow:0 0 12px rgba(0,0,0,.1); pointer-events:auto; transition:color .2s ease,background .2s ease,transform .2s ease; }
.hero-carousel-controls button:hover { color:#fff; background:#e67e22; transform:scale(1.06); }
.hero-carousel-controls .lucide { width:27px; height:27px; stroke-width:2.6; }
@media (max-width:520px) { .hero-carousel-copy { padding:65px 28px 0; }.hero-slide-subtitle { margin-top:16px; font-size:16px; }.hero-slide-action { min-height:53px; margin-top:32px; font-size:16px; }.hero-carousel-controls { padding:0 10px; }.hero-carousel-controls button { width:36px; height:36px; }.home-page .home-title { font-size:clamp(30px,8.5vw,40px); letter-spacing:1px; } }
@media (hover:none) { .hero-carousel-controls { opacity:1; visibility:visible; } }
@media (max-width:850px) { .legacy-about-section { grid-template-columns:1fr; gap:24px; min-height:0; padding-top:62px; padding-bottom:48px; }.legacy-about-copy h2 { margin-bottom:28px; }.legacy-about-character { width:min(300px,72vw); justify-self:center; } }
@media (max-width:520px) { .legacy-about-section { padding-right:24px; padding-left:24px; }.legacy-about-copy > p { margin-bottom:15px; }.legacy-about-copy h2 { font-size:23px; }.legacy-about-copy > div { font-size:14px; line-height:1.9; }.legacy-about-copy img { margin-top:22px; } }

/* 需求说明：联系方式沿用参考图的留白、橙色标题与左右分栏，信息完整且不增加额外页面跳转。 */
.contact-section { background:#fff; }.contact-shell { display:grid; grid-template-columns:1fr 1fr; gap:90px; width:min(1100px,calc(100% - 48px)); min-height:400px; margin:auto; padding:74px 0 68px; }.contact-primary > p,.contact-manual > p { margin-bottom:19px; color:#8b96a4; font-size:13px; }.contact-primary h2,.contact-manual h2 { margin-bottom:58px; color:#e67e22; font-family:"Open Sans","Microsoft YaHei",Arial,sans-serif; font-size:29px; font-weight:800; letter-spacing:1px; }.contact-actions { display:flex; flex-wrap:wrap; gap:14px; }.contact-actions button,.contact-actions a { display:inline-flex; align-items:center; gap:9px; min-height:49px; padding:0 18px; color:#fff; background:#7fc9e6; border:0; border-radius:8px; box-shadow:0 9px 0 #8e8e8e; font-size:18px; font-weight:700; transition:background .2s ease,transform .2s ease,box-shadow .2s ease; }.contact-actions a { color:#fff; background:#354b60; box-shadow:0 9px 0 #293847; font-size:15px; }.contact-actions button:hover,.contact-actions a:hover { transform:translateY(3px); box-shadow:0 6px 0 #8e8e8e; }.contact-actions a:hover { box-shadow:0 6px 0 #293847; }.contact-actions .lucide { width:20px; }.contact-actions span { padding-left:9px; border-left:1px solid rgba(255,255,255,.48); font-size:13px; }.contact-manual dl { display:grid; gap:27px; margin:0; }.contact-manual dl div { display:grid; grid-template-columns:25px 92px 1fr; gap:9px; align-items:start; }.contact-manual dl i { margin-top:2px; color:#e67e22; }.contact-manual dt { color:#4b5d71; font-size:14px; font-weight:800; }.contact-manual dd { margin:0; color:#405973; font-size:14px; line-height:1.55; }.contact-manual dd a { color:#405973; font-weight:700; text-decoration:underline; text-underline-offset:3px; }.contact-manual small { color:#8997a4; font-size:12px; }
@media (max-width:850px) { .contact-shell { grid-template-columns:1fr; gap:58px; min-height:0; padding:60px 0; }.contact-primary h2,.contact-manual h2 { margin-bottom:28px; } }
@media (max-width:520px) { .contact-shell { width:calc(100% - 48px); padding:48px 0; }.contact-primary h2,.contact-manual h2 { font-size:24px; }.contact-actions { display:grid; }.contact-actions button,.contact-actions a { justify-content:center; font-size:15px; }.contact-manual dl div { grid-template-columns:24px 82px 1fr; gap:6px; }.contact-manual dd { font-size:13px; } }

/* 需求说明：公告与文章页参考传统服务器官网的清晰正文阅读结构，列表和详情共用同一浅色内容背景。 */
body[data-page="articles"],body[data-page="wiki"] { background:#fff; }.article-shell { width:min(1000px,calc(100% - 48px)); min-height:calc(100vh - 132px); margin:auto; padding:118px 0 88px; }.article-list-head { padding:44px 54px 38px; background:#fff; border-bottom:1px solid #e5e5e5; }.article-list-head h1 { margin:0 0 12px; color:#26364a; font-size:38px; }.article-list-head > p:last-child { max-width:650px; margin:0; color:#758191; font-size:14px; }.article-list { background:#fff; }.article-preview { display:grid; grid-template-columns:112px 1fr; gap:30px; padding:42px 54px; border-bottom:1px solid #e5e5e5; transition:background .2s ease; }.article-preview:hover { background:#f9f9f9; }.article-preview time { color:#8490a2; font-size:12px; font-weight:700; }.article-preview p,.article-detail header > p { margin:0 0 10px; color:#8994a4; font-size:12px; }.article-preview p span,.article-detail header > p span { color:#e67e22; font-weight:800; }.article-preview h2 { margin:0 0 10px; color:#26364a; font-size:23px; }.article-preview div > div { color:#657487; font-size:14px; line-height:1.8; }.article-preview b { display:inline-flex; align-items:center; gap:6px; margin-top:17px; color:#718fa4; font-size:12px; }.article-preview b .lucide { width:15px; }.article-detail { padding:48px 13%; background:#fff; }.article-back { display:inline-flex; align-items:center; gap:7px; margin-bottom:42px; color:#718fa4; font-size:12px; font-weight:700; }.article-back .lucide { width:16px; }.article-detail header { padding-bottom:35px; border-bottom:1px solid #e5e5e5; }.article-detail header h1 { margin:0 0 15px; color:#26364a; font-size:39px; letter-spacing:1px; }.article-detail header > div { color:#667687; font-size:16px; line-height:1.8; }.article-body { padding-top:42px; }.article-body section + section { margin-top:38px; }.article-body h2 { margin:0 0 15px; color:#2b3a4d; font-size:24px; }.article-body p { margin:0 0 18px; color:#506174; font-size:15px; line-height:2; }.article-not-found { padding:80px 40px; background:#fff; text-align:center; }.article-not-found h1 { color:#26364a; }.article-not-found p { color:#758191; }.article-not-found a { color:#718fa4; font-weight:700; }.wiki-shell { min-height:calc(100vh - 132px); }.wiki-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.wiki-entry { min-height:245px; padding:25px; background:#fff; border:1px solid #e5e5e5; border-radius:7px; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }.wiki-entry:hover { border-color:#c9c9c9; box-shadow:0 12px 25px rgba(38,52,67,.08); transform:translateY(-3px); }.wiki-entry > .lucide { width:25px; height:25px; color:#718fa4; }.wiki-entry > span { display:block; margin:33px 0 5px; color:#8a7359; font-size:10px; font-weight:800; letter-spacing:1.2px; }.wiki-entry h2 { margin:0 0 8px; color:#2d3d50; font-size:19px; }.wiki-entry p { margin:0; color:#738092; font-size:13px; line-height:1.75; }.wiki-entry b { display:inline-flex; align-items:center; gap:6px; margin-top:19px; color:#718fa4; font-size:12px; }.wiki-entry b .lucide { width:15px; }
@media (max-width:850px) { .article-shell { width:calc(100% - 32px); padding-top:97px; }.article-list-head,.article-preview { padding-right:28px; padding-left:28px; }.article-detail { padding:38px 28px; }.wiki-grid { grid-template-columns:1fr; } }
@media (max-width:520px) { .article-shell { width:calc(100% - 32px); padding-top:83px; }.article-list-head { padding:30px 22px; }.article-list-head h1,.article-detail header h1 { font-size:30px; }.article-preview { grid-template-columns:1fr; gap:10px; padding:29px 22px; }.article-preview h2 { font-size:20px; }.article-detail { padding:30px 22px; }.article-back { margin-bottom:28px; }.article-body { padding-top:29px; }.article-body h2 { font-size:20px; }.article-body p { font-size:14px; line-height:1.9; }.wiki-shell { width:calc(100% - 32px); }.wiki-entry { min-height:0; } }

/* 需求说明：收款码紧跟公益支持说明展示，双栏可同时展示两种支付方式，移动端自动改为单列避免缩小二维码。 */
.donation-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:26px; }.donation-card { margin:0; padding:14px; background:#f9f9f9; border:1px solid #e5e5e5; border-radius:7px; }.donation-card img { display:block; width:100%; max-width:360px; margin:auto; border-radius:4px; }.donation-card figcaption { margin-top:12px; color:#506174; font-size:13px; font-weight:700; text-align:center; }
@media (max-width:520px) { .donation-grid { grid-template-columns:1fr; gap:14px; }.donation-card { padding:12px; } }

/*
 * 需求说明：主页补充旧官网的特色、概览、问答和动态区块，并统一正文阅读字号。
 * 这些规则放在文件末尾，确保只覆盖本次新增区块，不改变既有页面的布局基线。
 */
html { scroll-behavior:smooth; }
body { font-size:15px; line-height:1.7; }
.home-page .home-sections-layer { overflow:hidden; }
.speciality-section,.faq-preview-section,.news-preview-section { width:min(1100px,calc(100% - 48px)); margin:0 auto; padding:88px 0; }
/* 需求说明：尺寸、间距、颜色和悬停效果均对齐旧官网的四列特色区。 */
.feature-section { width:100%; padding:60px max(24px,calc((100% - 1100px) / 2)); background:#f9f9f9; text-align:center; }
.feature-section .feature-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px; }
.feature-section .feature-card { display:flex; min-height:218px; padding:30px 15px; flex-direction:column; align-items:center; justify-content:center; background:#fff; border:0; border-radius:0; box-shadow:none; transition:box-shadow .5s ease; }
.feature-section .feature-card::after { position:absolute; right:0; bottom:0; left:0; width:100%; height:5px; content:""; background:#e67e22; opacity:0; transition:opacity .5s ease; }
.feature-section .feature-card:hover { background:#fff; box-shadow:0 0 12px rgba(0,0,0,.1); transform:none; }
.feature-section .feature-card:hover::after { opacity:1; }
.feature-section .feature-card > .lucide { width:40px; height:40px; margin:5px auto 20px; color:#2c3e50; stroke-width:1.8; transition:color .5s ease,transform .5s ease; }
.feature-section .feature-card:hover > .lucide { color:#e67e22; transform:scale(1.2); }
.feature-section .feature-card h3 { margin:0 0 14px; color:#2c3e50; font-family:"Open Sans","Microsoft YaHei",Arial,sans-serif; font-size:14px; font-weight:700; letter-spacing:1px; line-height:21px; transition:color .5s ease; }
.feature-section .feature-card:hover h3 { color:#e67e22; }
.feature-section .feature-card p { margin:0; color:#6f6f6f; font-size:14px; line-height:1.7; }
.speciality-section .section-heading,.news-preview-section .section-heading { display:block; margin-bottom:32px; }
.speciality-section .section-heading > p:last-child,.news-preview-section .section-heading > p:last-child { max-width:620px; margin:9px 0 0; color:#788391; font-size:15px; line-height:1.8; }
.speciality-section .section-heading h2,.news-preview-section .section-heading h2 { font-size:clamp(30px,4vw,42px); }
.fact-strip { padding:26px max(24px,calc((100% - 1100px) / 2)); background:#fff; border-top:1px solid #e5e5e5; border-bottom:1px solid #e5e5e5; }
.fact-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.fact-item { display:grid; gap:2px; padding:4px 20px; border-left:1px solid #e5e5e5; }
.fact-item:first-child { border-left:0; padding-left:0; }
.fact-item strong { color:#2d3a48; font-size:30px; font-weight:700; letter-spacing:.04em; line-height:1.2; }
.fact-item span { color:#87919c; font-size:13px; }
.speciality-section { background:#f9f9f9; }
.speciality-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.speciality-item { min-height:148px; padding:20px; background:#fff; border:1px solid #e5e5e5; border-radius:0; transition:transform .25s ease,box-shadow .25s ease; }
.speciality-item:hover { transform:translateY(-4px); box-shadow:0 12px 24px rgba(38,52,67,.09); }
.speciality-item > .lucide { width:21px; height:21px; color:#718fa4; }
.speciality-item h3 { margin:22px 0 4px; color:#2e3a48; font-size:16px; }
.speciality-item p { margin:0; color:#778493; font-size:13px; line-height:1.7; }
.faq-preview-section { background:#fff; }
.faq-preview-layout { display:grid; grid-template-columns:.72fr 1.28fr; gap:64px; align-items:start; }
.faq-preview-intro { position:sticky; top:102px; }
.faq-preview-intro h2 { margin:0 0 13px; color:#2d3a48; font-size:clamp(30px,4vw,42px); }
.faq-preview-intro > p:not(.eyebrow) { max-width:280px; margin:0 0 27px; color:#788391; font-size:15px; line-height:1.85; }
.faq-preview-intro a { display:inline-flex; align-items:center; gap:6px; color:#718fa4; border-bottom:1px solid #718fa4; font-size:14px; font-weight:700; }
.faq-preview-intro a .lucide { width:15px; }
.faq-preview-list { border-top:1px solid #e5e5e5; }
.faq-preview-item { border-bottom:1px solid #e5e5e5; }
.faq-preview-item summary { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:20px 4px; color:#394452; font-size:16px; font-weight:700; cursor:pointer; list-style:none; }
.faq-preview-item summary::-webkit-details-marker { display:none; }
.faq-preview-item summary .lucide { color:#718fa4; transition:transform .25s ease; }
.faq-preview-item[open] summary .lucide { transform:rotate(45deg); }
.faq-preview-item > p { max-width:680px; margin:0; padding:0 4px 20px; color:#738092; font-size:14px; line-height:1.9; }
.news-preview-section { background:#f9f9f9; }
.news-preview-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.news-preview-card { min-height:230px; display:flex; flex-direction:column; padding:24px; background:#fff; border:1px solid #e5e5e5; border-radius:0; transition:transform .25s ease,box-shadow .25s ease; }
.news-preview-card:hover { transform:translateY(-4px); box-shadow:0 12px 24px rgba(38,52,67,.09); }
.news-preview-card time { color:#e67e22; font-size:11px; font-weight:800; letter-spacing:1.2px; }
.news-preview-card h3 { margin:33px 0 8px; color:#2e3a48; font-size:19px; }
.news-preview-card p { margin:0; color:#778493; font-size:14px; line-height:1.8; }
.news-preview-card span { display:inline-flex; align-items:center; gap:5px; margin-top:auto; padding-top:20px; color:#718fa4; font-size:13px; font-weight:700; }
.news-preview-card span .lucide { width:15px; }
.recruitment-cta { display:flex; align-items:center; justify-content:space-between; gap:30px; width:min(1100px,calc(100% - 48px)); margin:0 auto; padding:64px 0; border-top:1px solid #e5e5e5; }
.recruitment-cta .eyebrow { margin-bottom:12px; }
.recruitment-cta h2 { margin:0 0 7px; color:#2d3a48; font-size:clamp(25px,3.2vw,36px); }
.recruitment-cta > div > p:last-child { margin:0; color:#788391; font-size:15px; }
.recruitment-cta > a { display:inline-flex; align-items:center; gap:7px; flex:0 0 auto; min-height:45px; padding:0 20px; color:#fff; background:#354b60; border-radius:4px; font-size:14px; font-weight:700; transition:background .2s ease,transform .2s ease; }
.recruitment-cta > a:hover { background:#e67e22; transform:translateY(-2px); }
.recruitment-cta > a .lucide { width:16px; }
.site-footer { width:100%; min-height:0; margin:0; padding:36px 24px; color:#c8cdd2; background:#1d2024; border-top:0; font-size:13px; }
.footer-inner { width:min(1100px,100%); margin:0 auto; text-align:center; }
.footer-links { display:flex; justify-content:center; align-items:center; gap:10px; margin-bottom:13px; }
.footer-links a { color:#f0f2f4; font-weight:700; transition:color .2s ease; }
.footer-links a:hover { color:#e67e22; }
.footer-inner > p { margin:5px 0 0; }
.footer-inner > p a { color:#c8ddec; text-decoration:underline; text-underline-offset:3px; }
.footer-credit { color:#87919c; }
.footer-credit span { color:#e67e22; font-weight:700; letter-spacing:.08em; }
.scroll-progress { position:fixed; top:0; left:0; z-index:40; width:100%; height:3px; pointer-events:none; background:#e67e22; transform:scaleX(0); transform-origin:left center; transition:transform .12s ease-out; }
.reveal { transition-delay:var(--reveal-delay,0ms); }

@media (max-width:850px) {
  .speciality-section,.faq-preview-section,.news-preview-section { width:calc(100% - 32px); padding:65px 0; }
  .feature-section { padding:52px 24px; }
  .feature-section .feature-grid,.speciality-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fact-strip { padding:24px 32px; }
  .fact-grid { grid-template-columns:repeat(2,1fr); row-gap:22px; }
  .fact-item:nth-child(3) { border-left:0; padding-left:0; }
  .faq-preview-layout { grid-template-columns:1fr; gap:38px; }
  .faq-preview-intro { position:static; }
  .faq-preview-intro > p:not(.eyebrow) { max-width:560px; }
  .news-preview-grid { grid-template-columns:1fr; }
  .news-preview-card { min-height:190px; }
  .recruitment-cta { width:calc(100% - 32px); padding:52px 0; }
}
@media (max-width:520px) {
  body { font-size:14px; }
  .speciality-section,.faq-preview-section,.news-preview-section { width:calc(100% - 32px); padding:52px 0; }
  .feature-section { padding:42px 16px; }
  .feature-section .feature-grid,.speciality-grid { grid-template-columns:1fr; }
  .feature-section .feature-card { min-height:0; }
  .fact-strip { padding:22px 24px; }
  .fact-grid { gap:17px 8px; }
  .fact-item { padding:3px 10px; }
  .fact-item strong { font-size:25px; }
  .fact-item span { font-size:12px; }
  .faq-preview-item summary { font-size:15px; }
  .faq-preview-item > p { font-size:13px; }
  .recruitment-cta { width:calc(100% - 32px); align-items:flex-start; flex-direction:column; gap:22px; padding:44px 0; }
  .site-footer { padding:30px 16px; font-size:12px; }
  .footer-links { gap:7px; }
}

/* 需求说明：子页面清除旧卡其色点缀，统一为旧官网使用的橙色强调色。 */
.wiki-entry > span { color:#e67e22; }
