/* 潍坊高新区政府门户 · 第二版视觉重构
   编辑式首页 / 完整频道 / 公开平台 / 可信智能服务
   原生 CSS，移动优先，无外部字体或运行时依赖。 */

:root {
  --p-blue-600: oklch(0.52 0.19 256);
  --p-blue-800: oklch(0.31 0.105 257);
  --p-blue-100: oklch(0.965 0.018 250);
  --p-ink-900: oklch(0.25 0.025 255);
  --p-ink-600: oklch(0.5 0.025 255);
  --p-paper: oklch(0.985 0.006 250);
  --p-white: oklch(1 0 0);
  --p-red-700: oklch(0.49 0.19 24);
  --navy: #071b33;
  --navy-2: #0b294a;
  --blue: #165dff;
  --blue-dark: #0c46c8;
  --red: #cf2334;
  --paper: #f5f7fa;
  --white: #fff;
  --text: #122033;
  --muted: #607086;
  --hairline: #dfe5ec;
  --surface: var(--paper);
  --surface-raised: var(--white);
  --surface-soft: #edf3fb;
  --ink: var(--text);
  --ink-muted: var(--muted);
  --brand: var(--blue);
  --brand-deep: var(--navy-2);
  --accent: var(--red);
  --line: var(--hairline);
  --line-dark: #bac6d3;
  --header-bg: rgba(255,255,255,.97);
  --button-bg: var(--blue);
  --button-ink: #fff;
  --content-max: 1360px;
  --radius-media: 3px;
  --shadow-dialog: 0 30px 90px rgba(4,22,44,.25);
  --shadow-soft: 0 18px 55px rgba(15,39,71,.08);
  --font-scale: 1;
}

