/* K4 shared editorial cards: archive, related reading and hub. */
:is(.k4-archive-page,.k4-single-page,.k4-delta-hub) .k4-card,
.k4-card {
 display:flex; flex-direction:column; min-width:0; height:100%; overflow:hidden;
 border:1px solid #343b40; border-radius:16px; background:#171e24;
 box-shadow:0 6px 20px #00000018; transition:border-color .2s,transform .2s,box-shadow .2s;
}
.k4-card .k4-card__media { display:block; position:relative; width:100%; aspect-ratio:16/9; overflow:hidden; background:#202a31; }
.k4-card .k4-card__image { display:block; width:100%; height:100%; object-fit:cover; transition:transform .3s; }
.k4-card .k4-card__placeholder { display:grid; place-items:center; height:100%; background:linear-gradient(125deg,#243039,#1b242b); color:#d8c38f; }
.k4-card .k4-card__placeholder span { border:1px solid #d8c38f40; border-radius:6px; padding:8px 14px; font-size:13px; letter-spacing:.12em; }
.k4-card .k4-card__body { display:flex; flex:1; flex-direction:column; min-width:0; gap:14px; padding:21px; }
.k4-card .k4-card__chips { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.k4-card .k4-chip { display:inline-flex; align-items:center; min-height:26px; padding:3px 8px; border-radius:5px; border:1px solid #ffffff12; background:#ffffff05; color:#aebac3; font-size:12px; line-height:1.5; }
.k4-card .k4-chip--accent { color:#decca3; border-color:#d8c38f30; background:#d8c38f0c; }
.k4-card .k4-card__title { margin:0; min-height:3.1em; font-size:18px; line-height:1.55; font-weight:650; letter-spacing:0; color:#edf0f2; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; overflow-wrap:anywhere; }
.k4-card .k4-card__title a { color:inherit; text-decoration:none; }
.k4-card .k4-card__excerpt { margin:0; min-height:5.4em; color:#b7c1c8; font-size:14px; line-height:1.8; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; overflow-wrap:anywhere; }
.k4-card .k4-card__meta { display:flex; align-items:center; margin-top:auto; padding-top:12px; border-top:1px solid #ffffff12; font-size:13px; }
.k4-card .k4-card__meta a { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:36px; color:#decda5; text-decoration:none; }
.k4-card .k4-card__meta a::after { content:'→'; font-size:18px; }
.k4-card a:focus-visible,.k4-more-card:focus-visible,.k4-single-links__item:focus-visible { outline:2px solid #e1cb95; outline-offset:-3px; border-radius:4px; }
@media (hover:hover) { .k4-card:hover { transform:translateY(-3px); border-color:#d8c38f70; box-shadow:0 12px 26px #00000030; } .k4-card:hover .k4-card__image { transform:scale(1.025); } }
.k4-single-related .k4-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.k4-single-related .k4-single-related__title { line-height:1.5; }
.k4-single-page .k4-single-links { padding:8px; border:1px solid #343b40; border-radius:14px; background:#171e24; }
.k4-single-page .k4-single-links__item { display:block; margin:0; padding:17px 13px; border:0; border-bottom:1px solid #ffffff12; border-radius:0; background:transparent; text-decoration:none; }
.k4-single-page .k4-single-links__item:last-child { border-bottom:0; }
.k4-single-page .k4-single-links__item strong { display:block; color:#e5d5af; font-size:14px; line-height:1.65; }
.k4-single-page .k4-single-links__item span { display:block; margin-top:6px; color:#afbbc4; font-size:13px; line-height:1.8; }
.k4-single-page .k4-single-links__item:hover { background:#ffffff04; }
@media(max-width:1099px) { .k4-single-related .k4-related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:639px) { .k4-single-related .k4-related-grid { grid-template-columns:1fr; gap:16px; } .k4-card .k4-card__body { padding:18px; } }
@media(prefers-reduced-motion:reduce) { .k4-card,.k4-card .k4-card__image { transition:none; } .k4-card:hover { transform:none; } }
