:root {
	--khmerline-gold: #7c3aed;
	--khmerline-gold-light: #a78bfa;
	--khmerline-gold-dark: #5b21b6;
	--khmerline-brown: #17171a;
	--khmerline-deep-brown: #0c0c0e;
	--khmerline-background-soft: #f7f7f8;
	--khmerline-background-beige: #f5f3ff;
	--khmerline-border: #dedee2;
	--khmerline-border-light: #ececef;
	--container: 1280px;
}

body,
button,
input,
textarea {
	font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

h1, h2, h3,
.section-title,
.nav-menu a,
.lead-primary h1,
.lead-secondary h3,
.timeline-list h3,
.popular-list a,
.category-column h3,
.archive-header h1,
.archive-item h2,
.article-header h1,
.page-article h1,
.khmerline-entry-content h2,
.khmerline-entry-content h3 {
	font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}

.site-header {
	border-bottom: 1px solid var(--khmerline-border-light);
	box-shadow: 0 8px 30px rgb(18 18 22 / 4%);
}

.site-header.is-sticky { top: 0; }
.admin-bar .site-header.is-sticky { top: 32px; }

.header-main {
	min-height: 82px;
	gap: 40px;
}

.branding { line-height: 1; }

.kehaktompor-brand { display: inline-flex; align-items: center; gap: 11px; color: var(--khmerline-text); }
.kehaktompor-brand:hover { color: var(--khmerline-text); }
.kehaktompor-mark { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 14px 5px 14px 5px; background: linear-gradient(145deg, #a78bfa, var(--khmerline-gold-dark)); color: #fff; font: 900 16px/1 Inter, sans-serif; letter-spacing: -.06em; box-shadow: 0 8px 24px rgb(124 58 237 / 24%); }
.kehaktompor-name { font-size: 22px; font-weight: 900; letter-spacing: -1.2px; }
.kehaktompor-name span { color: var(--khmerline-gold); }
.footer-kehaktompor { color: #fff; }
.footer-kehaktompor:hover { color: #fff; }
.footer-kehaktompor .kehaktompor-mark { width: 36px; height: 36px; border-radius: 11px 4px 11px 4px; font-size: 13px; box-shadow: none; }
.footer-kehaktompor .kehaktompor-name { font-size: 16px; letter-spacing: -.7px; }
.footer-kehaktompor .kehaktompor-name span { color: var(--khmerline-gold-light); }

.primary-navigation {
	border: 0;
	min-width: 0;
}

.nav-menu {
	justify-content: flex-start;
	gap: 32px;
}

.nav-menu a {
	padding: 28px 0 25px;
	font-size: 14px;
	font-weight: 750;
	letter-spacing: .01em;
}

.breaking-line { background: var(--khmerline-background-soft); }
.site-main { padding-top: 34px; }
.homepage-section { margin-bottom: 44px; padding-bottom: 44px; }

.section-title {
	display: flex;
	align-items: center;
	gap: 14px;
	font-size: 23px;
	font-weight: 850;
	letter-spacing: -.04em;
	color: var(--khmerline-text);
}

.section-title::after {
	flex: 1;
	width: auto;
	height: 1px;
	margin: 0;
	background: var(--khmerline-border);
}

.lead-grid {
	grid-template-columns: minmax(0, 1.75fr) minmax(320px, .9fr);
	gap: 30px;
}

.lead-primary { padding-right: 0; }
.lead-image { margin: 0 0 20px; overflow: hidden; border-radius: 16px; }
.lead-image img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; transition: transform .35s ease; }
.lead-image:hover img { transform: scale(1.02); }
.lead-primary h1 { margin: 8px 0 12px; font-size: clamp(30px, 3.3vw, 48px); line-height: 1.08; letter-spacing: -.045em; }
.lead-excerpt { font-size: 16px; line-height: 1.65; }
.post-meta { margin-top: 12px; }

.lead-secondary {
	padding-left: 30px;
	border-left: 1px solid var(--khmerline-border-light);
}

.lead-secondary article {
	display: grid;
	grid-template-columns: 116px minmax(0, 1fr);
	gap: 15px;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

.secondary-thumb { overflow: hidden; border-radius: 10px; }
.secondary-thumb img { display: block; width: 100%; height: 100%; min-height: 94px; object-fit: cover; }
.lead-secondary h3 { margin: 5px 0 0; font-size: 18px; line-height: 1.28; letter-spacing: -.025em; }
.lead-secondary .post-meta { font-size: 12px; }

.khmerline-category {
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.latest-popular { grid-template-columns: minmax(0, 2fr) minmax(280px, .75fr); }
.latest-column { padding-right: 32px; }
.popular-column { padding-left: 32px; }

.latest-card-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px 20px;
}

.timeline-list.latest-card-grid article {
	display: block;
	padding: 0;
	border: 0;
}

.latest-thumb { display: block; margin-bottom: 11px; overflow: hidden; border-radius: 10px; background: var(--khmerline-background-soft); }
.latest-thumb img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.timeline-list.latest-card-grid h3 { margin: 5px 0 7px; font-size: 17px; font-weight: 750; line-height: 1.35; letter-spacing: -.02em; }
.timeline-list.latest-card-grid time { font-size: 12px; color: var(--khmerline-text-muted); }

.popular-list li { grid-template-columns: 30px 1fr; gap: 10px; padding: 15px 0; }
.popular-list span { width: 26px; height: 26px; border-radius: 50%; font-size: 12px; }
.popular-list a { font-size: 14px; font-weight: 700; line-height: 1.4; }

.category-grid { gap: 22px; }
.category-column,
.category-column:first-child,
.category-column:last-child { padding: 0; border: 0; }

.category-column-title {
	margin: 0 0 14px;
	padding-bottom: 10px;
	border-bottom: 3px solid var(--khmerline-gold);
	font-size: 18px;
	font-weight: 850;
	letter-spacing: -.025em;
}

.category-column article {
	display: grid;
	grid-template-columns: 84px minmax(0, 1fr);
	gap: 11px;
	padding: 12px 0;
}

.category-mini-thumb { overflow: hidden; border-radius: 8px; }
.category-mini-thumb img { display: block; width: 100%; height: 68px; object-fit: cover; }
.category-column h3 { margin: 0 0 4px; font-size: 14px; font-weight: 720; line-height: 1.32; letter-spacing: -.015em; }
.category-column time { font-size: 11px; color: var(--khmerline-text-muted); }
.category-column .more-link { margin-top: 12px; font-size: 13px; }

.archive-layout { max-width: var(--container); }
.archive-header { margin-bottom: 26px; padding-bottom: 16px; border-bottom-width: 3px; }
.archive-header h1 { font-size: clamp(30px, 4vw, 46px); font-weight: 900; letter-spacing: -.045em; }

.archive-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 30px 22px;
}

.archive-item,
.category .archive-item {
	display: block;
	min-width: 0;
	padding: 0;
	border: 0;
}

.archive-thumb,
.category .archive-thumb { display: block; margin: 0 0 12px; overflow: hidden; border-radius: 11px; background: var(--khmerline-background-soft); }
.archive-thumb img,
.category .archive-thumb img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .3s ease; }
.archive-thumb:hover img { transform: scale(1.035); }
.archive-item h2,
.category .archive-item h2 { margin: 5px 0 7px; font-size: 17px; font-weight: 780; line-height: 1.35; letter-spacing: -.025em; }
.archive-item .post-meta { margin-top: 7px; font-size: 11px; }
.archive-excerpt { display: none; }
.archive-list + .pagination,
.archive-list .pagination { grid-column: 1 / -1; }

.site-footer { background: #101014; }

@media (max-width: 1100px) {
	.archive-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.lead-secondary article { grid-template-columns: 96px minmax(0, 1fr); }
}

@media (max-width: 768px) {
	.admin-bar .site-header.is-sticky { top: 46px; }
	.header-main { min-height: 66px; }
	.kehaktompor-mark { width: 40px; height: 40px; font-size: 14px; }
	.kehaktompor-name { font-size: 18px; }
	.header-main .primary-navigation { border-bottom-color: var(--khmerline-border); }
	.nav-menu { gap: 0; }
	.nav-menu a { padding: 12px 10px; }
	.lead-grid,
	.latest-popular { display: block; }
	.lead-secondary,
	.popular-column { padding: 28px 0 0; margin-top: 28px; border-left: 0; border-top: 1px solid var(--khmerline-border); }
	.lead-secondary article { grid-template-columns: 112px minmax(0, 1fr); }
	.latest-column { padding-right: 0; }
	.archive-list,
	.category .archive-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 14px; }
	.category .archive-item.has-post-thumbnail { display: block; padding: 0; }
	.category .archive-thumb { margin-bottom: 10px; }
	.category .archive-thumb img { min-height: 0; aspect-ratio: 4 / 3; }
	.category .archive-item .khmerline-category { display: inline-block; }
	.category .archive-item h2,
	.archive-item h2 { font-size: 15px; }
	.category-grid { grid-template-columns: 1fr; gap: 30px; }
	.category-column,
	.category-column:nth-child(n) { padding: 0; border-bottom: 0; }
}

@media (max-width: 480px) {
	.container { width: calc(100% - 24px); }
	.site-main { padding-top: 24px; }
	.lead-primary h1 { font-size: 28px; }
	.latest-card-grid { grid-template-columns: 1fr; }
	.timeline-list.latest-card-grid article { display: grid; grid-template-columns: 118px minmax(0, 1fr); gap: 12px; }
	.latest-thumb { margin: 0; }
	.latest-thumb img { height: 94px; aspect-ratio: auto; }
	.archive-list,
	.category .archive-list { gap: 22px 12px; }
	.archive-item h2,
	.category .archive-item h2 { font-size: 14px; line-height: 1.34; }
	.archive-item .khmerline-category { font-size: 9px; }
	.archive-item .post-meta { font-size: 10px; }
}
