:root{
	--fk-ink:#101114;
	--fk-muted:#61646B;
	--fk-border:#E7E8EA;
	--fk-bg:#fff;
	--fk-soft:#F7F8FA;
	--fk-accent:#0B57D0;

	--fk-radius:14px;
	--fk-shadow:0 6px 18px rgba(16,17,20,.08);

	--fk-content:720px;
	--fk-wide:1120px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
	margin:0;
	color:var(--fk-ink);
	background:var(--fk-bg);
	font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji;
	line-height:1.55;
	-webkit-font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}

.fk-sr{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.fk-skip{position:absolute;left:-9999px;top:0;background:var(--fk-ink);color:#fff;padding:.5rem .75rem;border-radius:10px;z-index:999}
.fk-skip:focus{left:12px;top:12px}

.fk-container{width:100%;max-width:var(--fk-wide);margin:0 auto;padding:0 16px}
.fk-main{padding:18px 0 30px}
.fk-stack>*+*{margin-top:14px}
.fk-row{display:flex;gap:10px;align-items:center}
.fk-row--between{justify-content:space-between}
.fk-row--wrap{flex-wrap:wrap}
.fk-dot{color:var(--fk-border)}

.fk-muted{color:var(--fk-muted)}
.fk-link{color:var(--fk-accent);text-decoration:none}
.fk-link:hover{text-decoration:underline}

.fk-btn{
	border:1px solid var(--fk-border);
	background:var(--fk-ink);
	color:#fff;
	border-radius:999px;
	padding:.55rem .85rem;
	font-weight:600;
	cursor:pointer;
	text-decoration:none;
	display:inline-flex;
	align-items:center;
	gap:.4rem;
}
.fk-btn:hover{opacity:.92}
.fk-btn--soft{background:var(--fk-soft);color:var(--fk-ink)}
.fk-btn--xs{padding:.35rem .6rem;font-size:.875rem}

.fk-input{
	border:1px solid var(--fk-border);
	border-radius:999px;
	padding:.55rem .75rem;
	width:100%;
	max-width:360px;
}
.fk-input--mini{max-width:220px;padding:.45rem .65rem}

.fk-header{
	position:sticky;top:0;z-index:90;
	background:rgba(255,255,255,.92);
	backdrop-filter:saturate(180%) blur(10px);
	border-bottom:1px solid var(--fk-border);
}
.fk-header__inner{padding:12px 16px;display:flex;gap:14px;align-items:center;justify-content:space-between}
.fk-brand{color:var(--fk-ink);text-decoration:none;font-weight:800;letter-spacing:-.02em}
.fk-brand__name{font-size:1.05rem}
.fk-nav__list, .fk-subnav__list, .fk-footer__menu, .fk-nav__pills{list-style:none;margin:0;padding:0;display:flex;gap:12px;flex-wrap:wrap}
.fk-nav__list a, .fk-subnav__list a, .fk-footer__menu a, .fk-nav__pills a{
	color:var(--fk-ink);text-decoration:none;font-weight:600;padding:.35rem .55rem;border-radius:999px
}
.fk-nav--pills .fk-nav__pills a{background:var(--fk-soft)}
.fk-subnav{border-top:1px solid var(--fk-border);background:#fff}
.fk-subnav .fk-container{padding-top:10px;padding-bottom:10px}
.fk-pagehead{padding:8px 0}
.fk-h1{font-size:1.6rem;line-height:1.2;margin:0}

.fk-footer{border-top:1px solid var(--fk-border);padding:18px 0;background:#fff}
.fk-footer__small{font-size:.925rem}

.fk-tabs{border:1px solid var(--fk-border);border-radius:var(--fk-radius);overflow:hidden;background:#fff}
.fk-tabs__head{display:flex;gap:0;border-bottom:1px solid var(--fk-border)}
.fk-tab{
	flex:1;border:0;background:#fff;padding:.75rem .9rem;
	font-weight:800;cursor:pointer
}
.fk-tab.is-active{background:var(--fk-soft)}
.fk-tabpanel{display:none;padding:14px}
.fk-tabpanel.is-active{display:block}

.fk-hero__grid{display:grid;grid-template-columns:1.4fr .6fr;gap:14px}
.fk-hero__link{text-decoration:none;color:inherit;display:block;border:1px solid var(--fk-border);border-radius:var(--fk-radius);overflow:hidden;box-shadow:var(--fk-shadow)}
.fk-hero__media{background:var(--fk-soft)}
.fk-hero__img{width:100%;height:auto}
.fk-hero__body{padding:14px}
.fk-hero__title{margin:0 0 8px 0;font-size:1.35rem;line-height:1.2}
.fk-hero__side{display:flex;flex-direction:column;gap:10px}
.fk-hero__mini-link{text-decoration:none;color:inherit;border:1px solid var(--fk-border);border-radius:var(--fk-radius);padding:12px;background:#fff}
.fk-hero__mini-title{font-weight:800;line-height:1.25}
.fk-hero__mini-meta{font-size:.9rem}

.fk-feed{display:flex;flex-direction:column;gap:12px}
.fk-card{
	border:1px solid var(--fk-border);
	border-radius:var(--fk-radius);
	background:#fff;
	overflow:hidden;
}
.fk-card__link{display:grid;grid-template-columns:1fr 180px;gap:12px;text-decoration:none;color:inherit;padding:12px}
.fk-card__title{margin:0 0 6px 0;font-size:1.15rem;line-height:1.25}
.fk-card__excerpt{margin:0 0 10px 0}
.fk-card__media{display:flex;align-items:center;justify-content:center}
.fk-card__img{width:100%;height:120px;object-fit:cover;border-radius:12px}
.fk-card__actions{padding:0 12px 12px}

.fk-article{max-width:var(--fk-content)}
.fk-article__title{font-size:2rem;line-height:1.12;margin:0}
.fk-article__hero{margin:0}
.fk-article__img{width:100%;border-radius:var(--fk-radius);border:1px solid var(--fk-border)}
.fk-prose{font-size:1.05rem}
.fk-prose p{margin:0 0 14px}
.fk-tags{display:flex;gap:10px;flex-wrap:wrap}
.fk-tag{background:var(--fk-soft);color:var(--fk-ink);text-decoration:none;padding:.35rem .6rem;border-radius:999px;border:1px solid var(--fk-border);font-weight:700}

.fk-pagination{padding:10px 0}
.fk-pagination .page-numbers{display:inline-block;padding:.35rem .55rem;border:1px solid var(--fk-border);border-radius:10px;text-decoration:none;color:var(--fk-ink);margin-right:6px}
.fk-pagination .current{background:var(--fk-soft);font-weight:800}

.is-hidden-desktop{display:block}
.is-hidden-mobile{display:block}
@media (max-width: 840px){
	.fk-hero__grid{grid-template-columns:1fr}
	.fk-card__link{grid-template-columns:1fr}
	.fk-card__img{height:180px}
}
@media (max-width: 640px){
	.is-hidden-mobile{display:none !important}
	.fk-header__inner{padding:10px 12px}
	.fk-article__title{font-size:1.65rem}
}
@media (min-width: 641px){
	.is-hidden-desktop{display:none !important}
}

/* Skeleton */
.fk-skeleton{border:1px dashed var(--fk-border);border-radius:var(--fk-radius);padding:14px;background:var(--fk-soft);min-height:120px}
.fk-skeleton--list{min-height:220px}