/*
Theme Name:     Licham
Theme URI:      http://licham.local/
Description:    Theme STANDALONE (classic, không child, không FSE) cho website lịch âm / lịch vạn niên tiếng Việt. Markup tối giản, mobile-first, ưu tiên Core Web Vitals và toàn quyền kiểm soát HTML cho SEO. Logic nghiệp vụ nằm ở plugin licham-core / licham-seo.
Author:         Licham
Author URI:     http://licham.local/
Version:        0.10.27
Requires at least: 6.0
Requires PHP:   7.4
License:        GNU General Public License v2 or later
License URI:    http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:    licham
Tags:           lich-am, lich-van-nien, seo

Ghi chú: KHÔNG khai báo "Template:" — theme độc lập (ADR-008).
*/

/* ===========================================================================
 * DESIGN TOKENS — một nơi định nghĩa, tái dùng toàn site. Xanh lá chủ đạo,
 * nền xám nhạt, khối = card trắng viền mảnh bo góc + bóng rất mỏng.
 * CSS các phiên trước dần tham chiếu token này; CSS mới BẮT BUỘC dùng token.
 * ========================================================================= */
:root {
	/* Xanh lá thương hiệu */
	--licham-green:        #15803d;
	--licham-green-dark:   #166534;
	--licham-green-darker: #14532d;
	--licham-green-soft:   #dcfce7;
	--licham-green-bg:     #f0fdf4;

	/* Accent = xanh lá (đổi từ đỏ cũ) */
	--licham-accent:       #15803d;

	/* Nhấn dương / cảnh báo */
	--licham-red:          #b91c1c;
	--licham-red-soft:     #fee2e2;
	--licham-red-bg:       #fef2f2;
	--licham-amber:        #f59e0b;
	--licham-amber-bg:     #fffbeb;
	--licham-amber-text:   #92400e;

	/* Nền / bề mặt / chữ / viền */
	--licham-page-bg:      #f3f4f6;
	--licham-card-bg:      #ffffff;
	--licham-text:         #1f2937;
	--licham-muted:        #6b7280;
	--licham-border:       #e5e7eb;

	/* Bố cục */
	--licham-container:    62.5rem; /* 1000px — toàn site (header→footer) trong 1 cột này */

	/* Spacing scale */
	--licham-space-xs: .25rem;
	--licham-space-sm: .5rem;
	--licham-space-md: 1rem;
	--licham-space-lg: 1.5rem;
	--licham-space-xl: 2rem;

	/* Bo góc / bóng / padding card */
	--licham-radius:    12px;
	--licham-radius-sm: 8px;
	--licham-shadow:    0 1px 2px rgba(17, 24, 39, .04), 0 1px 3px rgba(17, 24, 39, .06);
	--licham-card-pad:  1.25rem;
}

/* ---------------------------------------------------------------------------
 * Base mobile-first.
 * ------------------------------------------------------------------------- */
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
	font-size: 1rem;
	line-height: 1.6;
	color: var(--licham-text);
	background: var(--licham-page-bg);
}

img {
	max-width: 100%;
	height: auto;
}

a {
	color: var(--licham-green-dark);
}

/* ---------------------------------------------------------------------------
 * KHUNG SITE: TOÀN BỘ (header → nội dung → footer) trong MỘT cột 1000px căn
 * giữa trên nền xám; chạy dọc một chiều.
 * ------------------------------------------------------------------------- */
.licham-site {
	max-width: var(--licham-container); /* 1000px — cả header/footer/nội dung trong cột này */
	margin: 0 auto;
}

/* Vùng nội dung = container trong suốt, các khối con cách đều nhau. */
.licham-content {
	max-width: var(--licham-container);
	margin: 0 auto;
	padding: var(--licham-space-lg) var(--licham-space-md);
	display: flex;
	flex-direction: column;
	gap: var(--licham-space-md);
}

/* ---------------------------------------------------------------------------
 * HỆ THỐNG CARD: mỗi khối nội dung = card trắng.
 * ------------------------------------------------------------------------- */