html { scroll-padding-top: 11rem; }
body { background: var(--paper); color: var(--text); letter-spacing: .005em; }
body.nav-open { overflow: hidden; }
.container { padding-inline: 1.25rem; }
a, button, input, select, textarea { -webkit-tap-highlight-color: transparent; }
a { transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, opacity 180ms ease; }
button { letter-spacing: inherit; }
input, select, textarea { font-size: 1rem; }
::selection { background: var(--blue); }
.section { padding-block: clamp(4rem, 7vw, 7rem); }
.section--soft, .section--tint { background: #edf2f8; }
.section--dark { color: #fff; background: var(--navy); }
.section-heading { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: clamp(1.75rem, 3vw, 2.75rem); }
.section-heading > div { min-width: 0; }
.section-heading h2 { margin-top: .45rem; font-size: clamp(1.8rem, 3.5vw, 3rem); font-weight: 760; letter-spacing: -.045em; }
.section-more { display: inline-flex; align-items: center; gap: .5rem; flex: 0 0 auto; min-height: 44px; padding-bottom: .25rem; border-bottom: 1px solid currentColor; color: var(--text); font-size: .9rem; font-weight: 650; }
.section-more:hover { color: var(--blue); }
.section-lead { max-width: 50rem; margin: -1rem 0 2.25rem; color: var(--muted); font-size: 1.02rem; line-height: 1.9; }
.section--dark .section-lead, .section--dark .section-more { color: #d7e2f0; }
.micro-label { display: inline-flex; align-items: center; gap: .55rem; color: var(--blue); font-size: .68rem; font-weight: 750; letter-spacing: .17em; line-height: 1.5; text-transform: uppercase; }
.micro-label::before { content: ""; width: 1.25rem; height: 2px; background: currentColor; }
.section--dark .micro-label, .channel-hero .micro-label, .ai-showcase .micro-label, .ai-boundary .micro-label { color: #76a7ff; }
.tag { display: inline-flex; align-items: center; min-height: 26px; padding: .15rem .55rem; color: var(--blue-dark); background: #eaf1ff; font-size: .72rem; font-weight: 700; }
.text-link { color: var(--blue-dark); }
.button { min-height: 48px; padding: .78rem 1.25rem; border-radius: 2px; letter-spacing: .02em; }
.button--light { --button-ink: var(--navy); }
.button--outline { --button-ink: var(--blue-dark); }
.button:hover { transform: translateY(-2px); }
.button:active { transform: translateY(0); }
.search-input { min-height: 52px; border-color: #c6d1de; background: #fff; }
.search-input:focus { border-color: var(--blue); outline: 3px solid rgba(22,93,255,.15); }
.prototype-note { display: flex; align-items: flex-start; gap: .75rem; padding: 1rem 1.15rem; border-left: 3px solid var(--blue); color: #39506d; background: #eaf1fb; font-size: .88rem; }
.prototype-note > .lucide { margin-top: .2rem; color: var(--blue); }
.prototype-note--floating { margin-top: 1.5rem; }
.anchor-alias { position: absolute; top: -10rem; }
.muted { color: var(--muted); }

/* 顶部与导航 */
.demo-site-notice { color: #5b430b; border-bottom: 1px solid #e5cf91; background: #fff4d5; }
.demo-site-notice__inner { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem .65rem; padding-block: .55rem; }
.demo-site-notice__inner > .lucide { flex: 0 0 auto; width: 18px; height: 18px; color: #76510a; }
.demo-site-notice p { flex: 1 1 calc(100% - 2rem); min-width: 0; font-size: .76rem; line-height: 1.65; }
.demo-site-notice strong { display: block; color: #5f4300; font-size: .8rem; }
.demo-site-notice p span { display: block; }
.demo-site-notice a { display: inline-flex; align-items: center; gap: .35rem; flex: 0 0 auto; min-height: 44px; margin-left: 1.65rem; color: #5f4300; font-size: .75rem; font-weight: 750; text-decoration: underline; text-underline-offset: .2em; }
.demo-site-notice a:hover { color: #1d354f; }
.demo-site-notice a .lucide { width: 15px; height: 15px; }
.topbar { color: #c9d6e6; background: #051526; font-size: .75rem; }
.topbar__inner { min-height: 38px; }
.topbar__links a, .topbar__links button { min-height: 38px; color: inherit; }
.topbar__links a:hover, .topbar__links button:hover { color: #fff; }
.site-header { top: 0; border-bottom: 1px solid rgba(7,27,51,.1); box-shadow: 0 5px 22px rgba(7,27,51,.035); backdrop-filter: blur(18px); }
.brand-row { min-height: 82px; }
.brand { min-width: 0; gap: .7rem; }
.brand__mark { width: 46px; height: 46px; }
.brand__text { min-width: 0; }
.brand__name { color: #c91f32; font-size: clamp(.84rem, 3.65vw, 1.7rem); font-weight: 850; letter-spacing: .035em; }
.brand__en { max-width: 36rem; color: #53667d; font-size: .57rem; font-weight: 600; letter-spacing: .09em; white-space: nowrap; }
.header-actions { flex: 0 0 auto; }
.header-ai { display: none; align-items: center; gap: .5rem; min-height: 46px; padding: .55rem .85rem; border: 1px solid #cdd9ef; color: var(--blue-dark); background: #f4f7ff; font-size: .85rem; font-weight: 700; }
.header-ai b { padding: .08rem .3rem; color: #fff; background: var(--blue); font-size: .56rem; letter-spacing: .08em; }
.header-ai:hover { color: #fff; background: var(--blue); border-color: var(--blue); }
.header-policy { display: none; align-items: center; gap: .4rem; min-height: 46px; margin-left: .35rem; padding: .55rem .65rem; border: 1px solid transparent; color: var(--navy); background: transparent; font-size: .82rem; font-weight: 700; white-space: nowrap; }
.header-policy > .lucide { flex: 0 0 auto; width: 17px; height: 17px; color: var(--blue); }
.header-policy > .lucide:last-child { width: 13px; height: 13px; color: #758499; }
.header-policy:hover { border-color: #cdd9ef; color: var(--blue-dark); background: #f4f7ff; }
.menu-button { color: var(--navy); }
.desktop-nav { padding-inline: 1.25rem; }
.nav-list { gap: 0; }
.nav-link { min-height: 62px; padding-inline: .45rem; font-size: .94rem; font-weight: 650; }
.nav-link::after { right: .45rem; left: .45rem; height: 3px; background: var(--blue); }
.nav-link[aria-current="page"] { color: var(--blue); }
.nav-toggle { min-width: 26px; width: 26px; padding-inline: .15rem; color: #758499; }
.mega { padding: 0; border-top: 3px solid var(--blue); box-shadow: 0 28px 55px rgba(7,27,51,.18); }
.mega__inner { grid-template-columns: minmax(230px,.7fr) 2fr; gap: 0; max-width: var(--content-max); }
.mega__intro { padding: 2rem; color: #fff; background: var(--navy); }
.mega__intro .micro-label { color: #83aefc; font-size: .6rem; }
.mega__title { margin-top: .8rem; color: #fff; font-size: 1.75rem; }
.mega__desc { color: #adbed2; line-height: 1.8; }
.mega__links { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0 1.5rem; padding: 1.75rem 2rem; }
.mega__links a { position: relative; padding-left: .85rem; border-color: #e4e9ef; font-size: .9rem; }
.mega__links a::before { content: ""; position: absolute; left: 0; width: 3px; height: 3px; background: var(--blue); }
.search-panel { background: #eef3fa; }
.search-panel.is-open { max-height: 250px; }
.search-panel__inner { padding-block: 1.5rem; }
.search-panel__hints { display: flex; flex-wrap: wrap; gap: .15rem 1rem; margin-top: .55rem; color: var(--muted); font-size: .8rem; }
.search-panel__hints a { display: inline-flex; align-items: center; min-height: 36px; color: #34547e; }
.search-panel__hints a:hover { color: var(--blue); }
.dialog-head { padding: 1rem 1.25rem; }
.dialog-head h2 { margin-top: .25rem; font-size: 1.25rem; }
.mobile-nav { overflow-y: auto; padding: .5rem 1.25rem 1rem; }
.mobile-main-link { display: flex; align-items: center; justify-content: space-between; min-height: 54px; border-bottom: 1px solid var(--line); font-weight: 650; }
.mobile-ai-entry { display: flex; align-items: center; gap: .8rem; margin: auto 1.25rem 1.25rem; padding: 1rem; color: #fff; background: var(--navy); }
.mobile-ai-entry > span { flex: 1; }
.mobile-ai-entry strong, .mobile-ai-entry small { display: block; }
.mobile-ai-entry small { margin-top: .2rem; color: #b5c7dc; font-size: .7rem; }
.mobile-policy-entry { display: flex; align-items: center; gap: .8rem; margin: 0 1.25rem 1.25rem; padding: 1rem; border: 1px solid #cdd9ef; color: var(--blue-dark); background: #f4f7ff; }
.mobile-policy-entry > span { flex: 1; }
.mobile-policy-entry strong, .mobile-policy-entry small { display: block; }
.mobile-policy-entry small { margin-top: .2rem; color: #60748d; font-size: .7rem; }
.mobile-policy-entry > .lucide { flex: 0 0 auto; width: 19px; }
.mobile-policy-entry:hover { border-color: var(--blue); background: #e8efff; }
.access-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .6rem; padding: 1.25rem; }
.access-grid button { display: flex; align-items: center; gap: .5rem; min-height: 52px; padding: .65rem; border: 1px solid var(--line); background: #f7f9fc; text-align: left; }
.access-grid button[aria-pressed="true"] { color: #fff; background: var(--blue); border-color: var(--blue); }
.dialog-note { margin: 0 1.25rem 1rem; color: var(--muted); font-size: .82rem; }
.access-dialog > .button { margin: 0 1.25rem 1.25rem; }

/* 首页首屏：城市叙事 + 智办命令框 */
.home-hero { min-height: 0; overflow: visible; color: #fff; background: var(--navy); }
.home-hero__grid, .channel-hero__grid { position: absolute; inset: 0; pointer-events: none; opacity: .24; background-image: linear-gradient(rgba(127,164,211,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(127,164,211,.15) 1px,transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to right,#000,transparent 85%); }
.home-hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 80% 18%,rgba(22,93,255,.22),transparent 38%),linear-gradient(115deg,transparent 55%,rgba(44,105,177,.08)); }
.home-hero__layout { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,1fr); gap: 2.25rem; padding-top: 3.25rem; }
.home-hero__copy { position: relative; z-index: 3; min-width: 0; }
.home-hero__eyebrow { display: flex; flex-wrap: wrap; align-items: center; gap: .55rem; color: #a9bdd5; font-size: .6rem; font-weight: 650; letter-spacing: .13em; }
.home-hero__eyebrow > span:last-child { display: none; }
.live-dot, .status-dot { width: 7px; height: 7px; border-radius: 50%; background: #62d8bb; box-shadow: 0 0 0 5px rgba(98,216,187,.1); }
.home-hero .hero__title { max-width: none; margin-top: 1.35rem; font-size: clamp(2.55rem,10.8vw,5.25rem); font-weight: 780; letter-spacing: -.065em; line-height: 1.13; }
.home-hero .hero__title span { white-space: normal; }
.home-hero .hero__title span:last-child { color: #fff; }
.home-hero__intro { max-width: 37rem; margin-top: 1.25rem; color: #b9c9dc; font-size: .95rem; line-height: 1.9; }
.hero-command { display: flex; align-items: center; max-width: 42rem; min-height: 62px; margin-top: 1.75rem; padding: .4rem; color: var(--text); background: #fff; box-shadow: 0 18px 50px rgba(0,0,0,.18); }
.hero-command__icon { display: inline-flex; padding-left: .55rem; color: var(--blue); }
.hero-command input { flex: 1; min-width: 0; height: 50px; padding: .5rem .65rem; border: 0; outline: 0; color: var(--text); background: transparent; }
.hero-command button { display: inline-flex; align-items: center; justify-content: center; gap: .45rem; align-self: stretch; flex: 0 0 auto; padding-inline: .9rem; border: 0; color: #fff; background: var(--blue); font-weight: 700; white-space: nowrap; }
.hero-command button:hover { background: var(--blue-dark); }
.hero-command__hints { display: flex; flex-wrap: wrap; align-items: center; gap: .15rem .85rem; margin-top: .65rem; color: #8fa5bf; font-size: .72rem; }
.hero-command__hints a { display: inline-flex; align-items: center; min-height: 34px; color: #c4d4e7; }
.hero-command__hints a:hover { color: #fff; }
.hero-command__hints small { width: 100%; color: #718aa6; }
.home-hero__visual { position: relative; min-width: 0; overflow: hidden; aspect-ratio: 4 / 3; background: #102c4d; box-shadow: 0 28px 70px rgba(0,0,0,.28); }
.home-hero__slides { position: absolute; inset: 0; }
.home-hero .hero__slide::after { background: linear-gradient(180deg,rgba(3,17,32,.28),transparent 42%,rgba(3,17,32,.65)); }
.home-hero .hero__slide img { object-position: center; }
.home-hero__caption { position: absolute; z-index: 2; top: 1.25rem; left: 1.25rem; display: grid; grid-template-columns: auto 1fr; gap: 0 .65rem; padding: .75rem .9rem; color: #fff; background: rgba(5,23,42,.7); backdrop-filter: blur(10px); }
.home-hero__caption > span { grid-row: 1 / 3; color: #8fb8ff; font-size: 1.65rem; font-weight: 300; line-height: 1; }
.home-hero__caption strong { font-size: .85rem; }
.home-hero__caption small { color: #c1d0e1; font-size: .62rem; }
.home-hero__controls { position: absolute; z-index: 4; right: 1rem; bottom: .75rem; left: 1rem; display: flex; align-items: center; gap: .5rem; }
.home-hero__controls .hero__dots { flex: 1; }
.home-hero .hero-dot { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; color: #a9bad0; font-size: .62rem; }
.home-hero .hero-dot::before { top: auto; bottom: 4px; transform: none; }
.home-hero .hero-dot[aria-current="true"] { color: #fff; }
.home-hero__controls > span { color: #d1dfef; font-size: .66rem; letter-spacing: .1em; }
.home-hero__gateways { position: relative; z-index: 5; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; margin-top: 2.5rem; padding: 0; background: #dbe3ed; transform: translateY(2rem); box-shadow: var(--shadow-soft); }
.hero-gateway { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: .75rem; min-width: 0; min-height: 148px; padding: 1.15rem; color: var(--text); background: #fff; }
.hero-gateway__icon { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; color: var(--blue); background: #edf3ff; }
.hero-gateway > span:nth-child(2) { min-width: 0; }
.hero-gateway strong { display: block; font-size: 1rem; }
.hero-gateway small { display: none; margin-top: .25rem; color: var(--muted); font-size: .7rem; line-height: 1.5; }
.hero-gateway > .lucide { position: absolute; top: 1.15rem; right: 1rem; width: 16px; color: #8b9aaf; }
.hero-gateway:hover { color: #fff; background: var(--blue); }
.hero-gateway:hover small, .hero-gateway:hover > .lucide { color: #d8e5ff; }
.hero-gateway:hover .hero-gateway__icon { color: #fff; background: rgba(255,255,255,.14); }
.notice-line { padding-top: 2rem; background: #fff; }
.notice-line__inner { min-height: 64px; }
.notice-line__date { display: none; color: var(--muted); font-size: .76rem; }
.notice-line__more { display: inline-flex; align-items: center; gap: .3rem; }

/* 编辑式新闻 */
.home-news { background: #f7f9fc; }
.home-news__grid { display: grid; gap: 2rem; }
.editorial-lead { min-width: 0; }
.editorial-lead__media { position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 10; background: #dbe3ec; }
.editorial-lead__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 600ms cubic-bezier(.2,.7,.2,1); }
.editorial-lead__media > span { position: absolute; bottom: 0; left: 0; padding: .5rem .85rem; color: #fff; background: var(--red); font-size: .75rem; font-weight: 700; }
.editorial-lead:hover img { transform: scale(1.035); }
.editorial-lead__body { position: relative; padding-top: 1.35rem; }
.editorial-lead__date { display: flex; align-items: center; gap: .55rem; margin-bottom: .75rem; color: var(--blue); }
.editorial-lead__date strong { font-size: 2.6rem; font-weight: 300; line-height: 1; }
.editorial-lead__date span { padding-left: .55rem; border-left: 1px solid #aabbd0; font-size: .58rem; font-weight: 700; letter-spacing: .1em; line-height: 1.4; }
.editorial-lead h3 { font-size: clamp(1.35rem,3vw,2rem); line-height: 1.45; letter-spacing: -.025em; }
.editorial-lead h3 a:hover { color: var(--blue); }
.editorial-lead__body > p { margin-top: .85rem; color: var(--muted); line-height: 1.85; }
.editorial-lead__body > .text-link { margin-top: .7rem; }
.home-news__list { min-width: 0; padding: 1.25rem; background: #fff; box-shadow: 0 10px 35px rgba(20,44,75,.05); }
.home-news__list .tab-list { gap: 1rem; border-bottom: 1px solid var(--line); }
.home-news__list .tab-button { padding-inline: 0; }
.filter-item { display: none; }
.filter-item.is-visible { display: block; }
.news-line { display: flex; align-items: center; gap: .75rem; padding: 1rem 0; border-bottom: 1px solid var(--line); }
.news-line__body { flex: 1; min-width: 0; }
.news-line__meta { display: flex; flex-wrap: wrap; gap: .35rem .75rem; color: var(--muted); font-size: .68rem; }
.news-line__meta > span { color: var(--blue-dark); }
.news-line h3 { margin-top: .35rem; font-size: .95rem; font-weight: 620; line-height: 1.55; }
.news-line h3 a:hover { color: var(--blue); }
.news-line__body > p { margin-top: .45rem; color: var(--muted); font-size: .85rem; }
.news-line__arrow { display: none; flex: 0 0 auto; color: #8192a8; }
.news-line:hover .news-line__arrow { color: var(--blue); }
.news-line__num { color: #a4b2c3; font-size: 1.4rem; font-weight: 300; }
.home-news__archive { display: flex; align-items: center; gap: .6rem; min-height: 52px; margin-top: .75rem; color: var(--blue-dark); font-size: .8rem; font-weight: 700; }
.home-news__archive span { flex: 1; color: #9aa8b8; font-size: .6rem; letter-spacing: .15em; }

/* 首页智能服务、场景、政策与产业 */
.ai-showcase { position: relative; overflow: hidden; padding-block: clamp(4rem,8vw,7.5rem); color: #fff; background: linear-gradient(125deg,#06172b 0%,#0a2a4c 65%,#0a3670 130%); }
.ai-showcase::after { content: "AI"; position: absolute; right: -2vw; bottom: -12vw; color: rgba(255,255,255,.025); font-size: 40vw; font-weight: 850; letter-spacing: -.12em; line-height: 1; pointer-events: none; }
.ai-showcase__orb { position: absolute; top: -20rem; left: 25%; width: 42rem; height: 42rem; border-radius: 50%; background: rgba(26,99,255,.16); filter: blur(80px); }
.ai-showcase__grid { position: relative; z-index: 2; display: grid; gap: 2.5rem; }
.ai-showcase__copy h2 { margin-top: 1rem; font-size: clamp(2.2rem,6vw,4.6rem); font-weight: 720; letter-spacing: -.06em; line-height: 1.18; }
.ai-showcase__copy > p { max-width: 35rem; margin-top: 1.25rem; color: #b8c9dd; line-height: 1.9; }
.ai-showcase__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.75rem; }
.ai-showcase__demo { min-width: 0; align-self: center; color: var(--text); background: #fff; box-shadow: 0 35px 85px rgba(0,0,0,.3); }
.ai-demo-window__bar { display: flex; align-items: center; gap: .75rem; min-height: 48px; padding: .65rem 1rem; border-bottom: 1px solid var(--line); background: #f5f7fa; }
.ai-demo-window__bar > span { display: flex; gap: 5px; }
.ai-demo-window__bar i { width: 7px; height: 7px; border-radius: 50%; background: #b7c4d2; }
.ai-demo-window__bar i:first-child { background: #e96973; }
.ai-demo-window__bar b { flex: 1; font-size: .7rem; letter-spacing: .08em; }
.ai-demo-window__bar small { color: var(--blue); font-size: .6rem; }
.ai-demo-window__body { padding: 1.25rem; }
.ai-demo-question { max-width: 88%; margin-left: auto; padding: .8rem 1rem; color: #fff; background: var(--blue); font-size: .82rem; line-height: 1.7; }
.ai-demo-answer { display: flex; gap: .75rem; margin-top: 1.25rem; }
.ai-demo-answer > span { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 34px; height: 34px; color: var(--blue); background: #eaf1ff; }
.ai-demo-answer > div { flex: 1; min-width: 0; }
.ai-demo-answer small { color: var(--blue); font-size: .65rem; }
.ai-demo-answer p { margin-top: .45rem; color: #42556c; font-size: .83rem; line-height: 1.8; }
.ai-demo-sources { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .75rem; }
.ai-demo-sources a { padding: .35rem .55rem; border: 1px solid #cbdafa; color: var(--blue-dark); background: #f5f8ff; font-size: .66rem; }
.ai-demo-capabilities { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; margin-top: 1.5rem; background: var(--line); border: 1px solid var(--line); }
.ai-demo-capabilities a { display: flex; align-items: center; justify-content: space-between; min-height: 50px; padding: .65rem .75rem; background: #fff; font-size: .75rem; }
.ai-demo-capabilities a span { color: #9aabc0; font-size: .62rem; }
.ai-demo-capabilities a:hover { color: var(--blue); background: #f2f6ff; }
.subsection-title { font-size: clamp(1.25rem,2vw,1.65rem); letter-spacing: -.025em; }
.service-scenes { background: #fff; }
.service-scenes__intro { display: grid; gap: 1.25rem; margin-bottom: 2rem; }
.service-scenes__intro p { max-width: 36rem; color: var(--muted); }
.service-official { display: inline-flex; align-items: center; gap: .45rem; min-height: 44px; color: var(--blue-dark); font-weight: 700; }
.scene-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; border: 1px solid var(--line); background: var(--line); }
.scene-card { position: relative; min-height: 210px; padding: 1.25rem; background: #fff; }
.scene-card__icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin-bottom: 1.25rem; color: var(--blue); background: #edf3ff; }
.scene-card .micro-label { color: #91a0b2; font-size: .55rem; }
.scene-card .micro-label::before { display: none; }
.scene-card h3 { margin-top: .35rem; font-size: 1.05rem; }
.scene-card p { margin-top: .45rem; color: var(--muted); font-size: .76rem; }
.scene-card__link { position: absolute; right: 1.25rem; bottom: 1rem; left: 1.25rem; display: flex; align-items: center; justify-content: space-between; color: var(--blue-dark); font-size: .72rem; font-weight: 700; }
.scene-card:hover { z-index: 1; color: #fff; background: var(--navy-2); box-shadow: 0 20px 45px rgba(7,27,51,.2); }
.scene-card:hover p, .scene-card:hover .scene-card__link { color: #c1d2e7; }
.scene-card:hover .scene-card__icon { color: #fff; background: rgba(255,255,255,.1); }
.policy-desk { background: #edf2f8; }
.policy-desk__grid { display: grid; gap: 2.5rem; }
.policy-desk__files, .policy-desk__reads { min-width: 0; }
.policy-file { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: .8rem; padding: 1.25rem 0; border-bottom: 1px solid #ccd6e2; }
.policy-file__mark { display: none; color: var(--blue); }
.policy-file__mark span { font-size: .65rem; font-weight: 700; }
.policy-file h3 { font-size: .95rem; font-weight: 620; line-height: 1.7; }
.policy-file h3 a:hover { color: var(--blue); }
.policy-file__meta { display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin-top: .5rem; color: var(--muted); font-size: .68rem; }
.round-arrow { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border: 1px solid #b9c8d9; border-radius: 50%; color: var(--blue-dark); }
.round-arrow:hover { color: #fff; background: var(--blue); border-color: var(--blue); }
.interpretation-item { display: flex; align-items: center; gap: .8rem; min-height: 100px; padding: 1rem 0; border-bottom: 1px solid #ccd6e2; }
.interpretation-item > span { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 42px; height: 54px; color: var(--blue); background: #fff; }
.interpretation-item > div { flex: 1; min-width: 0; }
.interpretation-item small { color: var(--muted); font-size: .65rem; }
.interpretation-item h3 { margin-top: .3rem; font-size: .9rem; line-height: 1.55; }
.interpretation-item > .lucide { color: #8799ad; }
.interpretation-item:hover h3 { color: var(--blue); }
.policy-match-card { display: flex; flex-direction: column; align-items: flex-start; margin-top: 1.5rem; padding: 1.4rem; color: #fff; background: var(--blue); }
.policy-match-card h3 { margin-top: .75rem; font-size: 1.35rem; }
.policy-match-card p { margin-top: .6rem; color: #dce7ff; font-size: .85rem; }
.policy-match-card .button { margin-top: 1rem; }
.industry-section { background: #fff; }
.industry-explorer { display: grid; gap: 1.5rem; }
.industry-media { aspect-ratio: 4 / 3; }
.industry-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 50%,rgba(3,18,34,.45)); pointer-events: none; }
.industry-media__caption { z-index: 3; padding: 1.25rem; background: none; }
.industry-media__caption strong { font-size: 1.4rem; }
.industry-media__label { position: absolute; z-index: 3; top: 1rem; left: 1rem; padding: .35rem .55rem; color: #fff; background: rgba(4,24,45,.55); font-size: .55rem; letter-spacing: .15em; }
.industry-accordion__item { position: relative; padding-left: 3rem; }
.industry-index { position: absolute; top: 1.35rem; left: 0; color: #98a8ba; font-size: .68rem; }
.industry-trigger { min-height: 74px; font-size: 1.05rem; }
.industry-accordion__item.is-active { border-top-color: var(--blue); }
.industry-panel__inner { padding-bottom: 1.25rem; }
.industry-panel__inner p { color: var(--muted); font-size: .88rem; line-height: 1.85; }
.industry-panel__inner a { display: inline-flex; align-items: center; gap: .4rem; min-height: 44px; color: var(--blue-dark); font-size: .8rem; font-weight: 700; }
.home-topics { background: #f3f6fa; }
.home-topics__grid { display: grid; gap: 1rem; }
.home-topic { position: relative; display: flex; flex-direction: column; min-height: 240px; overflow: hidden; padding: 1.5rem; color: #fff; background: var(--navy-2); }
.home-topic img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .48; transition: transform 650ms ease,opacity 300ms ease; }
.home-topic::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,rgba(5,21,39,.05),rgba(5,21,39,.9)); }
.home-topic > *:not(img) { position: relative; z-index: 2; }
.home-topic .micro-label { color: #b7cdf0; }
.home-topic h3 { margin-top: auto; font-size: 1.55rem; }
.home-topic p { margin-top: .55rem; color: #d0ddeb; font-size: .82rem; }
.home-topic b { display: flex; align-items: center; gap: .4rem; margin-top: 1rem; font-size: .75rem; }
.home-topic:hover img { opacity: .65; transform: scale(1.04); }
.home-topic--primary { background: var(--blue); }

/* 频道公共头部 */
.channel-hero { position: relative; overflow: hidden; padding-block: 2.25rem 2.75rem; color: #fff; background: linear-gradient(120deg,#071b33,#0b2e54); }
.channel-hero::after { content: ""; position: absolute; right: -8rem; bottom: -13rem; width: 28rem; height: 28rem; border: 1px solid rgba(126,167,220,.16); border-radius: 50%; box-shadow: 0 0 0 4rem rgba(126,167,220,.035),0 0 0 8rem rgba(126,167,220,.025); }
.channel-hero__inner { position: relative; z-index: 2; display: grid; gap: 2rem; }
.channel-hero .breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: .35rem; margin-bottom: 2.25rem; color: #9db2c9; font-size: .75rem; }
.channel-hero .breadcrumb a:hover { color: #fff; }
.channel-hero__copy h1 { margin-top: .75rem; font-size: clamp(2.35rem,7vw,4.75rem); font-weight: 730; letter-spacing: -.06em; }
.channel-hero__copy > p { max-width: 47rem; margin-top: 1rem; color: #b8c9dc; font-size: .94rem; line-height: 1.9; }
.channel-hero__side { position: relative; z-index: 2; align-self: end; }
.channel-nav { overflow-x: auto; color: var(--text); background: #fff; border-bottom: 1px solid var(--line); scrollbar-width: thin; }
.channel-nav__inner { display: flex; min-width: max-content; padding-inline: 1.25rem; }
.channel-nav a { position: relative; display: inline-flex; align-items: center; min-height: 58px; padding: .6rem 1rem; color: #4e6076; font-size: .86rem; font-weight: 600; }
.channel-nav a::after { content: ""; position: absolute; right: 1rem; bottom: 0; left: 1rem; height: 2px; background: var(--blue); transform: scaleX(0); }
.channel-nav a:hover { color: var(--blue); }
.channel-nav a:hover::after { transform: scaleX(1); }
.channel-intro { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 1.5rem; padding: 1.25rem; background: #fff; }
.channel-intro__inner { display: grid; gap: 1rem; }
.channel-intro h2 { font-size: clamp(1.4rem,3vw,2.15rem); }
.channel-intro p { max-width: 54rem; color: var(--muted); line-height: 1.8; }
.channel-intro > a { display: inline-flex; align-items: center; align-self: flex-start; gap: .5rem; min-height: 44px; padding: .55rem .85rem; border: 1px solid var(--line); color: var(--blue-dark); font-size: .82rem; font-weight: 700; text-decoration: none; }
.channel-intro > a:hover { border-color: var(--blue); color: var(--blue); }
.channel-intro > a .lucide { width: 17px; height: 17px; }
@media (min-width: 640px) {
  .channel-intro { flex-direction: row; align-items: center; justify-content: space-between; gap: 2rem; padding: 1.25rem 1.5rem; }
  .channel-intro > a { flex: 0 0 auto; }
}
.channel-cta { display: block; padding-block: clamp(2.5rem,5vw,4.5rem); color: #fff; background: var(--navy); }
.channel-cta > .container { display: grid; align-items: center; gap: 1.5rem; }
.channel-cta .micro-label { color: #91b8f5; }
.channel-cta h2 { margin-top: .65rem; font-size: clamp(1.75rem,4vw,2.75rem); letter-spacing: -.04em; }
.channel-cta p { margin-top: .65rem; color: #bfd0e3; }
.channel-cta form { display: grid; gap: .75rem; }
.channel-cta .search-input { width: 100%; min-width: 0; min-height: 52px; padding: .8rem 1rem; border: 1px solid #d7e0eb; color: var(--text); background: #fff; }
.channel-cta .button { justify-content: center; min-height: 52px; }
@media (min-width: 640px) {
  .channel-cta form { grid-template-columns: minmax(0,1fr) auto; }
}
@media (min-width: 1024px) {
  .channel-cta > .container { grid-template-columns: minmax(0,1fr) minmax(0,.85fr); gap: 4rem; }
}
.two-column-section { display: grid; gap: 2.5rem; }

/* 新闻频道 */
.news-feature-grid { display: grid; gap: 1.25rem; }
.news-feature { min-width: 0; border-bottom: 1px solid var(--line); padding-bottom: 1.25rem; }
.news-feature__media { position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 10; margin-bottom: 1rem; background: #dae3ee; }
.news-feature__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 500ms ease; }
.news-feature__media span { position: absolute; bottom: 0; left: 0; padding: .4rem .65rem; color: #fff; background: var(--blue); font-size: .68rem; }
.news-feature:hover img { transform: scale(1.035); }
.news-feature small { color: var(--muted); font-size: .7rem; }
.news-feature h3 { margin-top: .4rem; font-size: 1.1rem; line-height: 1.55; }
.news-feature h3 a:hover { color: var(--blue); }
.news-feature p { margin-top: .55rem; color: var(--muted); font-size: .84rem; }
.archive { scroll-margin-top: 11rem; }
.archive-toolbar { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 1.5rem; padding-bottom: 1.25rem; border-bottom: 1px solid var(--line); }
.archive-toolbar > div:first-child h2 { font-size: 1.5rem; }
.archive-toolbar > div:first-child p { margin-top: .25rem; color: var(--muted); font-size: .8rem; }
.filter-bar { display: flex; flex-wrap: wrap; gap: .4rem; }
.filter-chip { min-height: 42px; padding: .5rem .8rem; border: 1px solid var(--line); color: #4b5f77; background: #fff; font-size: .8rem; }
.filter-chip[aria-pressed="true"] { color: #fff; background: var(--blue); border-color: var(--blue); }
.archive-list__item { background: #fff; }
.archive-list__link { position: relative; display: grid; gap: .75rem; padding: 1.35rem 3rem 1.35rem 0; }
.archive-date { color: var(--blue-dark); font-size: .75rem; white-space: nowrap; }
.archive-date strong { display: block; font-size: 1.5rem; font-weight: 350; }
.archive-list__labels { display: flex; flex-wrap: wrap; gap: .4rem; }
.archive-list__content h3 { font-size: 1.05rem; line-height: 1.55; }
.archive-list__summary { max-width: 55rem; }
.archive-arrow { position: absolute; top: 50%; right: .5rem; color: #8799ad; transform: translateY(-50%); }
.archive-list__link:hover .archive-list__content h3, .archive-list__link:hover .archive-arrow { color: var(--blue); }
.pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: .35rem; margin-top: 1.5rem; }
.page-button { min-width: 42px; min-height: 42px; padding: .45rem .65rem; border: 1px solid var(--line); background: #fff; font-size: .8rem; }
.page-button[aria-current="page"] { color: #fff; background: var(--blue); border-color: var(--blue); }
.empty-state { padding: 3rem 1rem; color: var(--muted); background: #fff; text-align: center; }
.empty-state .lucide { margin: 0 auto 1rem; width: 2rem; height: 2rem; }
.empty-state h2 { color: var(--text); }
.hero-bulletin { display: flex; flex-direction: column; gap: 1rem; padding: 1.5rem; color: #fff; background: var(--blue); }
.hero-bulletin h2 { font-size: 1.5rem; }
.hero-bulletin p { color: #dbe6ff; font-size: .85rem; }
.hero-bulletin a { display: inline-flex; align-items: center; gap: .4rem; margin-top: auto; font-weight: 700; }
.report-grid { display: grid; gap: .75rem; }
.report-card { display: flex; flex-wrap: wrap; align-items: center; gap: .85rem; min-height: 88px; padding: 1rem; border: 1px solid var(--line); background: #fff; }
.report-card > span { color: var(--blue); }
.report-card > div { flex: 1; }
.report-card h3 { font-size: .9rem; }
.report-card small { flex: 1 1 7rem; min-width: 0; color: var(--muted); line-height: 1.55; }
.report-card > time { color: var(--muted); }
.report-card > .lucide:last-child { flex: 0 0 auto; margin-left: auto; }
.report-card > .lucide { color: #8b9cb0; }

/* 政务服务频道 */
.hero-service-search { padding: 1.25rem; color: var(--text); background: #fff; box-shadow: var(--shadow-soft); }
.hero-service-search label { display: block; margin-bottom: .6rem; font-weight: 700; }
.hero-service-search > div { display: flex; gap: .5rem; }
.hero-service-search .button { flex: 0 0 auto; padding-inline: .85rem; }
.hero-service-search p { margin-top: .6rem; color: var(--muted); font-size: .72rem; }
.one-thing-grid { display: grid; gap: 1px; border: 1px solid var(--line); background: var(--line); }
.one-thing-card { position: relative; min-height: 210px; padding: 1.5rem; background: #fff; }
.one-thing-card > span { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; color: var(--blue); background: #edf3ff; }
.one-thing-card small { display: block; margin-top: 1.25rem; color: #8b9caf; font-size: .6rem; letter-spacing: .12em; }
.one-thing-card h3 { margin-top: .35rem; font-size: 1.15rem; }
.one-thing-card p { margin-top: .5rem; color: var(--muted); font-size: .8rem; }
.one-thing-card > b { position: absolute; right: 1.5rem; bottom: 1.25rem; left: 1.5rem; display: flex; align-items: center; justify-content: space-between; color: var(--blue-dark); font-size: .75rem; }
.one-thing-card:hover { color: #fff; background: var(--blue); }
.one-thing-card:hover p, .one-thing-card:hover small, .one-thing-card:hover > b { color: #dce7ff; }
.one-thing-card:hover > span { color: #fff; background: rgba(255,255,255,.14); }
.service-catalog { display: grid; gap: 1.25rem; }
.service-catalog__group { min-width: 0; }
.service-catalog__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.service-catalog__head h2 { margin-top: .35rem; font-size: 1.65rem; }
.service-catalog__head > span { color: #9baaba; font-size: 2.4rem; font-weight: 250; line-height: 1; }
.service-catalog__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; border: 1px solid var(--line); background: var(--line); }
.service-item { display: flex; flex-direction: column; min-height: 148px; padding: 1.1rem; background: #fff; }
.service-item__icon { display: inline-flex; color: var(--blue); }
.service-item h3 { margin-top: .65rem; font-size: .94rem; }
.service-item p { margin-top: .35rem; color: var(--muted); font-size: .72rem; }
.service-item > span:last-child { display: flex; align-items: center; gap: .3rem; margin-top: auto; padding-top: .6rem; color: var(--blue-dark); font-size: .68rem; font-weight: 700; }
.service-item:hover { color: var(--blue); background: #f4f7ff; }
.enterprise-support { display: grid; gap: 1px; margin-top: 1.5rem; color: #fff; background: #1c3c63; }
.enterprise-support > * { padding: 1.5rem; background: var(--navy-2); }
.enterprise-support h2 { margin-top: .65rem; font-size: 1.75rem; }
.enterprise-support p { margin-top: .6rem; color: #b9cadd; }
.enterprise-support__links { display: grid; gap: .5rem; }
.enterprise-support__links a { display: flex; align-items: center; gap: .65rem; min-height: 52px; padding: .65rem; border: 1px solid rgba(255,255,255,.15); }
.enterprise-support__links a span { flex: 1; }
.service-journey { color: #fff; background: var(--navy); }
.service-journey__copy h2 { margin-top: .75rem; font-size: clamp(2rem,5vw,3.5rem); }
.service-journey__copy p { margin-top: .75rem; color: #b6c7da; }
.journey-steps { display: grid; gap: 1px; margin-top: 2rem; background: rgba(255,255,255,.13); }
.journey-steps li { padding: 1.25rem; background: #0b2847; }
.journey-steps li > span { color: #75a7fb; font-size: .7rem; }
.journey-steps h3 { margin-top: .5rem; font-size: 1.1rem; }
.journey-steps p { margin-top: .35rem; color: #aebfd3; font-size: .8rem; }
.park-service-story { display: grid; gap: 1.5rem; align-items: center; }
.park-service-story img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.park-service-story h2 { margin-top: .65rem; font-size: clamp(1.6rem,3vw,2.4rem); }
.park-service-story p { margin-top: .8rem; color: var(--muted); line-height: 1.9; }
.park-service-story .button { margin-top: 1.25rem; }

/* 互动交流 */
.interaction-hero-card { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: .35rem 1rem; padding: 1.4rem; color: var(--text); background: #fff; }
.interaction-hero-card > span { grid-row: 1 / 3; display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; color: var(--blue); background: #edf3ff; }
.interaction-hero-card small { color: var(--muted); font-size: .78rem; }
.interaction-hero-card strong { display: block; color: var(--navy); font-size: 2rem; line-height: 1.05; letter-spacing: -.035em; }
.interaction-hero-card h2 { margin-top: 1rem; font-size: 1.35rem; }
.interaction-hero-card p { grid-column: 1 / -1; margin-top: .55rem; color: var(--muted); font-size: .85rem; }
.interaction-hero-card a { display: inline-flex; align-items: center; gap: .4rem; min-height: 44px; margin-top: .75rem; color: var(--blue-dark); font-weight: 700; }
.voice-grid { display: grid; gap: 1px; margin-bottom: 1.25rem; border: 1px solid var(--line); background: var(--line); }
.voice-card { position: relative; min-height: 210px; padding: 1.4rem; background: #fff; }
.voice-card > span { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; color: var(--blue); background: #edf3ff; }
.voice-card h3 { margin-top: 1.2rem; font-size: 1.15rem; }
.voice-card p { margin-top: .45rem; color: var(--muted); font-size: .8rem; }
.voice-card b { position: absolute; right: 1.4rem; bottom: 1.2rem; left: 1.4rem; display: flex; align-items: center; justify-content: space-between; color: var(--blue-dark); font-size: .72rem; }
.voice-card:hover { color: #fff; background: var(--blue); }
.voice-card:hover p, .voice-card:hover b { color: #dce7ff; }
.voice-card:hover > span { color: #fff; background: rgba(255,255,255,.15); }
.interaction-steps { display: grid; gap: 1px; border: 1px solid #ced8e4; background: #ced8e4; counter-reset: steps; }
.interaction-steps li { position: relative; min-height: 170px; padding: 1.35rem; background: #f8fafc; }
.interaction-steps li > span { color: var(--blue); font-size: .68rem; font-weight: 700; letter-spacing: .12em; }
.interaction-steps h3 { margin-top: 1rem; font-size: 1.05rem; }
.interaction-steps p { margin-top: .5rem; color: var(--muted); font-size: .8rem; }
.interaction-feature-grid { display: grid; gap: 1.25rem; }
.survey-feature { padding: clamp(1.5rem,4vw,3rem); color: #fff; background: linear-gradient(130deg,#0c46c8,#165dff); }
.survey-feature__top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.survey-feature .micro-label { color: #d8e5ff; }
.survey-feature .tag { color: #fff; background: rgba(255,255,255,.15); }
.survey-feature > h2 { max-width: 12ch; margin-top: 1.5rem; font-size: clamp(2rem,5vw,3.6rem); letter-spacing: -.055em; }
.survey-feature > p { max-width: 37rem; margin-top: 1rem; color: #dce7ff; }
.survey-feature > .button { margin-top: 1.25rem; }
.survey-current { margin-top: 2rem; padding-top: 1.25rem; border-top: 1px solid rgba(255,255,255,.25); }
.survey-current small, .survey-current span { display: block; color: #d3e0f8; font-size: .7rem; }
.survey-current a { display: flex; align-items: flex-start; gap: .5rem; margin: .5rem 0; font-weight: 650; line-height: 1.65; }
.participation-links { display: grid; gap: 1.25rem; }
.participation-links > a { display: flex; align-items: center; gap: 1rem; min-height: 180px; padding: 1.5rem; border: 1px solid var(--line); background: #fff; }
.participation-links > a > span { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 52px; height: 52px; color: var(--blue); background: #edf3ff; }
.participation-links > a > div { flex: 1; }
.participation-links small { color: #8a9cb1; font-size: .6rem; letter-spacing: .12em; }
.participation-links h3 { margin-top: .35rem; font-size: 1.25rem; }
.participation-links p { margin-top: .45rem; color: var(--muted); font-size: .8rem; }
.participation-links > a:hover { border-color: var(--blue); box-shadow: var(--shadow-soft); }
.interview-demo { display: grid; gap: 2.5rem; }
.interview-demo h2 { margin-top: .75rem; font-size: clamp(2rem,5vw,3.5rem); }
.interview-demo p { max-width: 38rem; margin-top: 1rem; color: #b7c8dc; }
.interview-demo .button { margin-top: 1.25rem; }
.interview-blueprint { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; background: rgba(255,255,255,.14); }
.interview-blueprint > div { min-height: 130px; padding: 1.1rem; background: #0c2b4c; }
.interview-blueprint span, .interview-blueprint strong, .interview-blueprint small { display: block; }
.interview-blueprint span { color: #74a7fb; font-size: .65rem; }
.interview-blueprint strong { margin-top: .8rem; }
.interview-blueprint small { margin-top: .35rem; color: #a9bdd3; font-size: .68rem; }
.quick-link-grid { display: grid; gap: .75rem; }
.quick-link-grid a { display: flex; align-items: center; gap: .85rem; min-height: 90px; padding: 1rem 1.25rem; border: 1px solid var(--line); background: #fff; }
.quick-link-grid a > .lucide:first-child { color: var(--blue); }
.quick-link-grid a > span { flex: 1; }
.quick-link-grid strong, .quick-link-grid small { display: block; }
.quick-link-grid small { margin-top: .2rem; color: var(--muted); font-size: .7rem; }
.quick-link-grid a:hover { border-color: var(--blue); }

/* 区情、专题、数据 */
.district-facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; background: rgba(255,255,255,.16); }
.district-facts > div { padding: 1rem .65rem; background: rgba(5,25,46,.75); text-align: center; }
.district-facts strong { display: block; font-size: clamp(1.35rem,4vw,2.2rem); font-weight: 350; }
.district-facts strong small { margin-left: .15rem; font-size: .6rem; }
.district-facts span { display: block; margin-top: .25rem; color: #b7c9dc; font-size: .62rem; }
.district-intro { padding-block: clamp(4rem,7vw,7rem); background: #fff; }
.district-intro__grid { display: grid; gap: 2rem; align-items: center; }
.district-intro__image { position: relative; overflow: hidden; aspect-ratio: 4 / 3; }
.district-intro__image img { width: 100%; height: 100%; object-fit: cover; }
.district-intro__image > span { position: absolute; bottom: 1rem; left: 1rem; padding: .35rem .55rem; color: #fff; background: rgba(5,23,42,.7); font-size: .6rem; letter-spacing: .15em; }
.district-intro__copy h2 { margin-top: .75rem; font-size: clamp(2rem,5vw,3.6rem); letter-spacing: -.055em; }
.district-intro__copy p { margin-top: 1rem; color: var(--muted); line-height: 1.9; }
.district-intro__copy > div { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1.25rem; }
.park-grid { display: grid; gap: 1px; border: 1px solid #ccd7e3; background: #ccd7e3; }
.park-card { position: relative; display: flex; gap: 1rem; min-height: 170px; padding: 1.35rem; background: #fff; }
.park-card > span { color: #9aabbe; font-size: .65rem; }
.park-card > div { flex: 1; }
.park-card > div > .lucide { color: var(--blue); }
.park-card h3 { margin-top: .75rem; font-size: 1.1rem; }
.park-card p { margin-top: .4rem; color: var(--muted); font-size: .78rem; }
.park-card > a { display: inline-flex; align-items: center; justify-content: center; align-self: flex-end; width: 40px; height: 40px; border: 1px solid var(--line); color: var(--blue); }
.park-card:hover > a { color: #fff; background: var(--blue); border-color: var(--blue); }
.district-invest { display: flex; flex-direction: column; gap: 1rem; margin-top: 1.5rem; padding: 1.5rem; color: #fff; background: var(--navy); }
.district-invest > div { display: flex; align-items: center; gap: 1rem; }
.district-invest > div > span { color: #82affb; }
.district-invest p { margin-top: .35rem; color: #b8c9dc; font-size: .8rem; }
.district-gallery { display: grid; gap: 1rem; }
.district-gallery figure { position: relative; overflow: hidden; min-height: 250px; margin: 0; background: var(--navy); }
.district-gallery img { width: 100%; height: 100%; object-fit: cover; transition: transform 600ms ease; }
.district-gallery figure::after { content: ""; position: absolute; inset: 45% 0 0; background: linear-gradient(transparent,rgba(4,20,38,.85)); }
.district-gallery figcaption { position: absolute; z-index: 2; right: 1.25rem; bottom: 1.25rem; left: 1.25rem; color: #fff; }
.district-gallery figcaption span { display: block; color: #bad0ee; font-size: .68rem; }
.district-gallery figcaption strong { display: block; margin-top: .3rem; font-size: 1.1rem; }
.district-gallery figure:hover img { transform: scale(1.035); }
.topic-grid { display: grid; gap: 1rem; }
.topic-card { position: relative; min-height: 310px; padding: 1.5rem; color: #fff; background: var(--navy-2); }
.topic-card:nth-child(2) { color: #fff; background: #123c70; }
.topic-card:nth-child(3) { color: var(--text); background: #e7effd; }
.topic-card:nth-child(4) { color: var(--text); background: #fff; border: 1px solid var(--line); }
.topic-card__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 2.5rem; }
.topic-card__head > span { display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; color: #8db8ff; background: rgba(255,255,255,.08); }
.topic-card:nth-child(n+3) .topic-card__head > span { color: var(--blue); background: #fff; }
.topic-card__head small { color: #93a9c2; }
.topic-card h2 { margin-top: .65rem; font-size: 1.65rem; }
.topic-card p { margin-top: .8rem; color: #b7c9dd; font-size: .85rem; line-height: 1.8; }
.topic-card:nth-child(n+3) p { color: var(--muted); }
.topic-card b { position: absolute; right: 1.5rem; bottom: 1.35rem; left: 1.5rem; display: flex; align-items: center; justify-content: space-between; font-size: .72rem; }
.topic-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-soft); }
.keyword-board { display: grid; gap: 1px; border: 1px solid var(--line); background: var(--line); }
.keyword-board a { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .35rem .8rem; min-height: 96px; padding: 1rem; background: #fff; }
.keyword-board a > span { grid-row: 1 / 3; color: #9aabbe; font-size: .65rem; }
.keyword-board strong { font-size: 1rem; }
.keyword-board small { color: var(--muted); font-size: .7rem; }
.keyword-board .lucide { grid-column: 3; grid-row: 1 / 3; color: var(--blue); }
.keyword-board a:hover { background: #f3f7ff; }
.topic-aside { padding: 1.5rem; color: #fff; background: var(--blue); }
.topic-aside .micro-label { color: #d8e5ff; }
.topic-aside h2 { margin-top: .75rem; font-size: 1.8rem; }
.topic-aside p { margin-top: .75rem; color: #dce7ff; font-size: .88rem; }
.topic-aside .button { margin-top: 1rem; --button-ink: #fff; border-color: rgba(255,255,255,.65); }
.blueprint-grid { display: grid; gap: 1px; border: 1px solid var(--line); background: var(--line); }
.blueprint-grid > div { min-height: 155px; padding: 1.25rem; background: #fff; }
.blueprint-grid span { color: var(--blue); font-size: .68rem; }
.blueprint-grid h3 { margin-top: .75rem; }
.blueprint-grid p { margin-top: .45rem; color: var(--muted); font-size: .8rem; }
.data-official-card { display: flex; flex-direction: column; align-items: flex-start; padding: 1.4rem; color: var(--text); background: #fff; }
.data-official-card > span { color: var(--blue); }
.data-official-card small { margin-top: .75rem; color: var(--muted); }
.data-official-card strong { margin-top: .25rem; font-size: 1.15rem; }
.data-official-card b { display: flex; align-items: center; gap: .4rem; margin-top: .75rem; color: var(--blue-dark); font-size: .75rem; }
.data-catalog-grid { display: grid; gap: 1px; margin-top: 1.25rem; border: 1px solid var(--line); background: var(--line); }
.data-catalog-card { display: flex; align-items: center; gap: .85rem; min-height: 116px; padding: 1.1rem; background: #fff; }
.data-catalog-card > span { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 42px; height: 42px; color: var(--blue); background: #edf3ff; }
.data-catalog-card > div { flex: 1; }
.data-catalog-card h3 { font-size: .98rem; }
.data-catalog-card p { margin-top: .25rem; color: var(--muted); font-size: .72rem; }
.data-catalog-card > .lucide { color: #8a9bb0; }
.data-catalog-card:hover { background: #f3f7ff; }
.data-index-grid { display: grid; gap: 2rem; }
.data-source-card { display: flex; gap: .85rem; padding: 1.25rem; color: #fff; background: var(--navy-2); }
.data-source-card > span { color: #85b0fa; }
.data-source-card p { margin-top: .4rem; color: #b8c9dc; font-size: .8rem; }
.index-stat-grid { display: grid; gap: .75rem; }
.index-stat { padding: 1.1rem; border: 1px solid #ccd7e3; background: #fff; }
.index-stat > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.index-stat > div:first-child > span { display: inline-flex; align-items: center; gap: .5rem; font-weight: 650; }
.index-stat > div:first-child .lucide { color: var(--blue); }
.index-stat strong { color: var(--blue-dark); font-size: 1.8rem; font-weight: 450; }
.index-stat strong small { margin-left: .2rem; font-size: .65rem; }
.index-stat__bar { height: 4px; margin-top: .85rem; background: #e3eaf2; }
.index-stat__bar i { display: block; height: 100%; background: var(--blue); }
.index-stat > small { display: flex; align-items: center; justify-content: flex-end; gap: .35rem; margin-top: .65rem; color: var(--muted); font-size: .65rem; }
.data-story-grid { display: grid; gap: 1rem; }
.data-story-grid > a { position: relative; min-height: 240px; padding: 1.4rem; border: 1px solid var(--line); background: #fff; }
.data-story-grid > a > span { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; color: var(--blue); background: #edf3ff; }
.data-story-grid small { display: block; margin-top: 1.5rem; color: var(--muted); font-size: .65rem; }
.data-story-grid h3 { margin-top: .4rem; font-size: 1.2rem; }
.data-story-grid p { margin-top: .5rem; color: var(--muted); font-size: .8rem; }
.data-story-grid > a > .lucide { position: absolute; top: 1.4rem; right: 1.4rem; color: #8a9cb0; }
.data-story-grid > a:hover { color: #fff; background: var(--blue); border-color: var(--blue); }
.data-story-grid > a:hover p, .data-story-grid > a:hover small, .data-story-grid > a:hover > .lucide { color: #dce7ff; }
.data-story-grid > a:hover > span { color: #fff; background: rgba(255,255,255,.15); }

/* 政府信息公开平台 */
.disclosure-hero-search { padding: 1.25rem; color: var(--text); background: #fff; box-shadow: var(--shadow-soft); }
.disclosure-hero-search > label { display: block; margin-bottom: .6rem; font-weight: 700; }
.disclosure-hero-search > div { display: flex; gap: .5rem; }
.disclosure-hero-search .button { flex: 0 0 auto; --button-ink: #fff; border-color: var(--blue); background: var(--blue); }
.disclosure-hero-search p { margin-top: .55rem; color: var(--muted); font-size: .7rem; }
.disclosure-pillars { background: #fff; border-bottom: 1px solid var(--line); }
.disclosure-pillars > .container { display: grid; gap: 1px; padding-block: 1.25rem; background: var(--line); }
.disclosure-pillar { position: relative; min-height: 220px; padding: 1.35rem; background: #fff; }
.disclosure-pillar__num { position: absolute; top: 1.2rem; right: 1.2rem; color: #a4b2c2; font-size: .65rem; }
.disclosure-pillar__icon { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; color: var(--blue); background: #edf3ff; }
.disclosure-pillar h3 { margin-top: 1.15rem; font-size: 1.05rem; }
.disclosure-pillar p { margin-top: .5rem; color: var(--muted); font-size: .78rem; }
.disclosure-pillar b { position: absolute; right: 1.35rem; bottom: 1.1rem; left: 1.35rem; display: flex; align-items: center; justify-content: space-between; color: var(--blue-dark); font-size: .7rem; }
.disclosure-pillar:hover { color: #fff; background: var(--blue); }
.disclosure-pillar:hover p, .disclosure-pillar:hover b, .disclosure-pillar__num { color: #dce7ff; }
.disclosure-pillar:hover .disclosure-pillar__icon { color: #fff; background: rgba(255,255,255,.15); }
.disclosure-overview { display: grid; gap: 2rem; }
.disclosure-overview__latest { min-width: 0; }
.disclosure-overview__report { padding: 1.5rem; color: #fff; background: linear-gradient(145deg,#0a2c52,#071b33); }
.disclosure-overview__report h2 { margin-top: .75rem; font-size: 1.8rem; }
.disclosure-stats { display: grid; gap: 1px; margin-top: 1.5rem; background: rgba(255,255,255,.13); }
.disclosure-stats > div { display: flex; align-items: center; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.13); }
.disclosure-stats strong { min-width: 5.5rem; color: #8ab6ff; font-size: 2.25rem; font-weight: 350; line-height: 1; }
.disclosure-stats sup { font-size: .9rem; }
.disclosure-stats span { color: #d1deed; font-size: .78rem; }
.disclosure-stats small { display: block; color: #8fa7c2; font-size: .62rem; }
.disclosure-overview__report > p { margin-top: 1rem; color: #a9bdd3; font-size: .72rem; }
.disclosure-overview__report > .button { margin-top: 1rem; }
.directory-intro { display: grid; gap: 1rem; margin-bottom: 1.5rem; }
.directory-intro > p { max-width: 55rem; color: var(--muted); line-height: 1.85; }
.directory-intro > div { display: flex; flex-wrap: wrap; gap: .75rem; }
.directory-intro a { display: inline-flex; align-items: center; gap: .4rem; min-height: 44px; color: var(--blue-dark); font-size: .8rem; font-weight: 700; }
.disclosure-theme-grid { display: grid; gap: 1px; border: 1px solid #ccd7e3; background: #ccd7e3; }
.disclosure-theme { display: flex; align-items: center; gap: .8rem; min-height: 116px; padding: 1rem; background: #fff; }
.disclosure-theme > span { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 40px; height: 40px; color: var(--blue); background: #edf3ff; }
.disclosure-theme > div { flex: 1; min-width: 0; }
.disclosure-theme h3 { font-size: .92rem; }
.disclosure-theme p { display: none; margin-top: .3rem; color: var(--muted); font-size: .68rem; line-height: 1.55; }
.disclosure-theme > .lucide { color: #8a9cb0; }
.disclosure-theme:hover { background: #f1f6ff; }
.disclosure-theme:hover h3, .disclosure-theme:hover > .lucide { color: var(--blue); }
.disclosure-service-grid { display: grid; gap: 1.25rem; }
.disclosure-service--apply { position: relative; display: flex; flex-direction: column; align-items: flex-start; min-height: 340px; padding: 1.5rem; color: #fff; background: linear-gradient(135deg,#165dff,#0a43b7); }
.disclosure-service--apply > span { display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; background: rgba(255,255,255,.13); }
.disclosure-service--apply small { margin-top: 1.5rem; color: #cbdcff; font-size: .6rem; letter-spacing: .14em; }
.disclosure-service--apply h2 { margin-top: .5rem; font-size: 1.75rem; }
.disclosure-service--apply p { margin-top: .75rem; color: #dce7ff; font-size: .85rem; }
.disclosure-service--apply b { display: flex; align-items: center; gap: .45rem; margin-top: auto; padding-top: 1.5rem; font-size: .78rem; }
.disclosure-service-links { display: grid; gap: 1px; border: 1px solid var(--line); background: var(--line); }
.disclosure-service-links > a { display: flex; align-items: center; gap: .85rem; min-height: 100px; padding: 1rem; background: #fff; }
.disclosure-service-links > a > span { color: var(--blue); }
.disclosure-service-links > a > div { flex: 1; }
.disclosure-service-links h3 { font-size: .94rem; }
.disclosure-service-links p { margin-top: .25rem; color: var(--muted); font-size: .7rem; }
.disclosure-service-links > a > .lucide { color: #8a9cb0; }
.disclosure-service-links > a:hover { background: #f3f7ff; }
.meeting-features { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1rem; }
.meeting-features span { display: inline-flex; align-items: center; gap: .4rem; padding: .45rem .6rem; color: #46607f; background: #fff; font-size: .7rem; }
.annual-banner { padding-block: 2.5rem; color: #fff; background: var(--blue); }
.annual-banner > .container { display: flex; flex-direction: column; gap: 1.5rem; }
.annual-banner .micro-label { color: #d5e3ff; }
.annual-banner h2 { margin-top: .5rem; font-size: clamp(1.65rem,4vw,2.5rem); }
.annual-banner p { margin-top: .5rem; color: #dce7ff; }
.annual-banner > .container > div:last-child { display: flex; flex-wrap: wrap; gap: .65rem; }
.annual-banner .button { --button-ink: #fff; border-color: rgba(255,255,255,.65); background: transparent; }
.annual-banner .button:first-child { color: var(--blue); background: #fff; border-color: #fff; }

/* 公开目录组合检索 */
.catalog-workspace { padding-block: 2rem 5rem; }
.catalog-search { padding: 1.25rem; border-top: 3px solid var(--blue); background: #fff; box-shadow: 0 12px 35px rgba(15,39,71,.06); }
.catalog-search__main > label { display: block; margin-bottom: .55rem; font-size: 1.05rem; font-weight: 700; }
.catalog-search__main > div { display: flex; gap: .5rem; }
.catalog-search__main .button { flex: 0 0 auto; }
.catalog-search__fields { display: grid; gap: .75rem; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--line); }
.catalog-search__fields > label { display: grid; gap: .35rem; color: #53677f; font-size: .72rem; }
.catalog-search__fields .search-input { min-height: 46px; padding-block: .55rem; }
.catalog-layout { display: grid; gap: 1.5rem; margin-top: 1.5rem; }
.catalog-sidebar { align-self: start; border: 1px solid var(--line); background: #fff; }
.catalog-sidebar__head { padding: 1.25rem; color: #fff; background: var(--navy-2); }
.catalog-sidebar__head .micro-label { color: #8db8ff; }
.catalog-sidebar__head h2 { margin-top: .4rem; font-size: 1.2rem; }
.catalog-sidebar > a { display: flex; align-items: center; gap: .6rem; min-height: 48px; padding: .55rem 1rem; border-bottom: 1px solid #edf0f4; color: #455b75; font-size: .78rem; }
.catalog-sidebar > a > span { flex: 1; }
.catalog-sidebar > a > .lucide:first-child { color: var(--blue); }
.catalog-sidebar > a > .lucide:last-child { width: 14px; color: #9aa9b9; }
.catalog-sidebar > a:hover, .catalog-sidebar > a.is-active { color: var(--blue); background: #eff5ff; }
.catalog-sidebar > .catalog-all { min-height: 56px; color: var(--blue-dark); background: #f3f7ff; font-weight: 700; }
.catalog-sidebar__help { margin: 1rem; padding: 1rem; background: #f1f5fa; }
.catalog-sidebar__help h3 { font-size: .9rem; }
.catalog-sidebar__help p { margin-top: .4rem; color: var(--muted); font-size: .72rem; }
.catalog-sidebar__help a { display: inline-flex; align-items: center; gap: .35rem; min-height: 40px; color: var(--blue-dark); font-size: .72rem; font-weight: 700; }
.catalog-results { min-width: 0; }
.catalog-results__summary { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; padding-bottom: .85rem; border-bottom: 2px solid var(--navy); }
.catalog-results__summary h2 { margin-top: .25rem; font-size: 1.35rem; }
.catalog-results__summary > p { color: var(--muted); font-size: .75rem; }
.catalog-results__summary strong { color: var(--blue); font-size: 1.2rem; }
.catalog-result-list { display: grid; gap: .85rem; }
.disclosure-result { padding: 1.25rem; border: 1px solid var(--line); background: #fff; }
.disclosure-result__top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.disclosure-result__top time { color: var(--muted); font-size: .72rem; }
.disclosure-result h2 { margin-top: .75rem; font-size: 1.05rem; line-height: 1.6; }
.disclosure-result h2 a:hover { color: var(--blue); }
.disclosure-result > p { margin-top: .55rem; color: var(--muted); font-size: .82rem; }
.disclosure-result__meta { display: flex; flex-wrap: wrap; gap: .35rem 1rem; margin-top: .85rem; color: #708197; font-size: .68rem; }
.disclosure-result__actions { display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin-top: .85rem; padding-top: .75rem; border-top: 1px solid #edf0f4; }
.disclosure-result__actions a { display: inline-flex; align-items: center; gap: .35rem; min-height: 36px; color: var(--blue-dark); font-size: .7rem; font-weight: 650; }
.disclosure-result__actions a:last-child { color: #5c718a; }
.catalog-empty { padding: 2.5rem 1.25rem; border: 1px solid var(--line); background: #fff; text-align: center; }
.catalog-empty > .lucide { width: 2.25rem; height: 2.25rem; margin: 0 auto .75rem; color: var(--blue); }
.catalog-empty h3 { font-size: 1.15rem; }
.catalog-empty p { max-width: 32rem; margin: .6rem auto 0; color: var(--muted); font-size: .82rem; }
.catalog-empty .button { margin-top: 1rem; }
.catalog-theme-fallback { margin-top: 1rem; padding: 1.25rem; border-left: 3px solid var(--blue); background: #eaf1fb; }
.catalog-theme-fallback h3 { font-size: 1rem; }
.catalog-theme-fallback p { margin-top: .45rem; color: #536980; font-size: .78rem; }
.catalog-theme-fallback a { display: inline-flex; align-items: center; gap: .4rem; min-height: 44px; margin-top: .5rem; color: var(--blue-dark); font-weight: 700; }
.catalog-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: .35rem; margin-top: 1.5rem; }
.catalog-pagination button { min-width: 42px; min-height: 42px; padding: .45rem .65rem; border: 1px solid var(--line); background: #fff; }
.catalog-pagination button[aria-current="page"] { color: #fff; background: var(--blue); border-color: var(--blue); }
.catalog-active-filter { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: .75rem; }
.catalog-active-filter span { padding: .35rem .55rem; color: #3f5d83; background: #e7effc; font-size: .68rem; }

/* 公开指南与依申请公开 */
.guide-layout { display: grid; gap: 2rem; }
.reading-toc { align-self: start; padding: 1.25rem; border-top: 3px solid var(--blue); background: #fff; box-shadow: 0 10px 30px rgba(15,39,71,.05); }
.reading-toc h2 { margin: .4rem 0 .75rem; font-size: 1.15rem; }
.reading-toc a { display: flex; align-items: center; min-height: 43px; border-bottom: 1px solid #edf0f4; color: #52667e; font-size: .78rem; }
.reading-toc a:hover { color: var(--blue); padding-left: .25rem; }
.guide-content { min-width: 0; }
.source-banner { display: flex; flex-wrap: wrap; align-items: center; gap: .85rem; margin-bottom: 1rem; padding: 1rem 1.25rem; color: #fff; background: var(--navy-2); }
.source-banner > span { color: #83b0fb; }
.source-banner > div { flex: 1 1 15rem; min-width: 0; overflow-wrap: anywhere; }
.source-banner p { margin-top: .25rem; color: #b8c9dc; font-size: .7rem; }
.source-banner a { display: inline-flex; align-items: center; gap: .35rem; min-height: 44px; font-size: .75rem; font-weight: 700; }
.guide-section { position: relative; margin-top: 1rem; padding: 1.5rem; scroll-margin-top: 11rem; border: 1px solid var(--line); background: #fff; }
.guide-section__num { position: absolute; top: 1.5rem; right: 1.5rem; color: #c2ccd8; font-size: 1.5rem; font-weight: 300; }
.guide-section > h2 { padding-right: 2.5rem; font-size: 1.35rem; }
.guide-section > h3 { margin-top: 1.35rem; font-size: 1rem; }
.guide-section > p { margin-top: .8rem; color: #4d6179; line-height: 1.95; }
.guide-section > .text-link { margin-top: .75rem; }
.guide-category-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; margin-top: 1.25rem; border: 1px solid var(--line); background: var(--line); }
.guide-category-grid span { padding: .8rem; background: #f7f9fc; font-size: .78rem; text-align: center; }
.guide-channel-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; margin-top: .75rem; }
.guide-channel-list span { display: flex; align-items: center; gap: .5rem; min-height: 52px; padding: .65rem; color: #3e5c80; background: #edf3fb; font-size: .75rem; }
.guide-channel-list .lucide { color: var(--blue); }
.guide-deadline { display: flex; align-items: center; gap: 1.25rem; margin-top: .75rem; padding: 1.25rem; background: #edf3fb; }
.guide-deadline strong { flex: 0 0 auto; color: var(--blue); font-size: 2.8rem; font-weight: 350; line-height: 1; }
.guide-deadline strong small { display: block; margin-top: .35rem; font-size: .65rem; font-weight: 600; }
.guide-deadline p { color: #4b617a; font-size: .8rem; }
.guide-action-row { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1.25rem; }
.contact-list { margin-top: 1.25rem; }
.contact-list > div { display: grid; gap: .2rem; padding: .75rem 0; border-bottom: 1px solid var(--line); }
.contact-list dt { color: var(--muted); font-size: .72rem; }
.contact-list dd { margin: 0; color: #263d57; font-size: .86rem; }
.contact-list dd a { color: var(--blue-dark); }
.contact-list dd small { display: block; margin-top: .2rem; color: var(--red); font-size: .65rem; }
.reading-point { display: flex; gap: .85rem; margin-top: 1rem; padding: 1.25rem; background: #edf3fb; }
.reading-point > span { color: var(--blue); }
.reading-point > div { flex: 1; }
.guide-checklist { margin-top: 1rem; }
.guide-checklist li { position: relative; padding: .65rem 0 .65rem 1.25rem; border-bottom: 1px solid var(--line); color: #4d6179; }
.guide-checklist li::before { content: ""; position: absolute; top: 1.4rem; left: 0; width: 5px; height: 5px; background: var(--blue); }
.remedy-grid { display: grid; gap: .75rem; margin-top: 1.25rem; }
.remedy-grid article { padding: 1.1rem; border: 1px solid var(--line); background: #f8fafc; }
.remedy-grid article > span { color: var(--blue); }
.remedy-grid h3 { margin-top: .65rem; font-size: 1rem; }
.remedy-grid p { margin-top: .45rem; color: var(--muted); font-size: .75rem; }
.remedy-grid a { color: var(--blue-dark); }
.download-list { display: grid; gap: .75rem; margin-top: 1.25rem; }
.download-list > a { display: flex; align-items: center; gap: .85rem; min-height: 82px; padding: 1rem; border: 1px solid var(--line); background: #f8fafc; }
.download-list > a > span { color: var(--blue); }
.download-list > a > div { flex: 1; }
.download-list strong, .download-list small { display: block; }
.download-list strong { font-size: .85rem; }
.download-list small { margin-top: .25rem; color: var(--muted); font-size: .65rem; }
.download-list > a > .lucide { color: #8194aa; }
.download-list > a:hover { border-color: var(--blue); background: #f0f5ff; }
.request-channel-grid { display: grid; gap: 1rem; }
.request-channel { position: relative; min-height: 260px; padding: 1.4rem; border-top: 3px solid var(--blue); background: #fff; box-shadow: 0 10px 30px rgba(15,39,71,.05); }
.request-channel > span { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; color: var(--blue); background: #edf3ff; }
.request-channel h3 { margin-top: 1rem; font-size: 1.2rem; }
.request-channel p { margin-top: .6rem; color: var(--muted); font-size: .82rem; line-height: 1.85; }
.request-channel .text-link { position: absolute; bottom: 1rem; left: 1.4rem; }
.request-elements { display: grid; gap: 2rem; }
.request-elements h2 { margin-top: .65rem; font-size: clamp(1.65rem,4vw,2.6rem); }
.request-elements > div > p { margin-top: .8rem; color: var(--muted); line-height: 1.85; }
.request-elements > div > .button { margin-top: 1rem; }
.request-elements ol { display: grid; gap: 1px; border: 1px solid #ccd7e3; background: #ccd7e3; }
.request-elements li { display: flex; gap: 1rem; padding: 1.1rem; background: #fff; }
.request-elements li > span { color: var(--blue); font-size: .68rem; }
.request-elements li p { margin-top: .3rem; color: var(--muted); font-size: .76rem; }
.request-process { padding: 1.5rem; color: #fff; background: var(--navy-2); }
.request-process ol { display: grid; gap: 1px; background: rgba(255,255,255,.14); }
.request-process li { padding: 1.1rem; background: #0c2d50; }
.request-process li > span { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border: 1px solid #6d9de9; border-radius: 50%; color: #9fc1fa; font-size: .7rem; }
.request-process h3 { margin-top: .75rem; font-size: 1rem; }
.request-process li p { margin-top: .25rem; color: #aebfd3; font-size: .7rem; }
.request-deadline { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-top: 1.5rem; padding: 1.25rem; background: rgba(255,255,255,.06); text-align: center; }
.request-deadline strong { display: block; color: #8db8ff; font-size: 3rem; font-weight: 300; line-height: 1; }
.request-deadline span { display: block; margin-top: .4rem; color: #c0d0e2; font-size: .7rem; }
.request-deadline > i { color: #7490b1; font-size: 1.5rem; font-style: normal; }
.request-process > p { margin-top: 1rem; color: #aebfd3; font-size: .75rem; }
.request-agency { display: grid; gap: 1.5rem; padding: 1.5rem; background: #fff; border: 1px solid var(--line); }
.request-agency h2 { margin-top: .65rem; font-size: 1.65rem; }
.request-agency h3 { margin-top: .75rem; color: var(--blue-dark); }
.request-agency p { margin-top: .5rem; color: var(--muted); }
.request-notes { display: grid; gap: 1rem; }
.request-notes article { padding: 1.25rem; border: 1px solid var(--line); background: #fff; }
.request-notes article > span { color: var(--blue); }
.request-notes h2 { margin-top: .65rem; font-size: 1.15rem; }
.request-notes p { margin-top: .5rem; color: var(--muted); font-size: .8rem; }
.request-notes a { display: inline-flex; align-items: center; gap: .35rem; min-height: 44px; color: var(--blue-dark); font-size: .75rem; font-weight: 700; }

/* 高新智办：可信、可解释的本地 DEMO */
.ai-status-card { display: flex; align-items: flex-start; gap: .85rem; padding: 1.25rem; border: 1px solid rgba(255,255,255,.2); background: rgba(5,25,46,.55); backdrop-filter: blur(8px); }
.ai-status-card .status-dot { flex: 0 0 auto; margin-top: .4rem; }
.ai-status-card small { color: #7faef9; font-size: .58rem; letter-spacing: .12em; }
.ai-status-card strong { display: block; margin-top: .25rem; font-size: 1.05rem; }
.ai-status-card p { margin-top: .35rem; color: #b7c9dc; font-size: .72rem; }
.ai-workspace { padding-block: 2rem 5rem; background: #edf2f8; }
.ai-demo-notice { display: flex; flex-wrap: wrap; align-items: center; gap: .85rem; margin-bottom: 1.25rem; padding: 1rem 1.15rem; border: 1px solid #c9d8ee; background: #f8fbff; }
.ai-demo-notice > span { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 38px; height: 38px; color: var(--blue); background: #e6efff; }
.ai-demo-notice > div { flex: 1 1 15rem; min-width: 0; overflow-wrap: anywhere; }
.ai-demo-notice strong { font-size: .85rem; }
.ai-demo-notice p { margin-top: .25rem; color: var(--muted); font-size: .7rem; }
.ai-demo-notice > a { display: inline-flex; align-items: center; gap: .35rem; min-height: 40px; color: var(--blue-dark); font-size: .72rem; font-weight: 700; }
.ai-app { display: grid; border: 1px solid #d3dde8; background: #fff; box-shadow: 0 20px 55px rgba(15,39,71,.08); }
.ai-app__tabs { display: flex; overflow-x: auto; color: #fff; background: var(--navy); scrollbar-width: thin; }
.ai-app__tabs button { position: relative; display: flex; align-items: center; gap: .5rem; flex: 0 0 auto; min-width: 132px; min-height: 62px; padding: .75rem 1rem; border: 0; border-right: 1px solid rgba(255,255,255,.1); color: #b6c7da; background: transparent; text-align: left; }
.ai-app__tabs button > .lucide { color: #79a9f8; }
.ai-app__tabs button small { display: none; margin-left: auto; color: #6683a5; font-size: .58rem; }
.ai-app__tabs button[aria-selected="true"] { color: #fff; background: var(--blue); }
.ai-app__tabs button[aria-selected="true"] > .lucide, .ai-app__tabs button[aria-selected="true"] small { color: #fff; }
.ai-app__tabs button:hover { color: #fff; background: #10375f; }
.ai-app__tabs button[aria-selected="true"]:hover { background: var(--blue); }
.ai-app__main { min-width: 0; }
.ai-panel { position: relative; min-width: 0; padding: 1.25rem; scroll-margin-top: 11rem; }
.ai-panel__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1.5rem; padding-bottom: 1.25rem; border-bottom: 1px solid var(--line); }
.ai-panel__head h2 { margin-top: .45rem; font-size: clamp(1.55rem,3vw,2.2rem); letter-spacing: -.035em; }
.ai-panel__head p { margin-top: .35rem; color: var(--muted); font-size: .8rem; }
.demo-badge { display: inline-flex; align-items: center; flex: 0 0 auto; min-height: 30px; padding: .3rem .55rem; color: #765400; background: #fff4d5; font-size: .62rem; font-weight: 700; }
.chat-layout { display: grid; gap: 1.25rem; }
.chat-main { min-width: 0; border: 1px solid var(--line); }
.chat-messages { overflow-y: auto; min-height: 330px; max-height: 540px; padding: 1rem; background: #f7f9fc; }
.chat-message { display: flex; gap: .65rem; margin-bottom: 1.25rem; }
.chat-message--user { justify-content: flex-end; }
.chat-avatar { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 34px; height: 34px; color: var(--blue); background: #e7efff; }
.chat-bubble { max-width: 90%; padding: .85rem 1rem; border: 1px solid #e0e6ee; background: #fff; }
.chat-bubble > small { color: var(--blue); font-size: .62rem; }
.chat-bubble > p { margin-top: .45rem; color: #3d526b; font-size: .82rem; line-height: 1.85; }
.chat-bubble .chat-limit { color: #8391a2; font-size: .66rem; }
.chat-message--user .chat-bubble { color: #fff; background: var(--blue); border-color: var(--blue); }
.chat-message--user .chat-bubble p { color: #fff; }
.chat-answer-sources { margin-top: .75rem; padding-top: .65rem; border-top: 1px solid var(--line); }
.chat-answer-sources > small { display: block; margin-bottom: .4rem; color: var(--muted); }
.chat-answer-sources a { display: flex; align-items: center; gap: .4rem; min-height: 40px; color: var(--blue-dark); font-size: .72rem; font-weight: 650; }
.chat-answer-sources a .lucide { width: 14px; }
.chat-related { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .65rem; }
.chat-related a { padding: .3rem .5rem; color: #355b8e; background: #edf3ff; font-size: .65rem; }
.chat-prompts { display: flex; overflow-x: auto; gap: .4rem; padding: .65rem 1rem; border-top: 1px solid var(--line); background: #fff; }
.chat-prompts button { flex: 0 0 auto; min-height: 36px; padding: .35rem .6rem; border: 1px solid #cad7e8; color: #405c80; background: #fff; font-size: .68rem; }
.chat-prompts button:hover { color: var(--blue); border-color: var(--blue); }
.ai-chat-form { padding: .75rem 1rem 1rem; }
.ai-chat-form textarea { width: 100%; resize: vertical; min-height: 74px; padding: .75rem; border: 0; outline: 0; color: var(--text); }
.ai-chat-form > div { display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.ai-chat-form > div > span { color: var(--muted); font-size: .62rem; }
.ai-chat-form .button { min-height: 42px; padding: .55rem .9rem; }
.chat-sources { align-self: start; padding: 1.25rem; color: #fff; background: var(--navy-2); }
.chat-sources > h3 { margin: .45rem 0 .75rem; font-size: 1.1rem; }
.chat-sources > a { display: flex; align-items: center; gap: .65rem; min-height: 68px; padding: .65rem 0; border-bottom: 1px solid rgba(255,255,255,.13); }
.chat-sources > a > span { color: #82affb; }
.chat-sources > a > div { flex: 1; }
.chat-sources > a strong, .chat-sources > a small { display: block; }
.chat-sources > a strong { font-size: .8rem; }
.chat-sources > a small { margin-top: .2rem; color: #aebfd3; font-size: .62rem; }
.chat-sources > a > .lucide { color: #718ca9; }
.chat-human { margin-top: 1.25rem; padding: 1rem; background: rgba(255,255,255,.07); }
.chat-human h3 { font-size: .9rem; }
.chat-human p { margin-top: .35rem; color: #b7c8da; font-size: .68rem; }
.chat-human a { display: inline-flex; align-items: center; gap: .35rem; min-height: 40px; color: #9dc0fb; font-size: .7rem; font-weight: 700; }
.policy-match-layout, .guide-demo-layout, .material-layout, .reader-layout { display: grid; gap: 1.25rem; }
.policy-match-form, .smart-guide-form, #material-service-form, #article-reader-form { align-self: start; padding: 1.25rem; border: 1px solid var(--line); background: #f8fafc; }
.form-section + .form-section { margin-top: 1.25rem; padding-top: 1.25rem; border-top: 1px solid var(--line); }
.form-section h3 { display: flex; align-items: center; gap: .55rem; margin-bottom: .75rem; font-size: .85rem; }
.form-section h3 > span { color: var(--blue); font-size: .62rem; }
.choice-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .4rem; }
.choice-grid label, .check-grid label { position: relative; cursor: pointer; }
.choice-grid input, .check-grid input { position: absolute; opacity: 0; }
.choice-grid label > span { display: flex; align-items: center; justify-content: center; min-height: 44px; border: 1px solid #cbd6e3; background: #fff; font-size: .78rem; }
.choice-grid input:checked + span { color: #fff; background: var(--blue); border-color: var(--blue); }
.choice-grid input:focus-visible + span, .check-grid input:focus-visible + span { outline: 3px solid var(--focus); outline-offset: 2px; }
.field-label { display: grid; gap: .35rem; margin-top: .75rem; color: #53677f; font-size: .72rem; }
.check-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .4rem; }
.check-grid label > span { display: flex; align-items: center; min-height: 42px; padding: .45rem .6rem; border: 1px solid #cbd6e3; background: #fff; font-size: .72rem; }
.check-grid input:checked + span { color: var(--blue-dark); background: #eaf1ff; border-color: #8fb0ee; }
.check-grid input:checked + span::before { content: "✓"; margin-right: .4rem; font-weight: 800; }
.policy-match-form > .button, .smart-guide-form > .button, #article-reader-form > .button { width: 100%; margin-top: 1.25rem; }
.form-note { margin-top: .75rem; color: var(--muted); font-size: .66rem; line-height: 1.7; }
.result-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 320px; padding: 2rem 1rem; border: 1px dashed #bfcddd; color: var(--muted); background: #fafcfe; text-align: center; }
.result-placeholder > span { display: inline-flex; align-items: center; justify-content: center; width: 62px; height: 62px; margin-bottom: 1rem; color: var(--blue); background: #eaf1ff; }
.result-placeholder > span .lucide { width: 28px; height: 28px; }
.result-placeholder h3 { color: var(--text); font-size: 1rem; }
.result-placeholder p { max-width: 25rem; margin-top: .5rem; font-size: .75rem; }
.match-result-head { margin-bottom: 1rem; padding: 1.25rem; color: #fff; background: var(--navy-2); }
.match-result-head small { color: #8eb8fc; font-size: .62rem; }
.match-result-head h3 { margin-top: .35rem; font-size: 1.2rem; }
.match-result-head p { margin-top: .45rem; color: #b8c9dc; font-size: .72rem; }
.match-result-card { margin-bottom: .75rem; padding: 1.1rem; border: 1px solid var(--line); background: #fff; }
.match-result-card__top { display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.match-result-card__top > span { color: var(--blue); font-size: .62rem; font-weight: 700; }
.match-result-card__top > small { color: var(--muted); font-size: .6rem; }
.match-result-card h3 { margin-top: .55rem; font-size: 1rem; }
.match-result-card > p { margin-top: .45rem; color: var(--muted); font-size: .76rem; }
.match-reason { margin-top: .65rem; padding: .6rem .75rem; color: #3e5b7f; background: #edf3fb; font-size: .68rem; }
.match-actions { display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin-top: .65rem; }
.match-actions a { display: inline-flex; align-items: center; gap: .35rem; min-height: 38px; color: var(--blue-dark); font-size: .7rem; font-weight: 700; }
.match-disclaimer { color: var(--muted); font-size: .66rem; }
.smart-guide-form > label, #material-service-form > label, #article-reader-form > label { display: block; margin-bottom: .55rem; font-size: .85rem; font-weight: 700; }
.guide-result-card { padding: 1.25rem; border: 1px solid var(--line); background: #fff; }
.guide-result-card__head { display: flex; align-items: center; gap: .85rem; padding-bottom: 1rem; border-bottom: 1px solid var(--line); }
.guide-result-card__head > span { display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; color: var(--blue); background: #eaf1ff; }
.guide-result-card__head small { color: var(--blue); font-size: .62rem; }
.guide-result-card__head h3 { margin-top: .25rem; font-size: 1.2rem; }
.guide-result-meta { display: grid; gap: .5rem; margin-top: 1rem; }
.guide-result-meta > div { padding: .65rem; background: #f5f8fc; }
.guide-result-meta dt { color: var(--muted); font-size: .62rem; }
.guide-result-meta dd { margin: .2rem 0 0; font-size: .78rem; }
.guide-result-steps { display: grid; gap: .55rem; margin-top: 1rem; counter-reset: guide; }
.guide-result-steps li { position: relative; padding: .75rem .75rem .75rem 2.7rem; border: 1px solid var(--line); counter-increment: guide; }
.guide-result-steps li::before { content: counter(guide,decimal-leading-zero); position: absolute; top: .85rem; left: .75rem; color: var(--blue); font-size: .65rem; font-weight: 700; }
.guide-result-steps strong { display: block; font-size: .8rem; }
.guide-result-steps p { margin-top: .25rem; color: var(--muted); font-size: .68rem; }
.guide-result-actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1rem; }
#material-service-form > div { display: grid; gap: .6rem; }
.material-warning { display: flex; gap: .65rem; margin-top: .75rem; padding: 1rem; color: #6d571e; background: #fff7df; font-size: .7rem; }
.material-warning > .lucide { flex: 0 0 auto; margin-top: .2rem; }
.material-result-head { padding: 1.1rem; color: #fff; background: var(--navy-2); }
.material-result-head small { color: #8db8ff; }
.material-result-head h3 { margin-top: .3rem; }
.material-progress { margin-top: .85rem; }
.material-progress > div:first-child { display: flex; justify-content: space-between; color: #c3d2e4; font-size: .65rem; }
.material-progress__bar { height: 5px; margin-top: .45rem; background: rgba(255,255,255,.15); }
.material-progress__bar i { display: block; width: 0; height: 100%; background: #75d9bd; transition: width 200ms ease; }
.material-check { display: flex; align-items: flex-start; gap: .65rem; padding: .85rem 0; border-bottom: 1px solid var(--line); cursor: pointer; }
.material-check input { flex: 0 0 auto; width: 20px; height: 20px; margin-top: .15rem; accent-color: var(--blue); }
.material-check strong { display: block; font-size: .8rem; }
.material-check small { display: block; margin-top: .25rem; color: var(--muted); font-size: .66rem; }
.material-check:has(input:checked) strong { color: #6f7f90; text-decoration: line-through; }
.material-complete { margin-top: .75rem; padding: .75rem; color: #17634e; background: #e9f8f2; font-size: .72rem; }
.reader-result__head { padding-bottom: 1rem; border-bottom: 1px solid var(--line); }
.reader-result__head small { color: var(--blue); font-size: .62rem; }
.reader-result__head h3 { margin-top: .4rem; font-size: 1.25rem; line-height: 1.5; }
.reader-result__head p { margin-top: .45rem; color: var(--muted); font-size: .68rem; }
.reader-summary { margin-top: 1rem; padding: 1.1rem; border-left: 3px solid var(--blue); background: #edf3fb; }
.reader-summary h4, .reader-points h4, .reader-structure h4, .reader-terms h4 { font-size: .82rem; }
.reader-summary p { margin-top: .45rem; color: #405873; font-size: .78rem; line-height: 1.85; }
.reader-points, .reader-structure, .reader-terms { margin-top: 1rem; }
.reader-points li { position: relative; margin-top: .5rem; padding-left: 1rem; color: #465c74; font-size: .76rem; }
.reader-points li::before { content: ""; position: absolute; top: .65rem; left: 0; width: 4px; height: 4px; background: var(--blue); }
.reader-structure > div { display: grid; gap: .4rem; margin-top: .55rem; }
.reader-structure span { padding: .55rem .65rem; color: #3e5a7d; background: #f1f5fa; font-size: .7rem; }
.reader-terms dl { margin-top: .5rem; }
.reader-terms dl > div { display: grid; gap: .2rem; padding: .6rem 0; border-bottom: 1px solid var(--line); }
.reader-terms dt { color: var(--blue-dark); font-size: .72rem; font-weight: 700; }
.reader-terms dd { margin: 0; color: var(--muted); font-size: .68rem; }
.reader-actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1.25rem; }
.ai-boundary { color: #fff; background: var(--navy); }
.boundary-grid { display: grid; gap: 1px; border: 1px solid rgba(255,255,255,.13); background: rgba(255,255,255,.13); }
.boundary-grid article { display: flex; gap: 1rem; min-height: 185px; padding: 1.25rem; background: #0a2847; }
.boundary-grid article > span { color: #6f9edc; font-size: .65rem; }
.boundary-grid article > div > .lucide { color: #82affb; }
.boundary-grid h3 { margin-top: .65rem; font-size: 1rem; }
.boundary-grid p { margin-top: .45rem; color: #aebfd3; font-size: .76rem; }
.boundary-actions { display: flex; flex-wrap: wrap; gap: .65rem; margin-top: 1.5rem; }

/* 详情、网站支持与页脚 */
.page-hero { padding-block: 2.5rem; background: linear-gradient(120deg,#071b33,#0b2e54); }
.page-title { font-size: clamp(2rem,6vw,3.8rem); letter-spacing: -.05em; }
.page-intro { color: #b8c9dc; line-height: 1.85; }
.search-page-form { padding: 1.25rem; border-top: 3px solid var(--blue); background: #fff; box-shadow: 0 12px 35px rgba(15,39,71,.05); }
.search-page-form .search-form { flex-wrap: wrap; }
.search-page-form .search-input { flex: 1 1 15rem; }
.search-result { padding: 1.5rem; margin-bottom: .75rem; border: 1px solid var(--line); background: #fff; }
.search-result__title { line-height: 1.55; }
.article-shell { max-width: 1040px; }
.article-head { padding: 1.5rem 0 2rem; text-align: left; }
.article-title { max-width: 22ch; font-size: clamp(1.8rem,4.5vw,3.1rem); letter-spacing: -.035em; }
.article-meta { justify-content: flex-start; }
.article-tools { align-items: center; padding-block: .85rem; border-top: 1px solid var(--line); }
.article-ai-link { color: var(--blue-dark); background: #edf3ff; }
.article-ai-link small { padding: .08rem .25rem; color: #fff; background: var(--blue); font-size: .52rem; }
.article-content { margin-top: 2.5rem; font-size: 1.08rem; line-height: 2.05; }
.article-content p:first-child::first-letter { float: left; margin: .12em .12em 0 0; color: var(--blue); font-size: 3.2em; font-weight: 700; line-height: .85; }
.article-attachments { border-left: 3px solid var(--blue); }
.service-guide { gap: 2.5rem; }
.guide-summary { border-top: 3px solid var(--blue); background: #fff; box-shadow: 0 12px 35px rgba(15,39,71,.06); }
.service-elements { margin-top: 2rem; padding: 1.5rem; border: 1px solid var(--line); background: #f5f8fc; }
.service-elements .section-heading { margin-bottom: .75rem; }
.service-elements .section-heading h2 { font-size: 1.35rem; }
.service-elements > p { color: var(--muted); font-size: .8rem; }
.service-elements > div:last-child { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .5rem; margin-top: 1rem; }
.service-elements > div:last-child > span { display: flex; align-items: center; gap: .4rem; min-height: 44px; padding: .55rem; color: #385675; background: #fff; font-size: .75rem; }
.service-elements > div:last-child .lucide { color: var(--blue); }
.sitemap-grid { display: grid; gap: 1rem; }
.sitemap-group { padding: 1.25rem; border-top: 3px solid var(--blue); background: #fff; box-shadow: 0 10px 30px rgba(15,39,71,.04); }
.sitemap-group__title { display: flex; align-items: center; justify-content: space-between; min-height: 46px; margin: 0; color: var(--navy); font-size: 1.1rem; font-weight: 750; }
.sitemap-group ul { margin-top: .65rem; }
.sitemap-group li a { display: flex; align-items: center; min-height: 40px; margin: 0; border-bottom: 1px solid #edf0f4; color: #52667e; font-size: .78rem; }
.sitemap-group li a::before { content: ""; width: 4px; height: 4px; margin-right: .55rem; background: #9cb1ca; }
.sitemap-group li a:hover { color: var(--blue); }
.design-principles { display: grid; gap: 1px; border: 1px solid #ccd7e3; background: #ccd7e3; }
.design-principles article { min-height: 220px; padding: 1.4rem; background: #fff; }
.design-principles article > span { color: var(--blue); font-size: .62rem; font-weight: 700; letter-spacing: .1em; }
.design-principles h3 { margin-top: 1.5rem; font-size: 1.1rem; }
.design-principles p { margin-top: .65rem; color: var(--muted); font-size: .8rem; line-height: 1.85; }
.design-system { display: grid; gap: 1.5rem; margin-top: 1.5rem; padding: 1.5rem; color: #fff; background: var(--navy); }
.design-system h3 { margin-top: .65rem; font-size: 1.45rem; }
.design-system p { margin-top: .65rem; color: #b8c9dc; font-size: .8rem; }
.design-tokens { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .65rem; }
.design-tokens span { display: flex; align-items: center; gap: .55rem; color: #c6d4e4; font-size: .72rem; }
.design-tokens i { width: 30px; height: 30px; border: 1px solid rgba(255,255,255,.2); background: var(--token); }
.prototype-grid { display: grid; gap: 1rem; }
.prototype-grid article { padding: 1.35rem; border: 1px solid var(--line); background: #fff; }
.prototype-grid article > .lucide { color: var(--blue); }
.prototype-grid h3 { margin-top: .85rem; font-size: 1rem; }
.prototype-grid p { margin-top: .5rem; color: var(--muted); font-size: .8rem; line-height: 1.8; }
.compliance-note { margin-top: 1.25rem; padding: 1.25rem; border-left: 3px solid #b17b16; background: #fff7df; }
.compliance-note strong { color: #6b4b0d; }
.compliance-note p { margin-top: .4rem; color: #6c5d3d; font-size: .78rem; }
.content-prose { max-width: 960px; }
.content-prose h2 { margin-top: .65rem; font-size: clamp(1.7rem,4vw,2.5rem); }
.content-prose p { margin-top: 1rem; color: #485e77; line-height: 1.95; }
.content-prose ul { margin-top: 1rem; }
.content-prose li { position: relative; padding: .55rem 0 .55rem 1.25rem; color: #485e77; }
.content-prose li::before { content: ""; position: absolute; top: 1.3rem; left: 0; width: 5px; height: 5px; background: var(--blue); }
.content-prose .button { margin-top: 1.25rem; }
.contact-panel { display: grid; gap: 1.5rem; }
.contact-panel h2 { margin-top: .65rem; font-size: 1.8rem; }
.contact-panel p { margin-top: .75rem; color: var(--muted); line-height: 1.9; }
.contact-panel > div:last-child { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; }
.site-footer { color: #fff; background: #061426; }
.footer-main { display: grid; gap: 2.5rem; padding-block: 3.5rem 2.5rem; }
.footer-brand .micro-label { color: #6e8fb7; }
.footer-wordmark { margin-top: 1.25rem; font-size: clamp(3.5rem,12vw,7rem); font-weight: 800; letter-spacing: -.075em; }
.footer-en { color: #8ea5c0; font-size: .75rem; letter-spacing: .12em; }
.footer-ai-link { display: inline-flex; align-items: center; gap: .5rem; min-height: 48px; margin-top: 1.25rem; padding: .65rem .85rem; border: 1px solid #294766; color: #a9c7f4; font-size: .75rem; }
.footer-ai-link:hover { color: #fff; border-color: #6d9de9; }
.footer-grid { gap: 1.5rem; margin: 0; padding: 0; border: 0; }
.footer-group h2 { margin-bottom: .85rem; color: #fff; font-size: .85rem; }
.footer-group a { display: flex; min-height: 38px; margin: 0; color: #94a9c1; font-size: .75rem; }
.footer-group a:hover { color: #fff; text-decoration: none; }
.footer-bottom { background: #040f1c; }
.footer-demo-note { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem 1rem; padding-block: .85rem; border-bottom: 1px solid #24374c; color: #b7c6d7; font-size: .72rem; line-height: 1.75; }
.footer-demo-note strong { color: #fff; }
.footer-demo-note p { flex: 1 1 28rem; }
.footer-demo-note a { display: inline-flex; align-items: center; gap: .35rem; min-height: 44px; color: #c4d9f5; font-weight: 700; }
.footer-demo-note a:hover { color: #fff; }
.footer-demo-note a .lucide { width: 15px; height: 15px; }
.footer-bottom__inner { color: #7f96b0; font-size: .68rem; line-height: 1.9; }
.footer-records a:hover, .footer-legal a:hover { color: #fff; }
.footer-legal a { min-height: 40px; }
.site-toast { position: fixed; z-index: 180; right: 1rem; bottom: 5.5rem; left: 1rem; padding: .85rem 1rem; color: #fff; background: var(--navy-2); box-shadow: var(--shadow-dialog); opacity: 0; visibility: hidden; transform: translateY(10px); transition: .2s ease; font-size: .8rem; }
.site-toast.is-visible { opacity: 1; visibility: visible; transform: translateY(0); }
.ai-float { position: fixed; z-index: 42; right: 1.25rem; bottom: 5.5rem; display: none; align-items: center; gap: .45rem; min-height: 50px; padding: .65rem .85rem; color: #fff; background: var(--blue); box-shadow: 0 12px 35px rgba(22,93,255,.35); font-size: .8rem; font-weight: 700; }
.ai-float b { padding: .1rem .25rem; color: var(--blue); background: #fff; font-size: .5rem; }
.ai-float:hover { background: var(--blue-dark); transform: translateY(-2px); }
.back-top { right: 1.25rem; bottom: 1.25rem; border: 0; background: var(--navy-2); }
.mobile-dock { position: fixed; z-index: 45; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(4,1fr); padding-bottom: env(safe-area-inset-bottom); border-top: 1px solid #d8e0e9; background: rgba(255,255,255,.97); box-shadow: 0 -8px 25px rgba(7,27,51,.08); backdrop-filter: blur(15px); }
.mobile-dock a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .2rem; min-height: 62px; color: #52667d; font-size: .62rem; }
.mobile-dock a .lucide { width: 20px; height: 20px; }
.mobile-dock a.is-ai { color: var(--blue); }
body { padding-bottom: calc(62px + env(safe-area-inset-bottom)); }

/* 实际归档与服务目录结构修正 */
.district-intro { display: block; }
.park-card { overflow: visible; color: var(--text); }
.park-card::after { display: none; }
.archive-toolbar .filter-bar { margin: 0; padding: 0; background: transparent; }
.archive-list__item { position: relative; display: grid; grid-template-columns: 3.5rem minmax(0,1fr); gap: .85rem; padding: 1.25rem 2.25rem 1.25rem clamp(.75rem,2vw,2rem); }
.archive-list__content h2 { margin-top: .5rem; font-size: 1rem; line-height: 1.6; }
.archive-list__content > p { margin-top: .45rem; color: var(--muted); font-size: .8rem; }
.archive-list__source { margin-top: .45rem; color: #7a8b9e; font-size: .66rem; }
.service-catalog { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; border: 1px solid var(--line); background: var(--line); }
.service-item { flex-direction: row; align-items: flex-start; gap: .65rem; min-height: 136px; }
.service-item > span:nth-child(2) { flex: 1; min-width: 0; }
.service-item > span:nth-child(2) strong, .service-item > span:nth-child(2) small { display: block; }
.service-item > span:nth-child(2) strong { font-size: .85rem; }
.service-item > span:nth-child(2) small { margin-top: .35rem; color: var(--muted); font-size: .65rem; line-height: 1.55; }
.service-item > .lucide:last-child { flex: 0 0 auto; width: 15px; color: #8a9cb0; }
.home-topic > span:not(.micro-label) { display: inline-flex; color: #a9c8f7; }
.home-topic > .lucide:last-child { position: absolute; top: 1.4rem; right: 1.4rem; color: #c1d5ee; }

/* 平板 */
@media (min-width: 640px) {
  .container { padding-inline: 1.5rem; }
  .demo-site-notice__inner { flex-wrap: nowrap; gap: .75rem; padding-block: .45rem; }
  .demo-site-notice p { flex: 1 1 auto; }
  .demo-site-notice strong, .demo-site-notice p span { display: inline; }
  .demo-site-notice strong { margin-right: .65rem; }
  .demo-site-notice a { margin-left: 0; }
  .header-ai { display: inline-flex; }
  .brand__en { font-size: .55rem; }
  .home-hero__eyebrow > span:last-child { display: inline; margin-left: auto; }
  .hero-gateway small { display: block; }
  .news-line__arrow { display: inline-flex; }
  .scene-grid, .one-thing-grid, .voice-grid, .report-grid, .quick-link-grid, .disclosure-pillars > .container, .disclosure-theme-grid, .data-catalog-grid, .request-notes, .boundary-grid, .prototype-grid, .design-principles { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .scene-card { min-height: 230px; }
  .policy-file { grid-template-columns: auto minmax(0,1fr) auto; }
  .policy-file__mark { display: flex; flex-direction: column; align-items: center; gap: .3rem; min-width: 54px; }
  .home-topics__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .news-feature-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .news-feature:first-child { grid-column: 1 / -1; }
  .news-feature:first-child .news-feature__media { aspect-ratio: 16 / 8; }
  .archive-toolbar { flex-direction: row; align-items: flex-end; justify-content: space-between; }
  .service-catalog { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .service-item { min-height: 126px; }
  .enterprise-support { grid-template-columns: 1fr 1fr; }
  .journey-steps, .interaction-steps, .request-process ol { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .park-service-story { grid-template-columns: 1fr 1fr; }
  .participation-links { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .park-grid, .topic-grid, .data-story-grid, .sitemap-grid, .request-channel-grid, .remedy-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .district-invest { flex-direction: row; align-items: center; justify-content: space-between; }
  .district-gallery { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .district-gallery__wide { grid-column: 1 / -1; min-height: 420px !important; }
  .blueprint-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .index-stat-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .disclosure-stats { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .disclosure-stats > div { flex-direction: column; align-items: flex-start; gap: .5rem; padding: 1rem; border-bottom: 0; }
  .disclosure-stats strong { min-width: 0; }
  .disclosure-service-links { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .annual-banner > .container { flex-direction: row; align-items: center; justify-content: space-between; }
  .annual-banner > .container > div:first-child { flex: 1; }
  .catalog-search__fields { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .guide-category-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .guide-channel-list { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .contact-list > div { grid-template-columns: 9rem minmax(0,1fr); gap: 1rem; }
  .request-elements { grid-template-columns: .85fr 1.15fr; }
  .request-agency { grid-template-columns: 1fr 1.2fr; }
  .guide-result-meta { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #material-service-form > div { grid-template-columns: 1fr auto; }
  .service-elements > div:last-child { grid-template-columns: repeat(5,minmax(0,1fr)); }
  .footer-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .site-toast { right: 1.5rem; bottom: 1.5rem; left: auto; max-width: 420px; }
}

/* 桌面 */
@media (min-width: 1024px) {
  body { padding-bottom: 0; }
  .container { padding-inline: 2rem; }
  .brand-row { min-height: 98px; }
  .brand__mark { width: 58px; height: 58px; }
  .brand__en { font-size: .6rem; }
  .desktop-nav { display: block; }
  .header-policy { display: inline-flex; }
  .header-actions [data-action="menu"] { display: none; }
  .nav-list { display: grid; grid-template-columns: .68fr 1fr 1.35fr 1fr 1fr .95fr 1fr 1fr; }
  .nav-item { justify-content: center; }
  .mega__inner { padding-inline: 0; }
  .home-hero { height: auto; min-height: 0; max-height: none; }
  .home-hero__layout { grid-template-columns: minmax(0,1.02fr) minmax(0,.98fr); align-items: center; gap: 3rem; min-height: 600px; padding-top: 3.5rem; padding-bottom: 2.5rem; }
  .home-hero .hero__title { font-size: clamp(3.8rem,5.3vw,5.25rem); }
  .home-hero__intro { font-size: 1rem; }
  .home-hero__visual { aspect-ratio: 4 / 3.25; }
  .home-hero__gateways { grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 0; transform: translateY(2.5rem); }
  .hero-gateway { flex-direction: row; align-items: center; min-height: 112px; padding: 1.35rem; }
  .hero-gateway__icon { flex: 0 0 auto; }
  .hero-gateway strong { font-size: 1.05rem; }
  .notice-line { padding-top: 2.5rem; }
  .notice-line__date { display: inline; }
  .home-news__grid { grid-template-columns: minmax(0,1.06fr) minmax(0,.94fr); gap: 3rem; }
  .home-news__list { padding: 1.5rem 1.75rem; }
  .ai-showcase__grid { grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); align-items: center; gap: 4rem; }
  .ai-demo-window__body { padding: 1.75rem; }
  .service-scenes__intro { grid-template-columns: 1fr 1fr; align-items: end; }
  .scene-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .policy-desk__grid { grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr); gap: 4rem; }
  .industry-explorer { grid-template-columns: minmax(0,1.4fr) minmax(320px,.8fr); align-items: center; gap: 3rem; }
  .industry-media { min-height: 0; aspect-ratio: 16 / 10; }
  .home-topics__grid { grid-template-columns: 1.35fr repeat(3,1fr); }
  .home-topic { min-height: 290px; }
  .channel-hero { padding-block: 2.75rem 3.5rem; }
  .channel-hero__inner { grid-template-columns: minmax(0,1fr) minmax(280px,380px); align-items: end; gap: 3rem; }
  .channel-hero__copy h1 { font-size: clamp(3.2rem,5vw,4.75rem); }
  .channel-hero__copy > p { font-size: 1rem; }
  .channel-nav__inner { padding-inline: 2rem; }
  .channel-nav a { padding-inline: 1.25rem; }
  .channel-intro__inner { grid-template-columns: 1fr 1.2fr auto; align-items: center; }
  .news-feature-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; }
  .news-feature:first-child { grid-column: auto; }
  .news-feature:first-child .news-feature__media { aspect-ratio: 16 / 10; }
  .news-feature h3 { font-size: 1.2rem; }
  .archive-list__item { grid-template-columns: 5.5rem minmax(0,1fr); gap: 1.5rem; padding-block: 1.5rem; }
  .archive-date strong { font-size: 1.8rem; }
  .archive-list__content h2 { font-size: 1.08rem; }
  .two-column-section { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 3rem; }
  .one-thing-grid, .voice-grid, .journey-steps, .interaction-steps, .request-process ol { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .service-catalog { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .service-item { min-height: 150px; padding: 1.25rem; }
  .service-item > span:nth-child(2) strong { font-size: .95rem; }
  .service-journey { padding-block: 5rem; }
  .service-journey__copy { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 2rem; }
  .interaction-feature-grid { grid-template-columns: 1.25fr .75fr; }
  .participation-links { grid-template-columns: 1fr; }
  .interview-demo { grid-template-columns: 1fr 1fr; align-items: center; }
  .quick-link-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .district-intro__grid { grid-template-columns: 1.15fr .85fr; gap: 4rem; }
  .park-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .district-gallery { grid-template-columns: 1.4fr 1fr 1fr; }
  .district-gallery__wide { grid-column: auto; min-height: 400px !important; }
  .topic-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .blueprint-grid { grid-template-columns: repeat(5,minmax(0,1fr)); }
  .data-index-grid { grid-template-columns: .85fr 1.15fr; align-items: center; gap: 4rem; }
  .data-catalog-grid, .data-story-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .disclosure-pillars > .container { grid-template-columns: repeat(4,minmax(0,1fr)); padding-block: 0; }
  .disclosure-overview { grid-template-columns: 1.25fr .75fr; gap: 3rem; }
  .disclosure-overview__report { padding: 2rem; }
  .disclosure-theme-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .disclosure-theme p { display: block; }
  .disclosure-service-grid { grid-template-columns: .85fr 1.15fr; }
  .directory-intro { grid-template-columns: 1fr auto; align-items: center; }
  .catalog-workspace { padding-block: 2.5rem 6rem; }
  .catalog-search { padding: 1.5rem; }
  .catalog-search__fields { grid-template-columns: 1.2fr 1fr 1fr .75fr 1fr auto; align-items: end; }
  .catalog-search__fields > .button { min-height: 46px; }
  .catalog-layout { grid-template-columns: 250px minmax(0,1fr); align-items: start; gap: 1.5rem; }
  .catalog-sidebar { position: sticky; top: 11rem; max-height: calc(100vh - 12rem); overflow-y: auto; }
  .disclosure-result { padding: 1.5rem; }
  .guide-layout { grid-template-columns: 240px minmax(0,1fr); align-items: start; gap: 2rem; }
  .reading-toc { position: sticky; top: 11rem; }
  .guide-section { padding: 2rem; }
  .request-channel-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .request-process { padding: 2rem; }
  .ai-app { grid-template-columns: 215px minmax(0,1fr); }
  .ai-app__tabs { flex-direction: column; overflow: visible; }
  .ai-app__tabs button { width: 100%; min-width: 0; min-height: 76px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.1); }
  .ai-app__tabs button small { display: inline; }
  .ai-panel { padding: 1.75rem; }
  .chat-layout { grid-template-columns: minmax(0,1fr) 250px; }
  .policy-match-layout { grid-template-columns: minmax(280px,.8fr) minmax(0,1.2fr); }
  .guide-demo-layout, .material-layout, .reader-layout { grid-template-columns: minmax(260px,.72fr) minmax(0,1.28fr); }
  .boundary-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .service-guide { grid-template-columns: 330px minmax(0,1fr); }
  .service-guide .guide-summary__meta { grid-template-columns: minmax(0,1fr); }
  .service-guide .guide-summary__meta div { grid-template-columns: 5rem minmax(0,1fr); }
  .service-guide .guide-summary__meta dd { line-height: 1.7; overflow-wrap: anywhere; }
  .guide-summary { align-self: start; position: sticky; top: 11rem; }
  .sitemap-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .design-principles { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .design-system { grid-template-columns: 1.3fr .7fr; align-items: center; padding: 2rem; }
  .prototype-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .contact-panel { grid-template-columns: 1fr auto; align-items: center; }
  .footer-main { grid-template-columns: .85fr 1.5fr; align-items: start; gap: 4rem; padding-block: 4.5rem 3rem; }
  .footer-grid { margin-top: 0; }
  .footer-demo-note { padding-right: 10rem; }
  .ai-float { display: inline-flex; }
  .back-top { bottom: 1.5rem; }
  .mobile-dock { display: none; }
}

@media (min-width: 1280px) {
  .brand__en { font-size: .68rem; }
  .brand__name { font-size: 1.65rem; }
  .nav-link { padding-inline: .55rem; font-size: 1rem; }
  .nav-toggle { min-width: 28px; width: 28px; }
  .home-hero__layout { gap: 4.5rem; min-height: 650px; }
  .home-hero__visual { aspect-ratio: 16 / 11; }
  .home-hero__caption { top: 1.5rem; left: 1.5rem; }
  .scene-grid { grid-template-columns: repeat(6,minmax(0,1fr)); }
  .scene-card { min-height: 250px; }
  .disclosure-theme-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .ai-app { grid-template-columns: 230px minmax(0,1fr); }
  .ai-panel { padding: 2rem; }
  .chat-layout { grid-template-columns: minmax(0,1fr) 280px; }
}

@media (min-width: 1024px) and (max-width: 1199px) {
  .brand__en { max-width: 29rem; font-size: .5rem; }
  .brand__name { font-size: 1.25rem; }
  .brand__mark { width: 50px; height: 50px; }
  .header-ai { padding-inline: .6rem; }
  .header-ai b { display: none; }
  .header-policy { margin-left: .15rem; padding-inline: .45rem; font-size: .75rem; }
  .nav-link { font-size: .82rem; }
  .nav-toggle { min-width: 22px; width: 22px; }
  .home-hero__layout { gap: 2rem; }
  .home-hero .hero__title { font-size: 3.65rem; }
  .hero-gateway { padding: 1rem; }
  .hero-gateway small { font-size: .62rem; }
  .catalog-search__fields { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .catalog-layout { grid-template-columns: 220px minmax(0,1fr); }
}

@media (max-width: 380px) {
  .container { padding-inline: 1rem; }
  .brand__name { font-size: .8rem; }
  .brand__mark { width: 40px; height: 40px; }
  .home-hero .hero__title { font-size: 2.25rem; }
  .hero-command button { padding-inline: .65rem; font-size: .76rem; }
  .hero-command input { font-size: .82rem; }
  .hero-gateway { padding: .9rem; }
  .hero-gateway strong { font-size: .9rem; }
  .section-heading h2 { font-size: 1.6rem; }
  .section-more { font-size: .72rem; }
  .service-item { padding: .8rem; }
  .service-item__icon { display: none; }
  .request-deadline { gap: .65rem; }
}

/* 显示偏好与打印 */
body.care-mode .home-hero { min-height: 0; }
body.care-mode .home-hero .hero__title { font-size: clamp(2.4rem,7vw,4rem); }
body.read-mode .home-hero__visual, body.read-mode .home-hero__grid, body.read-mode .channel-hero__grid,
body.read-mode .editorial-lead__media, body.read-mode .news-feature__media, body.read-mode .district-intro__image,
body.read-mode .district-gallery, body.read-mode .ai-showcase__orb { display: none; }
body.read-mode .home-hero, body.read-mode .channel-hero, body.read-mode .ai-showcase, body.read-mode .ai-boundary,
body.read-mode .service-journey, body.read-mode .section--dark { color: var(--ink); background: #fff; }
body.read-mode .home-hero__intro, body.read-mode .channel-hero__copy > p, body.read-mode .ai-showcase__copy > p,
body.read-mode .service-journey__copy p { color: var(--ink-muted); }
body.read-mode .home-hero__gateways { transform: none; }
body.read-mode .notice-line { padding-top: 0; }
body.high-contrast { --text: #000; --muted: #252525; --hairline: #555; --blue: #003fc4; --blue-dark: #002f91; }
body.high-contrast .tag, body.high-contrast .prototype-note { border: 1px solid currentColor; }
body.reduce-motion { scroll-behavior: auto; }
body.reduce-motion *, body.reduce-motion *::before, body.reduce-motion *::after { scroll-behavior: auto !important; }

@media (prefers-reduced-motion: reduce) {
  .home-hero .hero__slide, .home-topic img, .editorial-lead__media img { transition: none; }
}

@media print {
  .channel-hero, .channel-nav, .ai-float, .mobile-dock, .ai-app__tabs, .catalog-sidebar, .reading-toc, .back-top, .site-toast { display: none !important; }
  .ai-app, .catalog-layout, .guide-layout { display: block; border: 0; box-shadow: none; }
  .ai-panel[hidden] { display: none !important; }
  .article-content p:first-child::first-letter { float: none; font-size: inherit; }
  .service-elements, .disclosure-result, .guide-section { break-inside: avoid; }
}
