/* ==========================================================================
   Chinese Stories · 右侧栏（归档类列表页 + 单篇文章页）
   --------------------------------------------------------------------------
   作用范围：分类 / 标签 / 自定义分类 / 日期 / 作者归档、搜索结果，以及
   单篇文章页（body.single）。这些页面由子主题 functions.php 的
   cs_child_sidebar_scope() 令 wpcom_get_sidebar() 返回 primary，
   <aside class="sidebar"> 才会渲染出来。

   ⚠️ 首页也有 .sidebar（class="sidebar sidebar-on-right"，挂 home widget），
   所以每条规则都必须带 body 级前缀，避免误伤首页。这里用
   :is(.archive,.search,.single) 一次覆盖「归档类 + 文章页」。

   版式：
     · 归档 / 搜索：容器 1240，主栏 flex:1 自适应，侧栏 340（吸顶）
     · 文章       ：容器 1120（父主题 .container 有 padding 0 10px，内宽 1100），
                    主栏固定 720（正文行宽与改版前一致），侧栏 340（吸顶）

   父主题 justnews 样式靠选择器特异性压制，不用 !important
   （唯一例外：移动端隐藏侧栏）。
   ========================================================================== */

@media (min-width: 992px) {

	/* ---- 归档 / 搜索：内容区收窄到 1240，给右栏腾地方 ---------------- */
	body:is(.archive, .search) .wrap.container:has(> .sidebar > *) {
		width: min(1240px, calc(100vw - 60px));
		max-width: min(1240px, calc(100vw - 60px));
	}

	/* ---- 文章页：容器 1120（内宽 1100），主栏固定 720（正文行宽不变）----
	   ⚠️ 父主题 .wrap.container 是 display:flex + flex-wrap:wrap + padding:0 10px。
	   内宽只有 1100-20=1080 < 720+40+340，若不处理侧栏会被挤到下一行。
	   故容器设 1120（内宽 1100 刚好容下）并显式 nowrap 兜底。 */
	body.single #wrap > .wrap.container:has(> .sidebar > *) {
		width: min(1120px, calc(100vw - 60px)) !important;
		max-width: min(1120px, calc(100vw - 60px)) !important;
		margin-left: auto !important;
		margin-right: auto !important;
		display: flex;
		flex-wrap: nowrap;
		gap: 40px;
		align-items: flex-start;
	}

	body.single #wrap > .wrap.container:has(> .sidebar > *) > main.main {
		flex: 0 1 720px;
		max-width: 720px;
		min-width: 0;
	}

	/* ---- 右栏：固定 340，吸顶（归档 / 搜索 / 文章通用）-------------- */
	body:is(.archive, .search, .single) .wrap.container:has(> .sidebar > *) > .sidebar {
		flex: 0 0 340px;
		width: 340px;
		align-self: flex-start;
		position: sticky;
		top: 96px;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar > .widget {
		margin-bottom: 34px;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar > .widget:last-child {
		margin-bottom: 0;
	}

	/* ---- 模块标题：衬线 + 红线（呼应报头） -------------------------- */
	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget-title {
		font-family: 'Playfair Display', Georgia, 'Times New Roman', serif;
		font-size: 17px;
		font-weight: 700;
		line-height: 1.3;
		letter-spacing: .01em;
		color: #16161d;
		margin: 0 0 15px;
		padding: 0 0 9px;
		border-bottom: 2px solid #c8102e;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget-title span {
		color: inherit;
	}

	/* 去掉主题自带的两种装饰：标题左侧 3px 竖条、列表项前的三角。
	   父主题规则：.widget-title:before{width:3px;background:var(--theme-color)}
	              .widget :is(ol,ul) li:before{border-left:5px solid hsla(...)} */
	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget-title:before {
		content: none !important;
		display: none !important;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget :is(ol, ul) li:before {
		content: none !important;
		display: none !important;
	}

	/* ---- 通用条目（最新文章 / 栏目） ------------------------------- */
	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_recent_entries ul,
	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_categories ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_recent_entries li,
	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_categories li {
		font-size: 14.5px;
		line-height: 1.55;
		padding: 9px 0;
		border-bottom: 1px solid #eeece8;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_recent_entries li:last-child,
	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_categories li:last-child {
		border-bottom: 0;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_recent_entries a,
	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_categories a {
		color: #22222a;
		text-decoration: none;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_recent_entries a:hover,
	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_categories a:hover {
		color: #c8102e;
	}

	/* 栏目条目：名称左、篇数右 */
	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_categories li {
		display: flex;
		align-items: baseline;
		justify-content: space-between;
		gap: 12px;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .widget_categories .count {
		color: #a29a90;
		font-size: 12.5px;
		flex: none;
	}

	/* ---- Newsletter（MailPoet）------------------------------------ */
	body:is(.archive, .search, .single) .wrap.container > .sidebar .mailpoet_form {
		font-family: inherit;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .mailpoet_form .mailpoet_paragraph {
		margin-bottom: 11px;
		line-height: 1.55;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .mailpoet_form .mailpoet-heading.mailpoet-has-font-size {
		line-height: 1.35;
		margin: 0 0 4px;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .mailpoet_form .mailpoet_text {
		font-size: 14px;
		padding: 11px 13px;
		height: auto;
		box-shadow: none;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .mailpoet_form .mailpoet_submit {
		padding: 11px 16px;
		font-size: 13.5px;
		letter-spacing: .04em;
		cursor: pointer;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .mailpoet_form .mailpoet_submit:hover {
		background-color: #a20d25 !important;
	}

	body:is(.archive, .search, .single) .wrap.container > .sidebar .mailpoet_form .mailpoet_text:focus {
		border-color: #c8102e;
		outline: none;
	}
}

/* ---- 移动端：全部隐藏侧栏（桌面右栏 / 移动端隐藏） ---------------- */
@media (max-width: 991px) {
	body:is(.archive, .search, .single) .wrap.container > .sidebar {
		display: none !important;
	}
}
