/*! 快喵系列站点共用设计系统 v1.0
 *  与 kuaimaomv.com 主站保持同一视觉语言：暗色底 #0a101c，品牌渐变 #2AD5B4 → #1BA6FF
 */

:root {
	--km-bg: #0a101c;
	--km-bg-soft: #0e1626;
	--km-panel: #111b2e;
	--km-panel-2: #16233a;
	--km-line: rgba(120, 156, 200, .16);
	--km-line-strong: rgba(120, 156, 200, .28);
	--km-text: #d6deea;
	--km-text-dim: #93a3ba;
	--km-text-mute: #6d7d94;
	--km-white: #f2f7ff;
	--km-brand: #2ad5b4;
	--km-brand-2: #1ba6ff;
	--km-brand-grad: linear-gradient(135deg, #2ad5b4, #1ba6ff);
	--km-warn: #ffb648;
	--km-danger: #ff6b7a;
	--km-radius: 14px;
	--km-radius-sm: 9px;
	--km-shadow: 0 18px 44px rgba(2, 8, 20, .45);
	--km-wrap: 1180px;
	--km-font: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }

html { background: var(--km-bg); -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }

body {
	margin: 0;
	min-height: 100vh;
	color: var(--km-text);
	font-family: var(--km-font);
	font-size: 15px;
	line-height: 1.75;
	background:
		radial-gradient(900px 520px at 12% -8%, rgba(42, 213, 180, .10), transparent 62%),
		radial-gradient(760px 460px at 88% 4%, rgba(27, 166, 255, .10), transparent 60%),
		var(--km-bg);
	background-attachment: fixed;
	-webkit-font-smoothing: antialiased;
}

a { color: var(--km-brand-2); text-decoration: none; transition: color .18s ease; }
a:hover { color: var(--km-brand); }
img { max-width: 100%; height: auto; }
h1, h2, h3, h4 { color: var(--km-white); line-height: 1.32; margin: 0 0 .6em; font-weight: 700; letter-spacing: -.01em; }
p { margin: 0 0 1em; }
ul, ol { margin: 0 0 1em; padding-left: 1.35em; }
li { margin: .32em 0; }
code, pre { font-family: ui-monospace, SFMono-Regular, Consolas, "Courier New", monospace; }

.km-wrap { width: 100%; max-width: var(--km-wrap); margin: 0 auto; padding: 0 22px; }
.km-skip { position: absolute; left: -9999px; }
.km-skip:focus { left: 12px; top: 12px; z-index: 99; padding: 10px 16px; background: var(--km-panel); border-radius: 8px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }

/* ---------- 页头 ---------- */
.km-header {
	position: sticky; top: 0; z-index: 50;
	background: rgba(10, 16, 28, .82);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	border-bottom: 1px solid var(--km-line);
}
.km-header__inner { display: flex; align-items: center; gap: 26px; height: 66px; }
.km-brand { display: inline-flex; align-items: center; gap: 11px; color: var(--km-white); flex-shrink: 0; }
.km-brand:hover { color: var(--km-white); }
.km-brand__mark {
	width: 36px; height: 36px; border-radius: 11px;
	background: var(--km-brand-grad);
	display: grid; place-items: center;
	box-shadow: 0 6px 18px rgba(42, 213, 180, .28);
}
.km-brand__mark svg { display: block; }
.km-brand__text { display: flex; flex-direction: column; line-height: 1.15; }
.km-brand__text strong { font-size: 16px; font-weight: 700; letter-spacing: .01em; }
.km-brand__text small { font-size: 11px; color: var(--km-text-mute); letter-spacing: .08em; text-transform: uppercase; }

.km-nav { margin-left: auto; }
.km-nav__list { display: flex; align-items: center; gap: 4px; list-style: none; margin: 0; padding: 0; }
.km-nav__list > li { margin: 0; position: relative; }
.km-nav__list a {
	display: block; padding: 8px 13px; border-radius: 9px;
	color: var(--km-text-dim); font-size: 14px; white-space: nowrap;
}
.km-nav__list a:hover { color: var(--km-white); background: rgba(120, 156, 200, .10); }
.km-nav__list a.is-active { color: var(--km-white); background: rgba(42, 213, 180, .13); }
.km-nav__list .sub-menu {
	position: absolute; top: 100%; left: 0; min-width: 168px;
	list-style: none; margin: 0; padding: 6px;
	background: var(--km-panel); border: 1px solid var(--km-line-strong);
	border-radius: 11px; box-shadow: var(--km-shadow);
	opacity: 0; visibility: hidden; transform: translateY(6px);
	transition: all .16s ease;
}
.km-nav__list li:hover > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.km-header__actions { display: flex; align-items: center; gap: 10px; }

/* ---------- 按钮 ---------- */
.km-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 7px;
	padding: 9px 17px; border-radius: 9px; border: 1px solid transparent;
	font-size: 14px; font-weight: 600; font-family: inherit; cursor: pointer;
	transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.km-btn--primary { background: var(--km-brand-grad); color: #04121c; box-shadow: 0 8px 22px rgba(42, 213, 180, .26); }
.km-btn--primary:hover { color: #04121c; transform: translateY(-1px); box-shadow: 0 12px 26px rgba(42, 213, 180, .34); }
.km-btn--outline { border-color: var(--km-line-strong); color: var(--km-text); background: transparent; }
.km-btn--outline:hover { color: var(--km-white); border-color: rgba(42, 213, 180, .5); }
.km-btn--ghost { color: var(--km-text-dim); background: rgba(120, 156, 200, .10); }
.km-btn--ghost:hover { color: var(--km-white); background: rgba(120, 156, 200, .18); }
.km-btn--danger { color: var(--km-danger); border-color: rgba(255, 107, 122, .34); background: transparent; }
.km-btn--danger:hover { color: #fff; background: rgba(255, 107, 122, .18); }
.km-btn--lg { padding: 12px 24px; font-size: 15px; border-radius: 11px; }
.km-btn--sm { padding: 6px 12px; font-size: 13px; border-radius: 8px; }

.km-burger { display: none; width: 38px; height: 38px; border: 1px solid var(--km-line-strong); border-radius: 9px; background: transparent; cursor: pointer; padding: 9px; }
.km-burger span { display: block; height: 2px; background: var(--km-text); border-radius: 2px; margin: 3px 0; }

/* ---------- 主体 / 页面头 ---------- */
.km-main { padding: 0 0 70px; min-height: 60vh; }
.km-page-head { padding: 40px 0 26px; border-bottom: 1px solid var(--km-line); margin-bottom: 34px; background: linear-gradient(180deg, rgba(22, 35, 58, .55), transparent); }
.km-narrow { max-width: 880px; }
.km-crumbs { font-size: 12.5px; color: var(--km-text-mute); margin-bottom: 14px; }
.km-crumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; }
.km-crumbs li:not(:last-child)::after { content: "/"; margin-left: 6px; color: var(--km-text-mute); opacity: .5; }
.km-crumbs a { color: var(--km-text-dim); }
.km-crumbs span { color: var(--km-text-dim); }
.km-page-title { font-size: 30px; margin: 0 0 12px; }
.km-page-lead { color: var(--km-text-dim); font-size: 15.5px; max-width: 800px; margin: 0; }

.km-eyebrow { display: inline-flex; align-items: center; gap: 8px; font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--km-brand); margin: 0 0 14px; font-weight: 600; }
.km-eyebrow::before { content: ""; width: 22px; height: 2px; border-radius: 2px; background: var(--km-brand-grad); }

/* ---------- Hero ---------- */
.km-hero { padding: 62px 0 54px; position: relative; overflow: hidden; }
.km-hero__title { font-size: 42px; line-height: 1.2; margin: 0 0 16px; max-width: 780px; }
.km-hero__title span { background: var(--km-brand-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.km-hero__lead { font-size: 16.5px; color: var(--km-text-dim); max-width: 700px; margin: 0 0 26px; }
.km-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.km-hero__metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; list-style: none; margin: 42px 0 0; padding: 0; }
.km-hero__metrics li { background: rgba(22, 35, 58, .6); border: 1px solid var(--km-line); border-radius: var(--km-radius); padding: 16px 18px; }
.km-hero__metrics strong { display: block; font-size: 24px; color: var(--km-white); font-weight: 700; }
.km-hero__metrics strong em { font-style: normal; font-size: 13px; color: var(--km-brand); margin-left: 3px; }
.km-hero__metrics span { font-size: 12.5px; color: var(--km-text-mute); }

/* ---------- 区块标题 ---------- */
.km-section { padding: 46px 0; }
.km-section__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 24px; flex-wrap: wrap; }
.km-section__title { font-size: 24px; margin: 0; }
.km-section__desc { color: var(--km-text-mute); font-size: 14px; margin: 6px 0 0; }
.km-section__more { font-size: 14px; color: var(--km-text-dim); }
.km-section__more:hover { color: var(--km-brand); }

/* ---------- 卡片 ---------- */
.km-grid { display: grid; gap: 16px; }
.km-grid--2 { grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); }
.km-grid--3 { grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); }
.km-grid--4 { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }

.km-card {
	background: linear-gradient(180deg, rgba(22, 35, 58, .78), rgba(17, 27, 46, .78));
	border: 1px solid var(--km-line);
	border-radius: var(--km-radius);
	padding: 20px 22px;
	transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.km-card:hover { border-color: rgba(42, 213, 180, .38); transform: translateY(-2px); box-shadow: var(--km-shadow); }
.km-card h3 { font-size: 17px; margin: 0 0 8px; }
.km-card p { color: var(--km-text-dim); font-size: 14px; margin: 0 0 12px; }
.km-card--flat:hover { transform: none; box-shadow: none; }
.km-card__icon { width: 40px; height: 40px; border-radius: 11px; display: grid; place-items: center; background: rgba(42, 213, 180, .13); color: var(--km-brand); margin-bottom: 14px; font-weight: 700; }

/* ---------- 列表条目 ---------- */
.km-list { list-style: none; margin: 0; padding: 0; }
.km-list__item { border-bottom: 1px solid var(--km-line); padding: 18px 0; display: flex; gap: 16px; align-items: flex-start; }
.km-list__item:last-child { border-bottom: 0; }
.km-list__body { flex: 1; min-width: 0; }
.km-list__title { font-size: 16.5px; font-weight: 600; margin: 0 0 6px; color: var(--km-white); display: block; }
.km-list__title:hover { color: var(--km-brand); }
.km-list__excerpt { color: var(--km-text-dim); font-size: 14px; margin: 0 0 8px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.km-list__meta { display: flex; flex-wrap: wrap; gap: 12px; font-size: 12.5px; color: var(--km-text-mute); }
.km-list__meta a { color: var(--km-text-mute); }
.km-list__meta a:hover { color: var(--km-brand); }

.km-tag { display: inline-flex; align-items: center; gap: 5px; padding: 3px 10px; border-radius: 999px; font-size: 12px; background: rgba(42, 213, 180, .12); color: var(--km-brand); border: 1px solid rgba(42, 213, 180, .22); }
.km-tag--ghost { background: transparent; color: var(--km-text-dim); border-color: var(--km-line-strong); }
.km-tag--blue { background: rgba(27, 166, 255, .12); color: var(--km-brand-2); border-color: rgba(27, 166, 255, .22); }

/* ---------- 表单 ---------- */
.km-form { display: grid; gap: 14px; }
.km-field { display: grid; gap: 6px; }
.km-field > label { font-size: 13.5px; color: var(--km-text-dim); font-weight: 600; }
.km-field .km-hint { font-size: 12px; color: var(--km-text-mute); }
.km-input, .km-textarea, .km-select {
	width: 100%; padding: 10px 13px;
	background: rgba(10, 16, 28, .8);
	border: 1px solid var(--km-line-strong); border-radius: var(--km-radius-sm);
	color: var(--km-white); font-family: inherit; font-size: 14px; line-height: 1.6;
	transition: border-color .16s ease, box-shadow .16s ease;
}
.km-input:focus, .km-textarea:focus, .km-select:focus {
	outline: 0; border-color: rgba(42, 213, 180, .6); box-shadow: 0 0 0 3px rgba(42, 213, 180, .12);
}
.km-textarea { min-height: 220px; resize: vertical; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 13.5px; }
.km-input::placeholder, .km-textarea::placeholder { color: var(--km-text-mute); }
.km-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.km-counter { font-size: 12px; color: var(--km-text-mute); text-align: right; }
.km-counter.is-warn { color: var(--km-warn); }
.km-counter.is-over { color: var(--km-danger); }

.km-alert { padding: 12px 16px; border-radius: var(--km-radius-sm); font-size: 14px; border: 1px solid; margin-bottom: 18px; }
.km-alert--ok { background: rgba(42, 213, 180, .1); border-color: rgba(42, 213, 180, .3); color: #9df3dd; }
.km-alert--err { background: rgba(255, 107, 122, .1); border-color: rgba(255, 107, 122, .3); color: #ffb6bd; }
.km-alert--info { background: rgba(27, 166, 255, .1); border-color: rgba(27, 166, 255, .28); color: #b6ddff; }

/* ---------- 表格 ---------- */
.km-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.km-table th, .km-table td { text-align: left; padding: 11px 12px; border-bottom: 1px solid var(--km-line); vertical-align: middle; }
.km-table th { font-size: 12.5px; text-transform: uppercase; letter-spacing: .06em; color: var(--km-text-mute); font-weight: 600; }
.km-table td { color: var(--km-text-dim); }
.km-table tr:hover td { background: rgba(120, 156, 200, .04); }
.km-table .km-actions { display: flex; gap: 8px; justify-content: flex-end; }

/* ---------- 分页 ---------- */
.km-pager { display: flex; gap: 8px; justify-content: center; margin: 34px 0 0; flex-wrap: wrap; }
.km-pager a, .km-pager span {
	min-width: 38px; height: 38px; padding: 0 13px;
	display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid var(--km-line-strong); border-radius: 9px;
	color: var(--km-text-dim); font-size: 14px;
}
.km-pager a:hover { color: var(--km-white); border-color: rgba(42, 213, 180, .5); }
.km-pager .is-current { background: var(--km-brand-grad); color: #04121c; border-color: transparent; font-weight: 700; }

/* ---------- 正文排版 ---------- */
.km-entry { max-width: 860px; }
.km-entry__body { font-size: 15.5px; line-height: 1.92; }
.km-entry__body h2 { font-size: 21px; margin: 34px 0 12px; padding-left: 12px; border-left: 3px solid var(--km-brand); }
.km-entry__body h3 { font-size: 17px; margin: 26px 0 10px; color: var(--km-white); }
.km-entry__body ul, .km-entry__body ol { padding-left: 1.4em; }
.km-entry__body li { margin: .4em 0; }
.km-entry__body blockquote { margin: 20px 0; padding: 14px 18px; border-left: 3px solid var(--km-brand-2); background: rgba(27, 166, 255, .07); border-radius: 0 10px 10px 0; color: var(--km-text-dim); }
.km-entry__body table { width: 100%; border-collapse: collapse; margin: 20px 0; font-size: 14px; }
.km-entry__body th, .km-entry__body td { border: 1px solid var(--km-line); padding: 10px 12px; }
.km-entry__body th { background: rgba(120, 156, 200, .08); color: var(--km-white); }
.km-entry__body code { background: rgba(120, 156, 200, .14); padding: 2px 6px; border-radius: 5px; font-size: 13px; }
.km-entry__body pre { background: rgba(10, 16, 28, .9); border: 1px solid var(--km-line); border-radius: 10px; padding: 14px 16px; overflow-x: auto; }

.km-answer { background: linear-gradient(180deg, rgba(42, 213, 180, .07), rgba(17, 27, 46, .6)); border: 1px solid rgba(42, 213, 180, .24); border-radius: var(--km-radius); padding: 24px 26px; margin: 26px 0 0; }
.km-answer__label { display: inline-flex; align-items: center; gap: 7px; font-size: 12.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--km-brand); font-weight: 700; margin-bottom: 12px; }

.km-meta-bar { display: flex; flex-wrap: wrap; gap: 14px; font-size: 13px; color: var(--km-text-mute); padding: 14px 0; border-bottom: 1px solid var(--km-line); margin-bottom: 26px; }

/* ---------- 页脚 ---------- */
.km-footer { border-top: 1px solid var(--km-line); background: rgba(8, 13, 23, .72); padding: 46px 0 26px; margin-top: 30px; }
.km-footer__top { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 32px; }
.km-footer__brandname { font-size: 16px; font-weight: 700; color: var(--km-white); margin: 12px 0 8px; }
.km-footer__about { color: var(--km-text-mute); font-size: 13.5px; max-width: 320px; }
.km-footer__col-title { font-size: 13px; text-transform: uppercase; letter-spacing: .1em; color: var(--km-text-mute); margin: 0 0 12px; }
.km-footer__links { list-style: none; margin: 0; padding: 0; }
.km-footer__links li { margin: 0 0 8px; }
.km-footer__links a { color: var(--km-text-dim); font-size: 13.5px; }
.km-footer__links a:hover { color: var(--km-brand); }
.km-footer__bottom { border-top: 1px solid var(--km-line); margin-top: 30px; padding-top: 18px; display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; font-size: 12.5px; color: var(--km-text-mute); }
.km-footer__bottom a { color: var(--km-text-mute); }

/* ---------- 后台 ---------- */
.km-admin { max-width: 1180px; margin: 0 auto; padding: 30px 22px 70px; }
.km-admin__bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 24px; padding-bottom: 16px; border-bottom: 1px solid var(--km-line); }
.km-admin__title { font-size: 21px; margin: 0; }
.km-admin__panel { background: var(--km-panel); border: 1px solid var(--km-line); border-radius: var(--km-radius); padding: 24px; margin-bottom: 24px; }
.km-admin__panel h2 { font-size: 16px; margin: 0 0 18px; }
.km-login { max-width: 400px; margin: 80px auto; }
.km-empty { padding: 46px 0; text-align: center; color: var(--km-text-mute); font-size: 14px; }

/* ---------- 响应式 ---------- */
@media (max-width: 900px) {
	.km-footer__top { grid-template-columns: 1fr 1fr; }
	.km-hero__title { font-size: 32px; }
	.km-page-title { font-size: 24px; }
	.km-row { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
	.km-header__inner { height: 58px; gap: 12px; }
	.km-burger { display: block; margin-left: auto; }
	.km-nav {
		display: none; position: absolute; left: 0; right: 0; top: 100%;
		background: var(--km-panel); border-bottom: 1px solid var(--km-line-strong);
		padding: 10px 16px; margin: 0;
	}
	.km-nav.is-open { display: block; }
	.km-nav__list { flex-direction: column; align-items: stretch; gap: 2px; }
	.km-nav__list .sub-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0; padding-left: 14px; background: transparent; }
	.km-header__actions .km-btn--ghost { display: none; }
	.km-hero { padding: 40px 0 34px; }
	.km-hero__title { font-size: 27px; }
	.km-footer__top { grid-template-columns: 1fr; gap: 24px; }
	.km-list__item { flex-direction: column; gap: 8px; }
}

/* ===== 补充分件：下拉框 / 操作组 / 指标强调 ===== */
.km-select{
	width:100%;padding:11px 13px;border-radius:10px;
	background:var(--km-bg-soft);color:var(--km-text);
	border:1px solid var(--km-line);font-size:14px;font-family:inherit;
	-webkit-appearance:none;appearance:none;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%237f93a8' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat:no-repeat;background-position:right 13px center;padding-right:34px;
}
.km-select:focus{outline:none;border-color:var(--km-brand);box-shadow:0 0 0 3px rgba(42,213,180,.14)}
.km-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.km-hint{color:var(--km-text-mute);font-size:12px;font-weight:400}
.km-hero__metrics em{font-style:normal;font-size:13px;color:var(--km-brand);margin-left:2px}
.km-card.is-focus{background:rgba(42,213,180,.06)}

/* ================= 门户资讯站专属 ================= */
.km-search { display: flex; align-items: center; gap: 0; border: 1px solid var(--km-line-strong); border-radius: 9px; background: rgba(10,16,28,.6); overflow: hidden; }
.km-search__input { width: 150px; padding: 8px 12px; border: 0; background: transparent; color: var(--km-text); font-size: 13px; font-family: inherit; outline: none; }
.km-search__input::placeholder { color: var(--km-text-mute); }
.km-search__btn { display: grid; place-items: center; width: 34px; height: 32px; border: 0; background: transparent; color: var(--km-text-mute); cursor: pointer; }
.km-search__btn:hover { color: var(--km-brand); }

.km-hero-card { display: block; background: linear-gradient(150deg, rgba(42,213,180,.10), rgba(27,166,255,.07) 55%, rgba(17,27,46,.85)); border: 1px solid var(--km-line-strong); border-radius: var(--km-radius); overflow: hidden; color: inherit; transition: border-color .2s ease, transform .2s ease; min-height: 268px; }
.km-hero-card:hover { border-color: rgba(42,213,180,.42); transform: translateY(-2px); }
.km-hero-card__body { padding: 26px 28px 24px; display: flex; flex-direction: column; gap: 12px; height: 100%; }
.km-hero-card__body h1, .km-hero-card__body h2 { font-size: 25px; line-height: 1.34; margin: 0; color: var(--km-white); }
.km-hero-card__body p { color: var(--km-text-dim); font-size: 14.5px; line-height: 1.8; margin: 0; }
.km-hero-card__body .km-section__more { margin-top: auto; }

.km-aside { display: grid; gap: 16px; }
.km-aside__title { font-size: 14.5px; margin: 0 0 12px; color: var(--km-white); display: flex; align-items: center; gap: 8px; }
.km-aside__title::before { content: ""; width: 3px; height: 13px; border-radius: 2px; background: var(--km-brand-grad); }
.km-aside__list { list-style: none; margin: 0; padding: 0; }
.km-aside__list li { margin: 0; padding: 9px 0; border-bottom: 1px dashed var(--km-line); font-size: 13.5px; display: flex; align-items: baseline; gap: 6px; flex-wrap: wrap; }
.km-aside__list li:last-child { border-bottom: 0; }
.km-aside__list a { color: var(--km-text-dim); line-height: 1.6; }
.km-aside__list a:hover { color: var(--km-brand); }
.km-aside__list--tight li { font-size: 13px; }
.km-aside__date { color: var(--km-text-mute); font-size: 11.5px; margin-left: auto; }
.km-aside__count { margin-left: auto; color: var(--km-text-mute); font-size: 11.5px; }
.km-aside__rank { display: inline-grid; place-items: center; width: 17px; height: 17px; border-radius: 5px; background: rgba(120,156,200,.14); color: var(--km-text-mute); font-size: 11px; flex-shrink: 0; }
.km-aside__list li:nth-child(-n+3) .km-aside__rank { background: rgba(42,213,180,.16); color: var(--km-brand); }

.km-entry { max-width: 100%; background: var(--km-panel); border: 1px solid var(--km-line); border-radius: var(--km-radius); padding: 30px 34px 26px; }
.km-entry__head h1 { font-size: 28px; line-height: 1.42; margin: 0 0 4px; }
.km-entry__lead { font-size: 15px; color: var(--km-text-dim); background: rgba(120,156,200,.07); border-left: 3px solid var(--km-brand); padding: 13px 16px; border-radius: 0 9px 9px 0; margin: 0 0 24px; line-height: 1.82; }
.km-entry__foot { margin-top: 34px; padding-top: 18px; border-top: 1px solid var(--km-line); }
.km-entry__foot a { font-size: 13.5px; }

.km-post-row .km-list__title a { color: var(--km-white); }
.km-post-row .km-list__title a:hover { color: var(--km-brand); }
.km-post-row .km-list__meta { margin-bottom: 7px; }

@media (max-width: 980px) {
	.km-main > .km-wrap { display: block !important; }
	.km-main > .km-wrap > aside { margin-top: 22px; }
	.km-hero-card { min-height: 0; }
	.km-hero-card__body h1, .km-hero-card__body h1, .km-hero-card__body h2 { font-size: 21px; }
	.km-entry { padding: 22px 20px; }
	.km-entry__head h1 { font-size: 22px; }
}
@media (max-width: 680px) {
	.km-search__input { width: 92px; }
	.km-header__actions { margin-left: 0; }
	.km-aside__list li { font-size: 13px; }
}
.km-hero-card__body h1 { margin: 0; }