.licham-card,
.licham-faq,
.licham-events,
.licham-content > .licham-entry,
.licham-ngay__head,
.licham-ngay__summary,
/* ── Các section homepage: KHÔNG còn là card riêng biệt ──────────────────
 * Trước đây mỗi section có border/shadow/radius riêng → trông ngắt quãng.
 * Giờ nền trắng duy nhất, chỉ dùng border-bottom mảnh để chia vùng.
 * ────────────────────────────────────────────────────────────────────── */
.licham-home__quicknav,
.licham-home__cta,
.licham-home__latest,
.licham-home__free,
.licham-home__faq,
.licham-home__search {
	background: transparent;
	border: none;
	border-bottom: 1px solid var(--licham-border);
	border-radius: 0;
	box-shadow: none;
	padding: var(--licham-card-pad);
	margin: 0;
}

/* .licham-faq: bỏ \u0111ường gạch dưới */
.licham-faq {
	border-bottom: none;
}

.licham-home__quicknav:last-child,
.licham-home__cta:last-child,
.licham-home__latest:last-child,
.licham-home__free:last-child,
.licham-home__faq:last-child,
.licham-home__search:last-child {
	border-bottom: none;
}

/* ── .licham-home: 1 khối nền trắng duy nhất, bám sát header ↔ footer ──── */
.licham-ngay,
.licham-thang,
.licham-nam,
.licham-home {
	max-width: 100%;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0;          /* xoá gap giữa các section */
	background: #fff;
}



/* ---------------------------------------------------------------------------
 * Khối "Liên kết nhanh" site-wide (licham-seo, B9).
 * ------------------------------------------------------------------------- */
.licham-related {
	max-width: var(--licham-container);
	margin: 0 auto;
	padding: var(--licham-space-md);
	font-size: .85rem;
	color: var(--licham-muted);
}

.licham-related__label {
	font-weight: 600;
	margin-right: var(--licham-space-sm);
}

.licham-related__list {
	display: inline-flex;
	flex-wrap: wrap;
	gap: var(--licham-space-sm) var(--licham-space-md);
	list-style: none;
	margin: 0;
	padding: 0;
}

.licham-related__list a {
	color: var(--licham-green-dark);
	text-decoration: none;
}

.licham-related__list a:hover {
	text-decoration: underline;
}

/* ---------------------------------------------------------------------------
 * COMPONENT FAQ dùng chung (.licham-faq) — accordion card, icon +/-, chevron.
 * ------------------------------------------------------------------------- */

/* Header: icon speech-bubble + tiêu đề */
.licham-faq__head {
	display: flex;
	align-items: center;
	gap: .6rem;
	margin-bottom: 1rem;
}

