/* Shared content affordances; scoped to the repaired public pages. */
[hidden] { display:none !important; }
.news-entry { border:1px solid #c9e3f5; border-radius:20px; background:#fff; margin:18px 0; overflow:hidden; }
.news-main { display:flex; align-items:center; gap:30px; padding:30px; color:inherit; }
.news-main > div { min-width:0; }
.news-main h3 { font-size:clamp(21px,2.1vw,26px); font-weight:800; line-height:1.5; letter-spacing:.02em; margin:8px 0 14px; }
.news-main p { color:#47677f; line-height:1.9; }
.news-image { width:clamp(180px,26vw,280px); flex-shrink:0; aspect-ratio:16/9; object-fit:contain; border-radius:14px; background:#ffffff80; }
.news-entry .news-read { margin:0 26px 24px; }
.content-cta { display:inline-flex; align-items:center; min-height:48px; gap:12px; margin-top:14px; color:#1266a8; font-size:15px; font-weight:700; text-decoration:underline; text-underline-offset:5px; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid #1266a8; outline-offset:5px; }
a.news-main:hover h3,.world-name a:hover { text-decoration:underline; text-underline-offset:5px; }
#wip .tool-article-card { background:#fff; padding:0; border:1px solid #c9e3f5; border-radius:20px; overflow:hidden; }
#wip .tool-article-card::before { display:none; }
#wip .tool-article-link { display:flex; flex-direction:column; height:100%; padding:24px; color:inherit; }
#wip .tool-article-cta { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; margin-top:auto; padding-top:18px; font-size:15px; font-weight:700; color:#1266a8; }
#wip .wip-status { margin:18px 0; }
#wip .tool-article-arrow { display:inline-flex; }
.world-preview { display:block; min-width:0; }
.world-preview .world-thumb { height:auto; }
.world-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.world-list-card { overflow:hidden; border:1px solid #c9e3f5; border-radius:24px; background:#fff; }
.world-list-card img { width:100%; aspect-ratio:16/9; object-fit:contain; background:#eaf6fc; }
.world-list-card .world-body { padding:24px; }
.world-list-card .world-name { font-size:22px; margin-bottom:12px; }
.world-list-card .world-desc { color:#47677f; line-height:1.9; }
.world-list-card .world-actions { display:flex; flex-wrap:wrap; gap:16px; margin-top:18px; }
.world-list-card .world-btn { display:inline-flex; align-items:center; min-height:48px; font-weight:700; color:#1266a8; text-decoration:underline; text-underline-offset:5px; }
.world-detail-image { margin-top:36px; }
.world-detail-image img { width:100%; height:auto; max-height:640px; object-fit:contain; border-radius:24px; }
.world-features { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; margin-top:24px; }
.world-features h3 { margin-bottom:12px; font-size:20px; }
.world-features p { color:#47677f; line-height:1.9; }
.world-facts { margin:24px 0; }
.world-facts > div { display:grid; grid-template-columns:180px 1fr; gap:24px; border-bottom:1px solid #c9e3f5; padding:18px 0; }
.world-facts dt { font-weight:700; }.world-facts dd { margin:0; }
.source-note { color:#47677f; font-size:14px; line-height:1.9; }
.project-index-card { display:block; color:inherit; padding:24px; margin:24px 0; border:1px solid #c9e3f5; border-radius:20px; text-decoration:none; background:#fff; }
.news-richtext { overflow-wrap:anywhere; line-height:1.9; }.news-richtext img { max-width:100%; height:auto; }.news-richtext a { text-decoration:underline; }.news-richtext ul { padding-left:1.5em; }.card-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }.card-tags span { padding:3px 9px; background:#eaf6fc; border-radius:6px; font-size:13px; }
.project-index-card:hover h2 { text-decoration:underline; text-underline-offset:5px; }
/* Restore the native pointer on legacy contact/support pages, including JS failure. */
body { cursor:auto; } a { cursor:pointer; }.cursor,.cursor-ring { display:none; }
@media (max-width:700px) {
 .world-list,.world-features { grid-template-columns:1fr; }
 .news-main { flex-direction:column; align-items:stretch; padding:20px; }
 .news-image { width:100%; }
 .world-facts > div { grid-template-columns:1fr; gap:4px; }
 #wip .wip-grid { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
 .project-index-card,.news-main,.world-preview,.contact-card,.support-card,.primary-btn { transition:none !important; transform:none !important; }
}

@media(max-width:600px) { .news-main { gap:20px; } .news-main .news-image { width:100%; max-height:220px; } }
