/* ==========================================================================
   Life Hub 资讯模块 — 与全站设计系统统一化调整（v1.0.158 QA pass）
   本文件此前使用了资讯模块自造的一套颜色（#092b5b 深藏青 / #d99a3e 金色）
   和圆角规则，未接入全站在 frontend.css :root 中定义的品牌 token。现按
   frontend.css 的规范统一：
     - 页面宽度  → var(--lhc-page-wide) / var(--lhc-page-max)（与住房、二手、
       资源库、学生指南等页面完全一致，最大 1320px，而不是资讯此前的 1600px）
     - 胶囊按钮/激活态 → var(--lhc-brand-action) 品牌蓝 + var(--lhc-brand-pill-radius)
       999px 胶囊圆角（与"查看详情""查看联系方式""发送验证邮件"等全站按钮同源）
     - 正文/标题颜色 → var(--lhc-ink-strong) / var(--lhc-muted)
     - 字体字号 → 保持原有 var(--lhc-type-*) token 引用不变（标题级 Georgia
       展示字体 + Manrope 正文字体，这部分此前已正确接入，未作改动）
   ========================================================================== */

.lhc-news-archive,
.lhc-news-detail {
	width: var(--lhc-page-wide, min(90vw, 1320px));
	max-width: var(--lhc-page-max, 1320px);
	margin: 0 auto;
	padding: 48px 0 80px;
	color: var(--lhc-ink-strong, #08182c);
}

/* 主视觉横幅：换成用户指定的这张"香港天际线 + 学生看平板"照片
   （news-hero-hk-students.webp），沿用与 content-pages.css 里
   .lhc-services-hero 完全同源的深藏青渐变蒙层公式、白色文字 + 投影。
   横幅本身此前是一张独立的圆角卡片，工具条（分类筛选 + 资讯列表/资讯详情/
   投稿入口）另起一行、悬空在卡片下方。现在横幅和工具条被包进同一个
   .lhc-news-hero-frame 容器里，背景框（圆角、投影）整体向下延伸把工具条也
   框进去，两者在视觉上合并成一张完整的卡片——照片部分只保留上方两个圆角，
   工具条部分带一层白底、只保留下方两个圆角，作为卡片底部的一条浅色footer。 */
.lhc-news-hero-frame {
	overflow: hidden;
	margin: 0 0 26px;
	border-radius: 16px;
	box-shadow: 0 18px 40px rgba(6, 36, 74, .12);
}

/* 这张照片本身左侧已经带了一层深藏青渐变（用于衬白色文字），如果再叠加
   一整套和"服务方案"页同样强度的蒙层（.64/.4/.14/.05 横向 + 180deg 纵向
   再压一层），两层暗部叠在一起，实测整张横幅明显偏暗。这里把蒙层强度降低
   一半左右，并去掉纵向的那层，只保留横向、给左侧文字兜底的最低限度对比度，
   右侧人像/天际线的画面亮度基本保持照片原样。

   v1.0.193：反馈"左侧区域还是感觉偏暗"——实测发现真正的暗部主要来自这张
   照片文件本身左侧就带的深藏青底色（不是上面这层 CSS 渐变叠加造成的，
   把渐变强度再砍一半，实测左侧像素几乎没有变化），而且当前白色文字在这
   片区域的对比度实测在 10:1～13:1 之间，远超 WCAG AAA 无障碍标准要求的
   7:1——也就是说对比度这块留了两倍多的冗余，有充足空间在不影响文字可读性
   的前提下把整体调亮。这里给横幅整体加一道 filter:brightness 提亮
   （只影响这张横幅，不影响下面工具条/网格卡片），实测提亮后左侧对比度仍
   保持在 8.9:1～11:1，依然稳稳超过 7:1 的门槛，视觉上不再显得沉闷。 */
.lhc-news-hero {
	position: relative;
	overflow: hidden;
	min-height: clamp(260px, 26vw, 360px);
	margin: 0;
	padding: clamp(36px, 5vw, 60px) clamp(28px, 4vw, 56px);
	border-radius: 0;
	background-image:
		linear-gradient(90deg, rgba(6, 36, 74, .32) 0%, rgba(6, 36, 74, .16) 45%, rgba(6, 36, 74, .04) 80%, rgba(6, 36, 74, 0) 100%),
		url("../images/news-hero-hk-students.webp");
	background-position: center;
	background-size: cover;
	filter: brightness(1.3);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.lhc-news-eyebrow {
	font: 700 var(--lhc-type-eyebrow-size, 12px)/1.4 var(--lhc-type-body-family, Arial, sans-serif);
	color: var(--lhc-brand-blue, #1687F8);
	letter-spacing: .14em;
	text-transform: uppercase;
}

/* 横幅内的 eyebrow 换成不透明徽标胶囊，对齐 .lhc-services-hero
   .lhc-home-v2__eyebrow 的写法，避免蓝色文字直接压在照片上难以辨认。 */
.lhc-news-hero .lhc-news-eyebrow {
	display: inline-flex;
	width: max-content;
	margin-bottom: 4px;
	padding: 6px 16px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .85);
	box-shadow: 0 12px 28px rgba(6, 36, 74, .16);
	color: var(--lhc-brand-blue-deep, #075fd8);
}

.lhc-news-hero h1 {
	max-width: 640px;
	margin: 12px 0 12px;
	font: var(--lhc-type-h1-size, clamp(36px, 3.3vw, 52px))/var(--lhc-type-h1-line-height, 1.1) var(--lhc-type-display-family, Georgia, serif);
	color: #fff;
	text-shadow: 0 4px 18px rgba(6, 36, 74, .4);
}

/* v1.0.180：这里之前直接复用了全站 --lhc-type-h1-size 这个 token（36-52px，
   随视口宽度变化），跟横幅大图里那个"营销主视觉"标题（.lhc-news-hero h1，
   同一个 token）用的是一模一样的尺寸。横幅标题是压在整张照片上的展示型
   大字，36-52px 合理；但这里是文章详情页正文区域里的标题，读者是来读
   文章内容的，不是来看主视觉的，同样的尺寸放在这里明显偏大、跟下面的
   摘要/正文比例失调。这里不改全站共用的 token（改了会连带影响住房、
   二手市场等其它页面复用同一个 token 的标题，动作太大），只在资讯详情页
   这一处单独把字号收到更适合阅读的区间——上限从 52px 降到 36px，下限从
   36px 降到 26px，字重不变（还是 Georgia 展示字体），视觉上仍然是这篇
   文章里最突出的一行字，但不再跟营销横幅抢戏。 */
.lhc-news-detail h1 {
	margin: 8px 0 12px;
	font: clamp(26px, 2.6vw, 36px)/var(--lhc-type-h1-line-height, 1.15) var(--lhc-type-display-family, Georgia, serif);
	color: var(--lhc-ink-strong, #08182c);
}

.lhc-news-hero p {
	max-width: 560px;
	margin: 0;
	color: rgba(255, 255, 255, .92);
	font: var(--lhc-type-body-size, 16px)/1.7 var(--lhc-type-body-family, Arial, sans-serif);
	text-shadow: 0 2px 12px rgba(6, 36, 74, .32);
}

/* 工具条：分类筛选（左）+ 资讯列表/资讯详情/投稿入口 子导航（右）并排放在
   横幅正下方——不再让子导航单独占一整行挤在顶部主导航下面。现在工具条是
   .lhc-news-hero-frame 这张卡片的下半截（白底、只保留下方圆角），和上半截
   的照片横幅共用同一个背景框，不再各自独立留白/悬空。 */
.lhc-news-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0;
	padding: 16px clamp(16px, 2.6vw, 28px);
	background: #fff;
}

.lhc-news-toolbar .lhc-news-filters {
	flex: 1 1 auto;
	margin: 0;
}

/* 分类筛选：圆角改为全站统一的 999px 胶囊（对齐 .lhc-listing-category-rail a
   与 :root 注释中明确点名的 "active filter chips"），激活态改为品牌蓝而非
   自定义深藏青。 */
.lhc-news-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	padding: 14px;
	background: var(--lhc-surface-soft, #f6f9ff);
	border: 1px solid #dce8f2;
	border-radius: 12px;
}

.lhc-news-filters a {
	padding: 9px 18px;
	background: #fff;
	border: 1px solid #dce8f2;
	border-radius: var(--lhc-brand-pill-radius, 999px);
	color: var(--lhc-muted, #49627b);
	text-decoration: none;
	font-size: 14px;
	font-weight: 600;
	transition: border-color 140ms ease, color 140ms ease, background 140ms ease;
}

.lhc-news-filters a:hover {
	border-color: var(--lhc-brand-blue, #1687F8);
	color: var(--lhc-brand-blue, #1687F8);
}

.lhc-news-filters a.is-active {
	border-color: var(--lhc-brand-action, var(--lhc-brand-blue, #1687F8));
	background: var(--lhc-brand-action, var(--lhc-brand-blue, #1687F8));
	color: #fff;
}

/* v1.0.181：这次反馈"资讯主页分块卡片标题还是偏大"，实际问题跟 v1.0.180
   收窄的那处不是同一个元素——v1.0.180 改的是 .lhc-news-card h2（下面网格里
   那些小卡片的标题），但首页顶部这张真正有标题/摘要内容、最显眼的"主推
   资讯"大卡片，用的是完全独立的 .lhc-news-featured 系列 class，此前 CSS
   里一行样式都没写过，等于一个裸 <article>：标题 <h2> 用的是浏览器默认字号
   （约 1.5em，换算下来接近 24px，还是加粗的默认字体，既没有用资讯模块统一
   的 Georgia 展示字体，也没有卡片的边框/圆角/图文布局），跟下面网格卡片
   刚调整过的 18px Georgia 标题完全不是一套东西，看上去自然还是偏大、也不
   协调。这里按 .lhc-news-card 同一套设计语言把整张主推卡片的版式（左图右
   文、卡片边框/圆角/阴影）补齐，标题字号定在 22px——比网格小卡片的 18px
   大一档（主推位本来就该比普通卡片更突出一点），但远小于浏览器默认的
   24px 起步而且不再无限往大了跑，也没有去碰全站共用的字号变量。 */
.lhc-news-featured {
	display: flex;
	flex-wrap: wrap;
	overflow: hidden;
	margin: 0 0 18px;
	border: 1px solid #dce8f2;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 12px 28px rgba(9, 43, 91, .08);
}

/* v1.0.187：反馈"主推资讯这个大卡片区块太空、太高"——量了一下实际渲染
   尺寸，问题出在配图这一列：flex:1 1 320px 会跟着页面变宽持续长大，宽度
   长到 700px 左右时，4:3 的高宽比换算出来接近 525px 高，比右边文字区
   （标题+摘要+日期，实际只需要约 380px）足足高出 140 多像素——文字区跟
   图片区在同一个 flex 行里默认互相"拉伸对齐"，缺口全变成了文字上下的大
   片留白，配图本身也被拉得又高又空。这里把高宽比从偏方正的 4:3 换成更
   舒展的 16:9（编辑类"主推文章"配图的常见比例），并加一道 max-height 兜底，
   这样配图不会再随着页面变宽无限增高，留白也降到了可以接受的范围内，
   同时保留了图文比例协调的观感。 */
.lhc-news-featured__image {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 320px;
	aspect-ratio: 16 / 9;
	max-height: 340px;
	background: #eaf3fb;
	overflow: hidden;
}

.lhc-news-featured__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lhc-news-featured__copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex: 1 1 360px;
	padding: 24px clamp(20px, 2.6vw, 32px);
}

.lhc-news-featured__copy .lhc-news-tag {
	align-self: flex-start;
}

.lhc-news-featured h2 {
	margin: 12px 0 10px;
	font: 22px/1.35 var(--lhc-type-display-family, Georgia, serif);
}

.lhc-news-featured h2 a {
	color: var(--lhc-ink-strong, #08182c);
	text-decoration: none;
}

.lhc-news-featured p {
	margin: 0;
	color: var(--lhc-muted, #5c6b7a);
	font: var(--lhc-type-body-size, 15px)/1.65 var(--lhc-type-body-family, Arial, sans-serif);
}

.lhc-news-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.lhc-news-card {
	overflow: hidden;
	border: 1px solid #dce8f2;
	border-radius: 10px;
	background: #fff;
	transition: transform .2s, box-shadow .2s;
}

.lhc-news-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 28px rgba(9, 43, 91, .1);
}

.lhc-news-card__image {
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 4 / 3;
	background: #eaf3fb;
	overflow: hidden;
}

.lhc-news-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lhc-news-card__body {
	padding: 16px 18px 18px;
}

/* 分类标签：改为全站徽标/标签统一的 999px 胶囊（对齐 .lhc-listing-badges span /
   .lhc-resource-card__badges span / .lhc-chip 家族），此前是 6px 圆角矩形。 */
.lhc-news-tag {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 3px 10px;
	border-radius: 999px;
	background: #e8f3ff;
	color: var(--lhc-brand-blue-deep, #075fd8);
	font-size: 12px;
	font-weight: 700;
}

/* v1.0.180：这里之前也是直接用全站 --lhc-type-h3-size（固定 20px）。这个
   token 本身给一般卡片标题用是合理的，但资讯列表卡片下面配的摘要文字只有
   13px（.lhc-news-card p），20px 的 Georgia 衬线标题跟 13px 的正文放在一
   起，尺寸落差偏大，标题显得过于突出。这里也不改全站 token（同样会连带
   影响其它复用它的卡片标题），只在资讯卡片这一处单独收到 18px，跟下面的
   摘要文字比例更协调，也还在"卡片标题"该有的常见尺寸区间内，不会显得
   小气。 */
.lhc-news-card h2 {
	margin: 10px 0 8px;
	font: 18px/var(--lhc-type-h3-line-height, 1.35) var(--lhc-type-display-family, Georgia, serif);
}

.lhc-news-card h2 a {
	color: var(--lhc-ink-strong, #08182c);
	text-decoration: none;
}

.lhc-news-card p {
	min-height: 3.2em;
	margin: 0;
	color: var(--lhc-muted, #5c6b7a);
	font: var(--lhc-type-small-size, 13px)/1.6 var(--lhc-type-body-family, Arial, sans-serif);
}

.lhc-news-card__foot {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	margin-top: 18px;
	font-size: 13px;
}

.lhc-news-card__foot time {
	color: #8a99a9;
}

.lhc-news-card__foot a,
.lhc-news-back {
	color: var(--lhc-brand-blue, #1687F8);
	text-decoration: none;
	font-weight: 700;
}

.lhc-news-pagination {
	margin: 34px 0 0;
}

.lhc-news-pagination ul {
	display: flex;
	justify-content: center;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.lhc-news-pagination a,
.lhc-news-pagination span {
	display: inline-block;
	padding: 8px 13px;
	border: 1px solid #dce8f2;
	border-radius: 7px;
	text-decoration: none;
	color: var(--lhc-ink-strong, #08182c);
}

.lhc-news-pagination a:hover {
	border-color: var(--lhc-brand-blue, #1687F8);
	color: var(--lhc-brand-blue, #1687F8);
}

.lhc-news-pagination .current {
	background: var(--lhc-brand-action, var(--lhc-brand-blue, #1687F8));
	border-color: var(--lhc-brand-action, var(--lhc-brand-blue, #1687F8));
	color: #fff;
}

.lhc-news-detail {
	max-width: 900px;
}

.lhc-news-detail h1 {
	margin-top: 20px;
}

/* 摘要/引言左边框：原先用金色（#d99a3e，全站唯一出现在无障碍焦点环上的颜色），
   改为品牌蓝，避免引入调色板之外的第三种品牌色。 */
.lhc-news-lead {
	padding-left: 18px;
	border-left: 3px solid var(--lhc-brand-blue, #1687F8);
	color: var(--lhc-muted, #5c6b7a);
	font-size: 18px;
	line-height: 1.7;
}

/* v1.0.190：反馈"详情页顶部封面图全屏显示"——一开始按"撑满正文栏宽度是
   常见头图手法"处理，只加了个 max-height 兜底；后来确认反馈的真实意思是
   标题/导语之后这张图占满了刚打开页面时的整个可视区域，人还没读到正文就
   先看到一整块很大的图，希望做成跟正文里"插入到正文"配图（.lhc-inline-
   image）一样克制、压缩的固定尺寸——这两张图现在统一按同一套尺寸限制处理
   （max-width:640px、居中），封面图不再撑满整个正文栏，视觉分量跟正文配图
   一致，不会在打开文章的第一屏就被图片占满。 */
.lhc-news-detail-cover {
	margin: 24px auto;
	max-width: 640px;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 12px;
	background: #eaf3fb;
}

.lhc-news-detail-cover img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lhc-news-content {
	color: var(--lhc-ink, #354d66);
	font: var(--lhc-type-body-size, 16px)/1.75 var(--lhc-type-body-family, Arial, sans-serif);
}

.lhc-news-content h2 {
	margin-top: 34px;
	color: var(--lhc-ink-strong, #08182c);
	font: var(--lhc-type-h2-size, clamp(24px, 2.1vw, 30px))/var(--lhc-type-h2-line-height, 1.25) var(--lhc-type-display-family, Georgia, serif);
}

.lhc-news-content img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

/* 通过"插入到正文"按钮放进文章里的配图，统一固定尺寸显示，不会跟着每张
   图片的原始尺寸忽大忽小——这条规则比上面 .lhc-news-content img 更具体，
   会覆盖掉宽度自适应的写法。
   v1.0.170 及之前用的是 220×165（缩略图那个尺寸，跟上传区选图用的缩略图
   保持一致），实际发布出来看，正文（.lhc-news-detail 最宽 900px）里这么
   小一张图跟周围一整段文字放在一起，比例明显偏小、不协调，这次改成占正文
   宽度大部分的整块图片（不再和文字同行内嵌，改成独占一行，前后有间距，
   更接近常见资讯网站的配图排版），宽度顶到正文实际最大宽度附近
   （640px，比 900px 的正文栏略窄，两侧留一点呼吸空间，不会顶到边），
   高度按 3:2 裁切，看起来比之前的小图协调得多。 */
.lhc-news-content img.lhc-inline-image {
	display: block;
	width: 100%;
	max-width: 640px;
	aspect-ratio: 3 / 2;
	height: auto;
	object-fit: cover;
	border-radius: 10px;
	border: 1px solid #d5e0e8;
	background: #f6f9fb;
	margin: 20px auto;
}

.lhc-news-source {
	padding: 14px 16px;
	border: 1px solid #dce8f2;
	border-radius: 9px;
	background: var(--lhc-surface-soft, #f6f9ff);
	font-size: 14px;
}

.lhc-news-source a {
	overflow-wrap: anywhere;
	color: var(--lhc-brand-blue, #1687F8);
}

/* v1.0.188：资讯还没有配图时，主推卡片这块图片位只有一行"资讯配图"纯文字，
   跟旁边真的配了图的卡片摆在一起，很容易被当成没做完的半成品。这次不去
   自动生成一张千篇一律的默认图（多篇资讯撞同一张图反而显得敷衍），而是
   把这个占位状态本身做得更像一个"有意为之的等待态"：加一个简单的图片
   图标、文字改成说明"等待配图"而不是干巴巴的名词，颜色也从纯黑改成跟
   背景色系配套的浅蓝灰，跟旁边卡片的实拍图区分开、但不显得像故障。管理
   员在后台"封面图片"字段补上真实图片后，这个占位状态会自动被替换掉。 */
.lhc-news-image-placeholder__label {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	max-width: 70%;
	color: #7897b8;
	font: 600 var(--lhc-type-small-size, 13px)/1.5 var(--lhc-type-body-family, Arial, sans-serif);
	text-align: center;
}

.lhc-news-image-placeholder__label::before {
	display: block;
	width: 34px;
	height: 34px;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237897b8' stroke-width='1.6'><rect x='2' y='4' width='20' height='16' rx='2.5'/><circle cx='8' cy='9.5' r='1.6' fill='%237897b8' stroke='none'/><path d='M4 17l5-5 4 4 3-3 4 4' stroke-linecap='round' stroke-linejoin='round'/></svg>");
	background-repeat: no-repeat;
	background-size: contain;
	opacity: .8;
	content: "";
}

.lhc-news-empty {
	padding: 50px 24px;
	text-align: center;
	border: 1px solid #dce8f2;
	border-radius: 12px;
	background: #f7fbff;
}

.lhc-news-empty h1,
.lhc-news-empty h2 {
	font-family: var(--lhc-type-display-family, Georgia, serif);
	color: var(--lhc-ink-strong, #08182c);
}

.lhc-news-empty p {
	color: var(--lhc-muted, #5c6b7a);
}

/* 平板断点：与全站 --lhc-page-wide-tablet（calc(100vw - 48px)）在 1100px
   收窄的规则统一，并让三列卡片先降为两列（原文件在 1100px 完全没有处理，
   720px 以上会直接保持三列挤压变形）。 */
@media (max-width: 1100px) {
	.lhc-news-archive,
	.lhc-news-detail {
		width: var(--lhc-page-wide-tablet, calc(100vw - 48px));
	}

	.lhc-news-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* 手机断点：与全站 --lhc-page-wide-mobile（calc(100vw - 28px)）在 480px
   收窄的规则统一（原文件用的是 720px 且未引用 token，与住房/二手/资源库等
   页面在 480–720px 区间的留白宽度不一致）。 */
@media (max-width: 480px) {
	.lhc-news-archive,
	.lhc-news-detail {
		width: var(--lhc-page-wide-mobile, calc(100vw - 28px));
		padding: 36px 0 60px;
	}

	.lhc-news-grid {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.lhc-news-hero-frame {
		margin-bottom: 20px;
	}

	.lhc-news-hero {
		min-height: 0;
	}

	.lhc-news-toolbar {
		flex-direction: column;
		align-items: stretch;
	}

	.lhc-news-filters {
		flex-wrap: nowrap;
		overflow: auto;
	}

	.lhc-news-filters a {
		white-space: nowrap;
	}

	.lhc-news-lead {
		font-size: 16px;
	}
}

/* ==========================================================================
   投稿资讯页面
   ========================================================================== */

.lhc-news-submit {
	width: var(--lhc-page-wide, min(90vw, 1320px));
	max-width: var(--lhc-page-max, 1320px);
	margin: 0 auto;
	padding: 48px 0 80px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: 26px;
}

.lhc-news-submit__main,
.lhc-news-submit__aside {
	padding: 26px;
	border: 1px solid #dce8f2;
	border-radius: 12px;
	background: #fff;
}

/* 投稿页标题此前直接沿用首页级横幅标题的字号 + 展示衬线字体
   （--lhc-type-h1-size，clamp(36px,3.3vw,52px) + Georgia/CJK 衬线兜底字体），
   在这种紧凑的表单卡片里显得过大，而且纯中文标题落到 CJK 衬线兜底字体
   （NSimSun/宋体等）上，和 eyebrow、说明文字、表单标签等全部使用的无衬线
   正文字体（--lhc-type-body-family）反差很大，视觉上像两种字体拼在一起。
   这里改用与站内"发布房源信息"等投稿类表单页标题同规格的写法——字体统一
   为无衬线正文字体，和页面里其它文字一致。上一版字号（h2 规格 24–30px）+
   800 字重实测仍偏大偏重，这里再降一档到固定 22px，字重从 800 降到 600，
   不再是"加粗"的观感，和下面 eyebrow、说明文字之间的落差也小了很多。 */
.lhc-news-submit h1 {
	margin: 8px 0 10px;
	font-family: var(--lhc-type-body-family, Arial, sans-serif);
	font-size: 22px;
	font-weight: 600;
	line-height: 1.3;
	color: var(--lhc-ink-strong, #08182c);
}

/* 顶部说明文字之前没有单独设定字号，继承了主题正文段落的字号（18px），
   看起来比表单本身的字段还显眼。这里收到网站正文标准字号，观感上退为
   辅助说明文字，不再抢表单的注意力。 */
.lhc-news-submit__intro {
	font-size: var(--lhc-type-body-size, 16px);
	line-height: 1.6;
	color: var(--lhc-muted, #5c6b7a);
}

/* 表单字段标签（资讯分类/标题/摘要/正文/配图/投稿邮箱/邮箱验证码……）此前
   没有单独设定字号，直接继承了主题正文段落的 18px，配合 700 字重，在一份
   紧凑表单里显得又大又重。这里显式收到 14px + 600 字重，和输入框本身的
   文字大小（inherit，同样是表单默认字号）区分得开，但不会重到抢标题风头。 */
.lhc-news-form label {
	display: block;
	margin: 18px 0;
	color: var(--lhc-ink, #193452);
	font-size: 14px;
	font-weight: 600;
}

/* 这几个字段（资讯分类下拉、标题、摘要）此前用 font:inherit 直接继承父级
   <label> 的字体设定，label 字重调过之后（600）连带把输入框里录入的文字也
   带成了 600 字重，看起来和其它正文一样"偏粗"。这里显式把字重收回 400
   （常规），字号/字体仍然继承 label 的设置，不需要重复声明。 */
/* v1.0.177：这里之前没有声明 box-sizing，如果站点主题没有全局把
   box-sizing 统一成 border-box（不能保证一定有，取决于主题），浏览器默认
   的 content-box 就会让 width:100% 只是"内容区"的 100%，两侧 11px 内边距
   + 1px 边框会另外再加出来、撑破格子本身的宽度——分类/标题/作者这种窄
   格子挨在一起时，撑出来的部分会跟相邻格子的输入框边框叠在一起，看着
   像"两个框叠在一起"。这里显式声明 border-box，宽度里包含内边距和边框，
   不会再撑出格子边界。 */
.lhc-news-form input[type="text"],
.lhc-news-form input[type="email"],
.lhc-news-form input[type="file"],
.lhc-news-form select,
.lhc-news-form textarea {
	display: block;
	width: 100%;
	margin-top: 6px;
	padding: 11px;
	border: 1px solid #bdccda;
	border-radius: 6px;
	background: #fff;
	font: inherit;
	font-weight: 400;
	box-sizing: border-box;
}

.lhc-news-form input:focus,
.lhc-news-form select:focus,
.lhc-news-form textarea:focus {
	outline: none;
	border-color: var(--lhc-brand-blue, #1687F8);
	box-shadow: 0 0 0 3px rgba(22, 135, 248, .15);
}

/* v1.0.174：这里之前没有单独设定字号，small 标签就直接继承了主题正文
   段落的字号（跟上面 label 那条注释提到的问题是同一个根源），配图区
   提示语、Ctrl+V 粘贴提示看起来跟"小字备注"该有的样子不符、偏大。这里
   显式收到 13px，比表单正文（inherit，约 15-16px）和 label（14px）都
   更小一档，符合"辅助说明文字"该有的视觉层级。 */
.lhc-news-form small {
	display: block;
	margin-top: 6px;
	color: var(--lhc-muted, #5c6b7a);
	font-size: 13px;
	font-weight: 400;
}

.lhc-news-form__two {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
}

/* v1.0.173：分类/标题这一行需要多加一栏"作者"，直接复用 .lhc-news-form__two
   的两栏均分网格布局，加这个修饰类把它变成三栏。手机端沿用下面已有的
   "@media (max-width:480px) .lhc-news-form__two { grid-template-columns:1fr }"
   规则收成单栏，不需要重复声明。
   v1.0.176：三栏原来是均分（1fr 1fr 1fr），但"资讯分类"是从下拉选项里选
   （最长的选项也就四五个字）、"作者"通常也就是个人名，均分反而让这两栏
   比实际需要的宽很多；"标题"最长可以写到 180 字，理应分到更多空间。这里
   改成 1:2:1 的比例，分类和作者各占一份、标题占两份。
   v1.0.177：用 fr 比例这种"相对宽度"不太好控制"作者到底应该多窄"，而且
   跟标题这栏抢空间。这里换成"分类、作者给固定的宽度上限，标题吃掉剩下的
   全部空间"这种写法——分类最多 150px、作者最多 120px（比分类更窄，配合
   下面缩略图/表单其它字段收窄这一整体思路），标题用 minmax(0,1fr) 占满
   剩下的所有宽度，不用再跟另外两栏按比例分。 */
.lhc-news-form__three {
	grid-template-columns: minmax(0, 150px) minmax(0, 1fr) minmax(0, 120px);
}

/* v1.0.173：投稿邮箱 + 验证码这一行此前跟"资讯分类/标题"共用同一套两栏
   均分网格，邮箱框和验证码框都被拉伸到跟标题输入框一样宽——邮箱其实用不着
   占满半个表单，验证码更是只需要 6 位数字，输入框做得太宽，"发送验证码"
   按钮也就被推到很靠右的位置。这里单独加一个修饰类，把这一行两栏改成
   "按内容大小走"而不是均分铺满，并且不再拉伸到跟整行一样宽，靠左紧凑
   排列，配合下面 .lhc-news-code input 的收窄，让按钮跟着往左靠。
   v1.0.178：这一行三个元素——投稿邮箱输入框、验证码输入框、"发送验证码"
   按钮——之前是三处各自独立的规则在分别决定高度：验证码输入框和按钮靠
   下面 .lhc-news-code 的固定高度对齐了彼此，但投稿邮箱输入框完全没有
   参与那套机制，还是用表单通用的 padding:11px 撑出来的高度，天然就比
   固定高度的那两个高一截，三个凑在一起还是一个高两个矮，对不齐。这里在
   这一行的容器上定义一个共用的高度变量，投稿邮箱输入框和下面的
   .lhc-news-code（验证码输入框+按钮）都改成引用这同一个变量——以后只
   有一个数字要改，不会再有某个元素被漏掉、单独跟其它两个不一样高。 */
.lhc-news-form__two--contact {
	--lhc-contact-row-height: 36px;
	grid-template-columns: minmax(0, 260px) minmax(0, 200px);
	justify-content: start;
	gap: 12px;
}

.lhc-news-form__two--contact input[type="email"] {
	width: 100%;
	height: var(--lhc-contact-row-height);
	padding: 0 11px;
	box-sizing: border-box;
}

/* "配图"这块改成和住房/找室友/二手投稿表单同一套上传控件：真正的
   <input type="file"> 铺满整个方框、透明不可见（opacity:0），下面露出来的
   是一个可点击的"+"虚线方框，选好图片后 submit-preview.js 会在方框里插入
   本地缩略图预览（还没真的上传，提交审核时才上传）。*/
.lhc-news-form__images {
	margin: 18px 0;
}

.lhc-news-form__images > label:first-child {
	display: block;
	margin: 0 0 6px;
	color: var(--lhc-ink, #193452);
	font-size: 14px;
	font-weight: 600;
}

.lhc-news-form .lhc-marketplace-upload {
	position: relative;
	min-width: 0;
}

.lhc-news-form .lhc-marketplace-upload input[type="file"] {
	position: absolute;
	inset: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	opacity: 0;
	cursor: pointer;
}

/* v1.0.170 那次修复（在缩略图的 click 上调用 preventDefault()）没能真正解决
   "点缩略图又弹出打开文件窗口"这个问题，回头重新排查才发现真正原因不在
   JS、而在这里：这个隐形的文件选择 input 用 inset:0 铺满 .lhc-marketplace-
   upload 这个外层容器，而 dropzone 里选好图后会把预览缩略图直接插进去（见
   submit-preview.js 的 dropzone.appendChild(preview)），dropzone 长高多少，
   这个铺满容器的隐形 input 就跟着长高多少——加上它的 z-index（2）本来就设
   得比 dropzone（1）高，所以缩略图这块区域从一开始就被这个隐形 input 完整
   盖住了。鼠标真实点在缩略图上，浏览器按屏幕坐标做碰撞检测时，实际点中的
   一直是这个隐形 input（直接触发它自己原生的"弹出选择文件窗口"），缩略图
   上绑的点击事件根本没机会收到这次点击——这也是为什么上一版在 <img> 的
   click 里加 preventDefault() 完全不起作用，因为事件从来没传到 <img> 上过。
   之前几次用程序模拟点击（dispatchEvent 直接对着 <img> 元素发)做的测试，
   都是直接指定目标元素、不走真实的屏幕坐标碰撞检测，所以一直没能测出这个
   问题——这是这次投稿资讯这几轮修复里，第三次因为"程序模拟点击不能代替
   真实点击"而漏掉的问题，教训很清楚：凡是这类"点击是否被别的元素挡住"的
   bug，必须用真实坐标点击 + elementFromPoint()/getBoundingClientRect() 这类
   基于真实碰撞检测的方法验证，不能只用程序模拟事件。
   真正的修法：一旦已经选好图、缩略图预览已经渲染出来（.has-lhc-upload-
   preview 这个 class 出现），就把这个隐形 input 自己的 pointer-events 关掉，
   不再让它拦截这片区域的点击——这样缩略图才能真正收到点击。只针对资讯投稿
   页（.lhc-news-form）生效，不影响住房/找室友/二手市场这几个共用同一段
   预览脚本、但没有"点缩略图选中"这个功能、仍然需要"点预览区域重新打开
   选择框"这个行为的页面。 */
.lhc-news-form .lhc-marketplace-upload.has-lhc-upload-preview input[type="file"] {
	pointer-events: none;
}

/* 隐形 input 关闭拦截之后，资讯投稿页原本"点预览区域可以重新打开选择框、
   继续追加图片"这个操作方式就用不了了（这本来就是要付出的代价——不这样做，
   缩略图没法真正被点中选中）。这里补一个显式的"继续添加图片"按钮
   （news-submit.js 里渲染，点击时调用 input.click()，效果和原来"点预览区域"
   完全一样：新选的图会累加，不会清空已选的），把这个操作找补回来。 */
.lhc-news-upload-add-more {
	padding: 5px 10px;
	border: 1px solid #9fb4c6;
	border-radius: var(--lhc-brand-pill-radius, 999px);
	background: #fff;
	color: var(--lhc-ink, #193452);
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
	transition: border-color 140ms ease;
}

.lhc-news-upload-add-more:hover {
	border-color: var(--lhc-brand-blue, #1687F8);
}

.lhc-news-form .lhc-marketplace-upload__dropzone {
	position: relative;
	z-index: 1;
	display: grid;
	align-content: center;
	justify-items: center;
	gap: 6px;
	min-height: 120px;
	padding: 18px;
	border: 1px dashed #bdccda;
	border-radius: 10px;
	background: #f8fafc;
	text-align: center;
	margin: 0;
}

.lhc-news-form .lhc-marketplace-upload__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: rgba(22, 135, 248, .12);
	color: var(--lhc-brand-blue, #1687F8);
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
}

.lhc-news-form .lhc-marketplace-upload__title {
	color: var(--lhc-ink, #193452);
	font-size: 14px;
	font-weight: 600;
}

.lhc-news-form .lhc-marketplace-upload__action {
	color: var(--lhc-brand-blue, #1687F8);
	font-size: 13px;
	font-weight: 600;
}

.lhc-news-form .lhc-marketplace-upload.has-lhc-upload-preview .lhc-marketplace-upload__icon,
.lhc-news-form .lhc-marketplace-upload.has-lhc-upload-preview .lhc-marketplace-upload__title,
.lhc-news-form .lhc-marketplace-upload.has-lhc-upload-preview .lhc-marketplace-upload__action {
	display: none;
}

.lhc-news-form .lhc-marketplace-upload__preview {
	display: grid;
	justify-items: center;
	gap: 9px;
	width: 100%;
	/* 这条 pointer-events:none 是这一版之前就有的老规则（原本合理：不
	   影响它下面 z-index 更高的隐形文件选择 input 接收点击）。v1.0.171
	   只解决了"隐形 input 挡住缩略图"这一半问题（见上面 .has-lhc-upload-
	   preview input[type="file"] 那条规则），但漏了这一条——pointer-
	   events:none 会连带让它所有子元素（包括缩略图 <img>）也一起失去
	   点击响应，除非子元素自己显式声明 pointer-events:auto 找补回来。
	   之前只顾着处理 input，没注意到这条本来就存在的规则本身也在拦着
	   缩略图，是 v1.0.171 那次没有真正修好的原因。缩略图那条规则里已经
	   加上 pointer-events:auto 单独找补回来了（见下面 .lhc-marketplace-
	   upload__thumbs img），这条规则本身不用改，继续保留对状态文字等其它
	   预览内容的"点击穿透"效果。 */
	pointer-events: none;
}

.lhc-news-form .lhc-marketplace-upload__status {
	margin: 0;
	color: #16745c;
	font-size: 13px;
	font-weight: 600;
}

.lhc-news-form .lhc-marketplace-upload__thumbs {
	display: grid;
	grid-template-columns: repeat(6, 64px);
	gap: 8px;
	justify-content: center;
}

.lhc-news-form .lhc-marketplace-upload__thumbs img {
	display: block;
	width: 64px;
	height: 64px;
	border: 2px solid #d5e0e8;
	border-radius: 6px;
	object-fit: cover;
	background: #fff;
	cursor: pointer;
	box-sizing: border-box;
	transition: border-color 140ms ease, box-shadow 140ms ease;
	/* 找补回上面 .lhc-marketplace-upload__preview 那条 pointer-events:none
	   ——缩略图是它的子元素，不单独声明 auto 的话会连带失去点击响应，这正是
	   v1.0.171 上线后"缩略图还是点不中"的真正原因（用真实浏览器
	   elementFromPoint() 在生产环境直接验证过：改之前点在缩略图上，实际
	   命中的是外层的 <label> 元素，不是缩略图本身；加上这一行之后命中的
	   就是缩略图自己了）。 */
	pointer-events: auto;
}

.lhc-news-form .lhc-marketplace-upload__thumbs img:hover {
	border-color: #9fc4ee;
}

/* 点击选中的那张缩略图——同一时间只能选中一张（见 news-submit.js 的
   initImageInsert()），选中的这张带高亮边框，方便确认接下来点"插入到
   正文"会用的是哪一张。 */
.lhc-news-form .lhc-marketplace-upload__thumbs img.is-selected {
	border-color: var(--lhc-brand-blue, #1687F8);
	box-shadow: 0 0 0 2px rgba(22, 135, 248, .25);
}

/* 缩略图下面：一句操作提示 + 一个统一的"插入到正文"按钮（不再是每张图
   一个按钮）——先点一张缩略图选中，把光标点到正文里想放图片的位置，再
   点这一个按钮，就把选中的图放进光标处（见 news-submit.js 的
   initImageInsert()）。放在预览方框外面单独一块，不挡住上面的缩略图。 */
.lhc-news-upload-inserts:not(:empty) {
	margin-top: 8px;
}

.lhc-news-upload-select-hint {
	margin: 0 0 6px;
	color: #6b7c8d;
	font-size: 12px;
	line-height: 1.5;
}

.lhc-news-upload-insert {
	padding: 5px 10px;
	border: 1px solid var(--lhc-brand-blue, #1687F8);
	border-radius: var(--lhc-brand-pill-radius, 999px);
	background: #fff;
	color: var(--lhc-brand-blue-deep, #075fd8);
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
	transition: background 140ms ease;
}

.lhc-news-upload-insert:hover {
	background: rgba(22, 135, 248, .08);
}

.lhc-news-upload-insert:disabled {
	border-color: #d5e0e8;
	background: #f6f9fb;
	color: #9fb0c0;
	cursor: not-allowed;
}

/* 累加选图达到 2 张及以上时才出现的"清空已选图片，重新选择"按钮，跟
   "插入到正文"按钮区分开（灰色系而不是品牌蓝），换行单独一行，避免
   跟一排蓝色的插入按钮混在一起被误点。 */
.lhc-news-upload-clear {
	display: block;
	margin-top: 8px;
	padding: 0;
	border: 0;
	background: none;
	color: #6b7c8d;
	font-size: 12px;
	font-weight: 600;
	text-decoration: underline;
	cursor: pointer;
}

.lhc-news-upload-clear:hover {
	color: #3a4a5a;
}

@media (max-width: 560px) {
	.lhc-news-form .lhc-marketplace-upload__thumbs {
		grid-template-columns: repeat(4, 56px);
	}

	.lhc-news-form .lhc-marketplace-upload__thumbs img {
		width: 56px;
		height: 56px;
	}
}

/* v1.0.176：之前只给了 gap，没有固定这一行的高度，验证码输入框（继承
   表单通用输入框的 padding:11px）和"发送验证码"按钮（各版本调过的内边距/
   字号）各自算出来的高度对不上，两者拼在一起总是一高一矮。这里给整行
   固定一个高度，输入框和按钮都显式设成 box-sizing:border-box + height:
   100%，两个的实际高度就是同一个数字，不会再对不齐。
   v1.0.177：40px 配上按钮 999px 的胶囊圆角，反馈还是显得偏高，这里再收
   到 36px——跟旁边验证码输入框的字号（inherit，约 15px）加一点内边距
   比较匹配的一个高度。
   v1.0.178：这里原来是单独写死的 36px，跟左边投稿邮箱输入框的高度是两个
   不相关的数字——投稿邮箱那边只要改一次没跟着改，两边就又会对不齐。改成
   引用 .lhc-news-form__two--contact 上定义的共用变量，两边永远是同一个
   数字。 */
.lhc-news-code {
	display: flex;
	align-items: stretch;
	gap: 6px;
	height: var(--lhc-contact-row-height, 36px);
}

.lhc-news-code input,
.lhc-news-code .button {
	box-sizing: border-box;
	height: 100%;
}

/* v1.0.173：验证码最多只有 6 位数字，之前用 flex:1 让输入框撑满这一整行
   剩余空间，导致框比实际需要的宽很多，"发送验证码"按钮也被顶到很靠右的
   位置。这里改成固定的小宽度（够放 6 位数字加一点内边距），按钮紧跟在
   输入框右边，视觉上自然往左靠、更紧凑。v1.0.176：行高已经固定，这里的
   上下内边距不再需要（会跟固定高度打架），改成只保留左右内边距。 */
.lhc-news-code input {
	min-width: 0;
	flex: 0 0 84px;
	width: 84px;
	padding: 0 10px;
}

/* v1.0.174：这条按钮之前没有单独覆盖高度/内边距，直接继承了下面
   .lhc-news-form .button 给"提交审核"这种主按钮准备的 min-height:44px +
   padding:10px 20px——文字只有"发送验证码"四个字、按钮本身又窄（贴着
   84px 宽的验证码输入框），配合 999px 的胶囊圆角，视觉上显得又高又圆、
   比例失调。v1.0.176：高度已经通过上面的 height:100% 跟输入框强制对齐，
   这里进一步收窄左右内边距、字号也再降一档，配合 inline-flex 居中文字，
   按钮整体更窄、不再显得比旁边的框宽出一大截。 */
.lhc-news-code .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-height: 0;
	padding: 0 10px;
	font-size: 12px;
	white-space: nowrap;
}

/* "发送验证码"的结果提示：不再顶到页面上方的大提示条，而是紧贴在按钮
   下方，短短显示几秒后自动淡出（is-visible 由 news-submit.js 控制增删）。
   默认收起（max-height:0 + opacity:0），避免撑开布局；出现时才展开高度。 */
.lhc-news-code-feedback {
	display: block;
	margin-top: 0;
	max-height: 0;
	overflow: hidden;
	font-size: 13px;
	line-height: 1.5;
	opacity: 0;
	transition: opacity 200ms ease, max-height 200ms ease, margin-top 200ms ease;
}

.lhc-news-code-feedback.is-visible {
	margin-top: 6px;
	max-height: 40px;
	opacity: 1;
}

.lhc-news-code-feedback--success {
	color: #16745c;
}

.lhc-news-code-feedback--error {
	color: #a33d36;
}

/* 表单按钮：此前"发送验证码"用深藏青、"提交审核"用金色，两个颜色都不在
   全站调色板内。现改为与全站表单一致的主/次按钮层级——次要动作为品牌蓝
   描边样式，主要提交动作为品牌蓝实心胶囊（对齐住房投稿表单
   .lhc-submit-actions .button / .button-primary 的主次按钮写法）。 */
/* v1.0.179：前几版一直把"发送验证码"按钮跟旁边输入框对不齐的原因，归到
   "两边各写各的高度数字"上，确实解决了一部分；但按钮本身还是显得比设定
   的高度更高，这里补上真正剩下的一块——浏览器对 <button> 这种表单控件，
   默认会按操作系统的原生按钮样式（专业说法是 appearance）单独处理一层
   "内置最小尺寸"，这层尺寸是浏览器内部逻辑，不完全受 height/box-sizing
   这些普通 CSS 属性约束，不同浏览器/系统的具体表现不一样，这也是为什么
   前几版单纯调 height 数值，实际效果还是时好时坏、按钮看着仍然偏高的
   根本原因。这里显式关掉这层原生控件外观（appearance:none，连同兼容
   前缀），按钮就变成一个普通的、完全按我们自己写的 CSS 来渲染尺寸的
   元素，height/box-sizing 才能真正精确生效。同时把 line-height 也收到
   normal，避免继承到某处更大的行高，把按钮内容撑得比设定的盒子还高。 */
.lhc-news-form .button {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	box-sizing: border-box;
	line-height: normal;
	min-height: 44px;
	padding: 10px 20px;
	border: 1px solid var(--lhc-brand-blue, #1687F8);
	border-radius: var(--lhc-brand-pill-radius, 999px);
	background: #fff;
	color: var(--lhc-brand-blue-deep, #075fd8);
	font-weight: 700;
	cursor: pointer;
	transition: background 140ms ease, color 140ms ease, box-shadow 140ms ease;
}

.lhc-news-form .button:hover {
	background: rgba(22, 135, 248, .08);
}

.lhc-news-form .button--gold {
	border-color: transparent;
	background: var(--lhc-brand-action, var(--lhc-brand-blue, #1687F8));
	color: #fff;
	box-shadow: 0 8px 18px rgba(22, 135, 248, .22);
}

.lhc-news-form .button--gold:hover {
	background: var(--lhc-brand-action-hover, #0f6fd6);
	color: #fff;
}

.lhc-news-check {
	font-weight: 400 !important;
}

.lhc-news-check input {
	display: inline-block;
	width: auto;
}

.lhc-news-honeypot {
	position: absolute;
	left: -9999px;
}

.lhc-news-form-notice {
	margin: 16px 0;
	padding: 12px 14px;
	border-radius: 8px;
	font-size: 14px;
	line-height: 1.5;
}

.lhc-news-form-notice--success {
	background: #e4f7ef;
	color: #16745c;
}

.lhc-news-form-notice--error {
	background: #fff1f0;
	color: #a33d36;
}

.lhc-news-submit__aside {
	background: linear-gradient(145deg, #f1f8ff, #fff);
}

/* 侧栏小标题同样改用无衬线正文字体，和主标题保持同一套字体；字号/字重也
   同步降下来（20px/800 → 16px/600），避免比正文标签还醒目。 */
.lhc-news-submit__aside h2 {
	font: 600 16px/1.4 var(--lhc-type-body-family, Arial, sans-serif);
	color: var(--lhc-ink-strong, #08182c);
}

.lhc-news-submit__aside li {
	margin: 11px 0;
	color: var(--lhc-muted, #5c6b7a);
	font-size: 14px;
}

@media (max-width: 1100px) {
	.lhc-news-submit {
		width: var(--lhc-page-wide-tablet, calc(100vw - 48px));
	}
}

/* 投稿页两栏（正文 + 300px 说明栏）在窄屏下的堆叠断点，对齐全站
   .lhc-product-layout__aside 在 900px 收为单列的写法。 */
@media (max-width: 900px) {
	.lhc-news-submit {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	.lhc-news-submit {
		width: var(--lhc-page-wide-mobile, calc(100vw - 28px));
		padding: 36px 0 60px;
	}

	.lhc-news-form__two {
		grid-template-columns: 1fr;
	}

	.lhc-news-submit__main,
	.lhc-news-submit__aside {
		padding: 20px;
	}
}