.licham-faq__head-icon {
	color: var(--licham-green, #15803d);
	flex-shrink: 0;
}

.licham-faq__title {
	margin: 0;
	font-size: 1.3rem;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--licham-green-dark, #166534);
}

/* Separator mảnh giữa header và list */
.licham-faq__sep {
	border: 0;
	border-top: 1px solid var(--licham-border, #e5e7eb);
	margin: .6rem 0 .85rem;
}

/* Danh sách item */
.licham-faq__list {
	display: flex;
	flex-direction: column;
	gap: .5rem;
}

/* Mỗi item: card có viền bo tròn */
.licham-faq__item {
	border: 1px solid var(--licham-border, #e5e7eb);
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
}

/* Bỏ marker mặc định của browser */
.licham-faq__item > summary { list-style: none; }
.licham-faq__item > summary::-webkit-details-marker { display: none; }

/* Dòng câu hỏi */
.licham-faq__q {
	display: flex;
	align-items: center;
	gap: .65rem;
	padding: .6rem .85rem;
	cursor: pointer;
	user-select: none;
	background: #fff;
	transition: background .15s;
}

details[open] > .licham-faq__q {
	background: var(--licham-green-bg, #f0fdf4);
}

/* Icon +/- hình tròn */
.licham-faq__q-icon {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	min-width: 22px;
	border-radius: 50%;
	border: 1.5px solid #d1d5db;
	color: #6b7280;
	transition: border-color .15s, color .15s;
}

/* Thanh ngang (luôn hiện) */
.licham-faq__q-icon::before {
	content: '';
	display: block;
	width: 8px;
	height: 1.5px;
	background: currentColor;
	border-radius: 1px;
}

/* Thanh dọc (ẩn khi mở) */
.licham-faq__q-icon::after {
	content: '';
	display: block;
	width: 1.5px;
	height: 10px;
	background: currentColor;
	border-radius: 1px;
	position: absolute;
	transition: transform .2s ease, opacity .15s;
}

details[open] .licham-faq__q-icon::after {
	transform: scaleY(0);
	opacity: 0;
}

details[open] .licham-faq__q-icon {
	border-color: var(--licham-green, #15803d);
	color: var(--licham-green, #15803d);
}

/* Text câu hỏi */
.licham-faq__q-text {
	flex: 1;
	font-weight: 600;
	font-size: .95rem;
	color: #111827;
	line-height: 1.4;
}

/* Chevron xoay khi mở */
.licham-faq__q-chevron {
	flex-shrink: 0;
	color: #9ca3af;
	transition: transform .2s ease, color .15s;
}

details[open] .licham-faq__q-chevron {
	transform: rotate(180deg);
	color: var(--licham-green, #15803d);
}

/* Đáp án */
.licham-faq__a {
	padding: .85rem 1rem .85rem 3.35rem;
	color: #374151;
	font-size: .9rem;
	border-top: 1px solid var(--licham-border, #e5e7eb);
}

.licham-faq__a p {
	margin: 0 0 .5rem;
}

.licham-faq__a p:last-child {
	margin-bottom: 0;
}

/* Ghi chú: style chi tiết của .licham-events__* (title/group/list/name/sep/muted)
 * nằm ở assets/css/licham-lich.css — file CHỈ nạp trên trang tháng/năm nơi component
 * này xuất hiện. KHÔNG nhân bản ở đây để tránh rule trùng (xem dọn trùng theme CSS).
 * (.licham-events vẫn là thành viên hệ card ở khối HỆ THỐNG CARD phía trên.) */

/* ---------------------------------------------------------------------------
 * PAGE TEMPLATE: .licham-entry bám sát header ↔ footer thành 1 khối thống nhất.
 * WordPress tự thêm class "page" vào body khi dùng page.php.
 * ------------------------------------------------------------------------- */


/* Entry: nền trắng, full-width 1000px, padding nội dung bên trong, không bo/viền/bóng card. */
.page .licham-content > .licham-entry {
	background: #fff;
	border: none;
	border-radius: 0;
	box-shadow: none;
	padding: 2.5rem var(--licham-space-lg);
	max-width: 100%;
	width: 100%;
	flex: 1;
	box-sizing: border-box;
}

/* .licham-faq trong page entry: bỏ padding thừa (entry đã có padding từ .licham-entry) */
.page .licham-content > .licham-entry .licham-faq {
	padding: 0;
}

/* .licham-faq trong page entry: bỏ padding thừa */
.page .licham-content > .licham-entry .licham-faq {
	padding: 0;
}

/* Tiêu đề trang */
.licham-entry__title {
	margin: 0 0 1.25rem;
	font-size: 1.75rem;
	font-weight: 700;
	color: var(--licham-text);
	line-height: 1.3;
}

/* Nội dung trang: typography dễ đọc */
.licham-entry p,
.licham-entry li {
	line-height: 1.75;
	color: #374151;
}

.licham-entry h2,
.licham-entry h3 {
	margin: 1.5rem 0 .6rem;
	color: var(--licham-text);
	font-weight: 700;
}

.licham-entry ul,
.licham-entry ol {
	padding-left: 1.5rem;
	margin: .5rem 0 1rem;
}


/* Khung bài viết: nền trắng, full-width */
.licham-single {
	background: #fff;
	width: 100%;
}

/* ------ Nội dung bài viết ------ */
.licham-single__entry {
	padding: 2.5rem var(--licham-space-lg);
}

@media (min-width: 640px) {
	.licham-single__entry {
		padding: 3rem 2.5rem;
	}
}

/* ---- Breadcrumbs ---- */
.licham-breadcrumb {
	margin-bottom: 1rem;
	font-size: .82rem;
	line-height: 1.5;
}

/* Fallback tự xây (ol/li) */
.licham-breadcrumb__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .2rem .1rem;
}

.licham-breadcrumb__item {
	display: inline-flex;
	align-items: center;
	color: var(--licham-muted);
}

/* Dấu phân cách / giữa các mục */
.licham-breadcrumb__item + .licham-breadcrumb__item::before {
	content: "/";
	padding: 0 .3rem;
	color: var(--licham-border);
}

.licham-breadcrumb__item a {
	color: var(--licham-green-dark);
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: .25rem;
}

.licham-breadcrumb__item a:hover {
	text-decoration: underline;
}

.licham-breadcrumb__item--current {
	color: var(--licham-muted);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 40ch;
}

/* RankMath / Yoast output — style lại khớp theme */
.licham-breadcrumb .rank-math-breadcrumb p,
.licham-breadcrumb .yoast-breadcrumb,
.licham-breadcrumb p {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .2rem .25rem;
	font-size: .82rem;
	color: var(--licham-muted);
	line-height: 1.5;
}

.licham-breadcrumb .rank-math-breadcrumb a,
.licham-breadcrumb p a {
	color: var(--licham-green-dark);
	text-decoration: none;
}

.licham-breadcrumb .rank-math-breadcrumb a:hover,
.licham-breadcrumb p a:hover {
	text-decoration: underline;
}

/* Ẩn dấu / cuối cùng nếu RankMath tự thêm */
.licham-breadcrumb .rank-math-breadcrumb .separator:last-child {
	display: none;
}

/* ---- Meta tác giả + ngày đăng ---- */
.licham-single__meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: .5rem;
	font-size: .875rem;
	color: var(--licham-muted);
	margin-bottom: 1.5rem;
}

.licham-single__author {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
}

.licham-single__author a {
	color: var(--licham-green-dark);
	font-weight: 600;
	text-decoration: none;
}

.licham-single__author a:hover {
	text-decoration: underline;
}

.licham-single__avatar {
	width: 28px !important;
	height: 28px !important;
	border-radius: 50%;
	object-fit: cover;
	vertical-align: middle;
	border: 2px solid var(--licham-green-soft);
}

.licham-single__date {
	display: inline-flex;
	align-items: center;
	gap: .3rem;
}

.licham-single__date svg {
	color: var(--licham-green);
	flex-shrink: 0;
}

.licham-single__meta-sep {
	color: var(--licham-border);
	user-select: none;
}

.licham-single__title {
	font-size: 1.65rem;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 .6rem;
	color: var(--licham-text);
}

.licham-single__meta {
	font-size: .85rem;
	color: var(--licham-muted);
	margin-bottom: 1.5rem;
	display: flex;
	align-items: center;
	gap: .4rem;
	flex-wrap: wrap;
}

.licham-single__meta a {
	color: var(--licham-green-dark);
	text-decoration: none;
}

.licham-single__meta a:hover {
	text-decoration: underline;
}

.licham-single__content {
	line-height: 1.8;
	color: #374151;
}

.licham-single__content p { margin: 0 0 1rem; }
.licham-single__content h2 { font-size: 1.25rem; font-weight: 700; margin: 1.75rem 0 .6rem; color: var(--licham-text); }
.licham-single__content h3 { font-size: 1.05rem; font-weight: 700; margin: 1.25rem 0 .5rem; color: var(--licham-text); }
.licham-single__content ul, .licham-single__content ol { padding-left: 1.5rem; margin: .5rem 0 1rem; }
.licham-single__content li { margin-bottom: .35rem; }
.licham-single__content img { max-width: 100%; height: auto; border-radius: var(--licham-radius-sm); }
.licham-single__content a { color: var(--licham-green-dark); }
.licham-single__content blockquote {
	margin: 1rem 0;
	padding: .75rem 1.25rem;
	border-left: 4px solid var(--licham-green);
	background: var(--licham-green-bg);
	border-radius: 0 var(--licham-radius-sm) var(--licham-radius-sm) 0;
	color: var(--licham-green-dark);
}

/* ---- WordPress [caption] shortcode & Gutenberg figure ---- */
/* Override inline width WP gán cứng (vd style="width:810px") */
.licham-single__content .wp-caption {
	max-width: 100% !important;
	width: auto !important;
	height: auto;
	margin: 1.25rem auto;
	text-align: center;
}

/* aligncenter: ảnh đứng giữa cột nội dung */
.licham-single__content .aligncenter,
.licham-single__content figure.aligncenter {
	display: block;
	margin: 1.25rem auto;
	text-align: center;
}

.licham-single__content .alignleft  { float: left;  margin: .5rem 1.25rem .5rem 0; }
.licham-single__content .alignright { float: right; margin: .5rem 0 .5rem 1.25rem; }

/* Ảnh bên trong caption: full width + bo góc */
.licham-single__content .wp-caption img,
.licham-single__content figure img {
	max-width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
	border-radius: var(--licham-radius-sm);
}

/* Caption text: nghiêng, xám nhạt, căn giữa */
.licham-single__content .wp-caption-text,
.licham-single__content figcaption {
	font-style: italic;
	font-size: .83rem;
	color: var(--licham-muted);
	text-align: center;
	margin-top: .5rem;
	line-height: 1.5;
}

/* ------ Tiêu đề phần (Bài viết liên quan / Bình luận) ------ */
.licham-single__section-title {
	font-size: 1.15rem;
	font-weight: 700;
	margin: 0 0 1.25rem;
	color: var(--licham-text);
	border-left: 4px solid var(--licham-green);
	padding-left: .6rem;
}

/* ------ Đường ngăn giữa các phần ------ */
.licham-single__related,
.licham-single__comments {
	padding: 2rem var(--licham-space-lg);
	border-top: 1px solid var(--licham-border);
}

@media (min-width: 640px) {
	.licham-single__related,
	.licham-single__comments {
		padding: 2rem 2.5rem;
	}
}

/* ===========================================================================
 * BÀI VIẾT LIÊN QUAN — lưới 2 cột mobile / 3 cột desktop.
 * ========================================================================= */
.licham-related-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem;
}

@media (min-width: 640px) {
	.licham-related-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

.licham-related-card {
	border: 1px solid var(--licham-border);
	border-radius: var(--licham-radius-sm);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: box-shadow .2s;
}

.licham-related-card:hover {
	box-shadow: 0 4px 12px rgba(17, 24, 39, .1);
}

.licham-related-card__thumb {
	display: block;
	overflow: hidden;
}

.licham-related-card__thumb img {
	width: 100%;
	height: 130px;
	object-fit: cover;
	display: block;
	transition: transform .3s;
}

.licham-related-card:hover .licham-related-card__thumb img {
	transform: scale(1.04);
}

/* Placeholder khi bài viết chưa có Featured Image */
.licham-related-card__placeholder {
	width: 100%;
	height: 130px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, var(--licham-green-darker) 0%, var(--licham-green) 100%);
	color: #fff;
	font-size: 2.5rem;
	font-weight: 700;
	letter-spacing: -.02em;
	user-select: none;
}

.licham-related-card__body {
	padding: .75rem;
	flex: 1;
}

.licham-related-card__title {
	font-size: .875rem;
	font-weight: 600;
	line-height: 1.45;
	margin: 0 0 .4rem;
}

.licham-related-card__title a {
	color: var(--licham-text);
	text-decoration: none;
}

.licham-related-card__title a:hover {
	color: var(--licham-green-dark);
}

.licham-related-card__date {
	font-size: .78rem;
	color: var(--licham-muted);
}

/* ===========================================================================
 * FORM BÌNH LUẬN — 2 field cùng hàng (Họ tên + Email), rồi textarea.
 * ========================================================================= */
.licham-comments-list {
	margin-bottom: 2rem;
}

.licham-comment-form {
	margin-top: .75rem;
}

/* Dòng 1: 2 cột (Họ tên + Email) */
.licham-comment-form__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
	margin-bottom: 1rem;
}

@media (max-width: 480px) {
	.licham-comment-form__row {
		grid-template-columns: 1fr;
	}
}

.licham-comment-form__field {
	display: flex;
	flex-direction: column;
	gap: .35rem;
	margin-bottom: 1rem;
}

.licham-comment-form__row .licham-comment-form__field {
	margin-bottom: 0;
}

.licham-comment-form__field label {
	font-size: .875rem;
	font-weight: 600;
	color: var(--licham-text);
}

.licham-comment-form__field label span {
	color: var(--licham-red);
}

.licham-comment-form__field input,
.licham-comment-form__field textarea {
	border: 1px solid var(--licham-border);
	border-radius: var(--licham-radius-sm);
	padding: .6rem .85rem;
	font-size: .95rem;
	font-family: inherit;
	color: var(--licham-text);
	background: #fff;
	width: 100%;
	box-sizing: border-box;
	transition: border-color .15s, box-shadow .15s;
}

.licham-comment-form__field input:focus,
.licham-comment-form__field textarea:focus {
	outline: none;
	border-color: var(--licham-green);
	box-shadow: 0 0 0 3px rgba(21, 128, 61, .12);
}

.licham-comment-form__field textarea {
	resize: vertical;
	min-height: 130px;
}

.licham-comment-form__submit {
	background: var(--licham-green);
	color: #fff;
	border: none;
	border-radius: var(--licham-radius-sm);
	padding: .7rem 2rem;
	font-size: 1rem;
	font-weight: 600;
	cursor: pointer;
	transition: background .2s;
	margin-top: .5rem;
}

.licham-comment-form__submit:hover {
	background: var(--licham-green-dark);
}

.licham-comments-closed {
	color: var(--licham-muted);
	font-style: italic;
	font-size: .9rem;
}

/* ===========================================================================
 * ARCHIVE — category / tag / author / date.
 * Nền trắng bám sát header ↔ footer, grid 3 cột.
 * ========================================================================= */

.licham-archive {
	background: #fff;
	width: 100%;
}

/* Header: breadcrumb + tên danh mục + mô tả + số bài */
.licham-archive__head {
	padding: 1.5rem 2.5rem 1.25rem;
}

.licham-archive__title {
	font-size: 1.75rem;
	font-weight: 800;
	color: var(--licham-text);
	margin: .5rem 0 0;
	padding-left: .85rem;
	border-left: 4px solid var(--licham-green);
	line-height: 1.3;
	display: block; /* không dùng flex nữa, bỏ SVG icon */
}

.licham-archive__author-avatar {
	width: 32px !important;
	height: 32px !important;
	border-radius: 50%;
	object-fit: cover;
	vertical-align: middle;
	margin-right: .4rem;
}

.licham-archive__desc {
	color: var(--licham-muted);
	font-size: .9rem;
	margin: .6rem 0 0 1.1rem;
	line-height: 1.6;
	padding-left: .75rem;
	border-left: 2px solid var(--licham-border);
}

.licham-archive__count {
	font-size: .78rem;
	color: var(--licham-muted);
	margin: .5rem 0 0;
	padding-left: 1rem;
}

/* Grid bài viết: 1 cột mobile → 2 cột tablet → 3 cột desktop */
/* ------ Danh sách bài viết (1 hàng/bài) ------ */
.licham-archive__list {
	padding: 0 2.5rem;
}

/* ------ Post Row: Số | Thumbnail 30% | Content 70% ------ */
.licham-post-row {
	display: grid;
	/* [ảnh 30%] [nội dung 70%] */
	grid-template-columns: 30% 1fr;
	gap: 0 1.25rem;
	align-items: flex-start;
	padding: 1.25rem 0;
	border-bottom: 1px solid var(--licham-border);
	transition: background .15s;
}

.licham-post-row:first-child {
	border-top: 1px solid var(--licham-border);
}

.licham-post-row:hover {
	background: #f9fafb;
	margin: 0 -1rem;
	padding-left: 1rem;
	padding-right: 1rem;
}

/* Số thứ tự — căn giữa cột */
.licham-post-row__num {
	font-size: 1.1rem;
	font-weight: 700;
	color: var(--licham-green);
	text-align: center;
	line-height: 1;
	align-self: center;
}

/* Thumbnail 30% — tỉ lệ 16:9 */
.licham-post-row__thumb {
	display: block;
	overflow: hidden;
	border-radius: var(--licham-radius-sm);
	aspect-ratio: 16 / 9;
	background: var(--licham-border);
	align-self: center;
}

.licham-post-row__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .3s;
}

.licham-post-row:hover .licham-post-row__thumb img {
	transform: scale(1.05);
}

/* Placeholder */
.licham-post-row__placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, var(--licham-green-darker, #145a32) 0%, var(--licham-green) 100%);
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	user-select: none;
}

/* Nội dung 70% */
.licham-post-row__body {
	display: flex;
	flex-direction: column;
	gap: .3rem;
	align-self: center;
}

/* Nhãn danh mục */
.licham-post-row__cat {
	font-size: .72rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: var(--licham-green-dark);
	text-decoration: none;
}

.licham-post-row__cat:hover { text-decoration: underline; }

/* Tiêu đề */
.licham-post-row__title {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.4;
	margin: 0;
}

.licham-post-row__title a {
	color: var(--licham-text);
	text-decoration: none;
}

.licham-post-row__title a:hover {
	color: var(--licham-green-dark);
}

/* Excerpt */
.licham-post-row__excerpt {
	font-size: .85rem;
	color: var(--licham-muted);
	line-height: 1.55;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Meta */
.licham-post-row__meta {
	display: flex;
	align-items: center;
	gap: .35rem;
	font-size: .78rem;
	color: var(--licham-muted);
	margin-top: .2rem;
}

/* Mobile: 1 cột, stack dọc */
@media (max-width: 600px) {
	.licham-archive__list { padding: 0 1rem; }
	.licham-archive__head { padding: 1.25rem 1rem 1rem; }
	.licham-archive__pagination { padding: 1rem; }

	.licham-post-row {
		grid-template-columns: 1fr;
		gap: .75rem 0;
		padding: 1rem 0;
	}

	.licham-post-row__thumb {
		aspect-ratio: 16 / 8;
	}
}


/* Phân trang */
.licham-archive__pagination {
	padding: 1.5rem 2.5rem 2rem;
}

.licham-archive__pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: .4rem;
	align-items: center;
	justify-content: center;
}

.licham-archive__pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.2rem;
	height: 2.2rem;
	padding: 0 .6rem;
	border-radius: var(--licham-radius-sm);
	border: 1px solid var(--licham-border);
	text-decoration: none;
	font-size: .875rem;
	color: var(--licham-text);
	transition: background .15s, color .15s;
}

.licham-archive__pagination .page-numbers.current,
.licham-archive__pagination .page-numbers:hover {
	background: var(--licham-green);
	color: #fff;
	border-color: var(--licham-green);
}

/* Trống */
.licham-archive__empty {
	padding: 3rem 2.5rem;
	text-align: center;
	color: var(--licham-muted);
}

.licham-archive__empty a {
	color: var(--licham-green-dark);
	text-decoration: none;
}

.licham-archive__empty a:hover {
	text-decoration: underline;
}

@media (max-width: 640px) {
	.licham-archive__head,
	.licham-archive__grid,
	.licham-archive__pagination {
		padding-left: 1rem;
		padding-right: 1rem;
	}
}
