/* Project and workshop detail layouts; native, reusable CrocoBuilder nodes. */
.fm-games-page .fm-detail-pages { --detail-accent:#c6a0ef; --detail-tint:#c6a0ef0a; scroll-margin-top:55px; }
.fm-games-page .fm-article-detail { --detail-accent:#a2bce6; --detail-tint:#a2bce60a; }
.fm-games-page .fm-detail-pages p { color:#bfbac9; margin:0; line-height:1.8; }
.fm-games-page .fm-detail-pages h2 { margin:12px 0 18px; font-size:32px; }
.fm-games-page .fm-detail-pages h3 { font-size:25px; margin:10px 0 12px; }
.fm-games-page .fm-d-label { display:block; color:var(--detail-accent); font:11px/1.6 Consolas,monospace; letter-spacing:.1em; text-transform:uppercase; }
.fm-games-page .fm-d-code { color:#b3adbe; font:11px/1.6 Consolas,monospace; }
.fm-games-page .fm-detail-pages .fm-textlink { gap:12px; font-size:13px; min-height:44px; }
.fm-games-page .fm-detail-pages .fm-textlink svg { flex:none; width:17px; height:17px; }
.fm-games-page .fm-detail-pages > .fm-textlink { margin-bottom:18px; }
.fm-games-page .fm-detail-pages .fm-textlink:focus-visible { outline:2px solid var(--detail-accent); outline-offset:3px; }
.fm-games-page .fm-d-draft { display:flex; flex-wrap:wrap; align-items:center; gap:6px 18px; padding:12px 16px; border:1px solid #c6a0ef33; background:#c6a0ef08; margin-bottom:30px; font-size:12px; color:#c6c0d0; }
.fm-games-page .fm-d-hero { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,1fr); align-items:start; gap:48px; margin:8px 0 34px; }
.fm-games-page .fm-d-head-copy h1 { margin:14px 0 22px; }
.fm-games-page .fm-d-lead { max-width:58ch; }
.fm-games-page .fm-d-head-copy > .fm-action { margin-top:24px; max-width:310px; }
.fm-games-page .fm-d-factbox { border:1px solid #494250; border-top:2px solid var(--detail-accent); padding:24px; background:linear-gradient(135deg,var(--detail-tint),transparent),#18181f; box-shadow:0 4px 0 #08090c; }
.fm-games-page .fm-d-factbox h2 { font-size:28px; margin-bottom:12px; }
.fm-games-page .fm-d-facts { margin:0; }
.fm-games-page .fm-d-fact { display:flex; flex-wrap:wrap; gap:6px 14px; justify-content:space-between; padding:12px 0; border-bottom:1px solid #ffffff12; font-size:13px; }
.fm-games-page .fm-d-fact dt { color:#b9b3c5; font-weight:400; }
.fm-games-page .fm-d-fact dd { margin:0; color:#e4dcea; }
.fm-games-page .fm-detail-pages .fm-d-note { margin-top:14px; font-size:12px; color:#aaa4b5; }
.fm-games-page .fm-d-media { margin:0 0 26px; border:1px solid #484052; background:#16161d; }
.fm-games-page .fm-d-panelbar { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px; padding:12px 20px; border-bottom:1px solid #ffffff15; background:linear-gradient(#ffffff09,transparent); }
.fm-games-page .fm-d-game-image { display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; min-height:280px; padding:30px; background:linear-gradient(#c6a0ef07 1px,transparent 1px),linear-gradient(90deg,#c6a0ef07 1px,transparent 1px),radial-gradient(ellipse at center,#34233f77,transparent 65%); background-size:32px 32px,32px 32px,100% 100%; }
.fm-games-page .fm-d-crosshair { display:grid; place-items:center; width:52px; height:52px; color:var(--detail-accent); border:1px solid #c6a0ef55; font:26px/1 Consolas,monospace; }
.fm-games-page .fm-d-game-image h2 { margin:18px 0 10px; }
.fm-games-page .fm-d-game-image p { font-size:14px; }
.fm-games-page .fm-d-caption { padding:10px 20px; border-top:1px solid #ffffff10; color:#aaa3b5; font-size:12px; line-height:1.6; }
.fm-games-page .fm-d-jumps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding-bottom:24px; }
.fm-games-page .fm-d-jumps .fm-textlink { border-bottom:1px solid #ffffff20; }
.fm-games-page .fm-d-project-section { padding:32px 0; border-top:1px solid #ffffff15; scroll-margin-top:70px; }
.fm-games-page .fm-d-project-intro { max-width:70ch; scroll-margin-top:70px; }
.fm-games-page .fm-d-project-bits { display:grid; grid-template-columns:1fr 1fr; gap:28px; margin-top:26px; }
.fm-games-page .fm-d-project-bit { padding:20px 24px; border-left:2px solid #c6a0ef50; background:#c6a0ef05; }
.fm-games-page .fm-d-project-bit p { font-size:14px; }
.fm-games-page .fm-d-two { display:grid; grid-template-columns:1.2fr 1fr; gap:42px; align-items:start; }
.fm-games-page .fm-d-devnote { padding:22px; border:1px solid #46404e; background:#18171e; }
.fm-games-page .fm-d-devnote p { margin-top:12px; font-size:14px; }
.fm-games-page .fm-d-devnote .fm-textlink { margin-top:12px; }
.fm-games-page .fm-d-availability { margin-top:22px; padding:16px 20px; border-left:2px solid #82728f; background:#ffffff04; }
.fm-games-page .fm-d-availability p { margin-top:6px; font-size:14px; }
.fm-games-page .fm-d-end { display:grid; grid-template-columns:1.4fr 1fr; gap:36px; align-items:center; padding:28px; margin:16px 0 20px; border:1px solid #50415e; border-left:3px solid var(--detail-accent); background:linear-gradient(110deg,var(--detail-tint),transparent),#16151c; }
.fm-games-page .fm-d-end h2 { margin:10px 0 12px; }
.fm-games-page .fm-d-end p { font-size:14px; }
.fm-games-page .fm-d-end-actions { display:flex; flex-direction:column; gap:8px; }
.fm-games-page .fm-d-article-meta { display:flex; flex-wrap:wrap; align-items:center; gap:18px; }
.fm-games-page .fm-d-article-hero { border-bottom:1px solid #ffffff15; padding-bottom:34px; margin-bottom:0; }
.fm-games-page .fm-d-index { padding:22px 0 0 24px; border-left:1px solid #a2bce640; }
.fm-games-page .fm-d-index-links { display:flex; flex-direction:column; gap:4px; margin-top:14px; }
.fm-games-page .fm-d-index-links .fm-textlink { justify-content:space-between; border-bottom:1px solid #ffffff10; }
.fm-games-page .fm-d-prose { max-width:740px; padding:0 0 16px; }
.fm-games-page .fm-d-chapter { padding:32px 0 4px; scroll-margin-top:70px; }
.fm-games-page .fm-d-chapter p + p { margin-top:18px; }
.fm-games-page .fm-d-chapter p { max-width:68ch; font-size:16px; line-height:1.85; }
.fm-games-page .fm-d-takeaway { margin:30px 0 0; padding:24px 28px; border-left:3px solid var(--detail-accent); background:repeating-linear-gradient(135deg,transparent 0 7px,#a2bce603 7px 8px),linear-gradient(120deg,#202735,#171920); }
.fm-games-page .fm-d-takeaway h2 { font-size:36px; margin:12px 0; }
.fm-games-page .fm-d-takeaway p { font-size:14px; }
.fm-games-page .fm-detail-pages .fm-d-editor-note { font-size:12px; color:#a9a4b2; padding-top:20px; margin-top:22px; border-top:1px solid #ffffff12; }
.fm-games-page:is(.page-id-9,.page-id-14) .fm-footer-next { display:none; }
.fm-games-page.page-id-9 .fm-wp-nav .pb-nav__link[href*="page_id=8&"],
.fm-games-page.page-id-14 .fm-wp-nav .pb-nav__link[href*="page_id=13&"] {
 border-color:#8c67af; box-shadow:inset 0 -3px #b88ae8; background:linear-gradient(#45394f,#2a2432);
}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .fm-games-page .fm-d-jumps .fm-textlink,.fm-games-page .fm-d-index-links .fm-textlink { transition:border-color .18s ease,background-color .18s ease; }
 .fm-games-page .fm-d-jumps .fm-textlink:hover,.fm-games-page .fm-d-index-links .fm-textlink:hover { border-color:var(--detail-accent); background:var(--detail-tint); }
}
@media(min-width:768px) and (max-width:1024px) {
 .fm-games-page .fm-d-hero { grid-template-columns:1.2fr 1fr; gap:26px; }
 .fm-games-page .fm-d-head-copy h1 { font-size:42px; }
 .fm-games-page .fm-d-factbox { padding:20px; }
 .fm-games-page .fm-d-two { grid-template-columns:1fr 1fr; gap:26px; }
 .fm-games-page .fm-d-end { grid-template-columns:1fr 1fr; gap:24px; padding:24px; }
 .fm-games-page .fm-d-prose { max-width:660px; }
 .fm-games-page .fm-d-index { padding-left:20px; }
}
@media(max-width:767px) {
 .fm-games-page .fm-detail-pages > .fm-textlink { margin-bottom:12px; }
 .fm-games-page .fm-d-draft { margin-bottom:24px; padding:10px 12px; }
 .fm-games-page .fm-d-hero { grid-template-columns:1fr; gap:24px; margin-bottom:26px; }
 .fm-games-page .fm-d-head-copy h1 { font-size:36px; margin:12px 0 18px; }
 .fm-games-page .fm-d-head-copy > .fm-action { max-width:none; margin-top:20px; }
 .fm-games-page .fm-detail-pages h2 { font-size:27px; }
 .fm-games-page .fm-detail-pages h3 { font-size:24px; }
 .fm-games-page .fm-d-factbox { padding:18px; box-shadow:none; }
 .fm-games-page .fm-d-fact { padding:9px 0; }
 .fm-games-page .fm-d-game-image { min-height:200px; padding:22px 18px; }
 .fm-games-page .fm-d-panelbar,.fm-games-page .fm-d-caption { padding:10px 16px; }
 .fm-games-page .fm-d-crosshair { width:36px; height:36px; font-size:22px; }
 .fm-games-page .fm-d-jumps { grid-template-columns:1fr; gap:0; padding-bottom:20px; }
 .fm-games-page .fm-d-jumps .fm-textlink { justify-content:space-between; }
 .fm-games-page .fm-d-project-section { padding:26px 0; }
 .fm-games-page .fm-d-project-bits,.fm-games-page .fm-d-two { grid-template-columns:1fr; gap:18px; }
 .fm-games-page .fm-d-project-bit { padding:18px; }
 .fm-games-page .fm-d-devnote { padding:18px; }
 .fm-games-page .fm-d-end { grid-template-columns:1fr; gap:20px; padding:22px 18px; }
 .fm-games-page .fm-d-index { padding:18px; border:1px solid #a2bce633; background:#a2bce605; }
 .fm-games-page .fm-d-index-links { margin-top:8px; gap:0; }
 .fm-games-page .fm-d-article-hero { padding-bottom:26px; margin-bottom:0; }
 .fm-games-page .fm-d-chapter { padding-top:26px; }
 .fm-games-page .fm-d-chapter p { font-size:15px; line-height:1.85; }
 .fm-games-page .fm-d-takeaway { margin-top:26px; padding:20px; }
 .fm-games-page .fm-d-takeaway h2 { font-size:30px; }
}

/* FM-041: native disclosure puts the article before its optional navigation. */
.fm-games-page .fm-chapter-picker { border:1px solid #a2bce633; background:#a2bce605; align-self:start; }
.fm-games-page .fm-chapter-picker > summary { display:flex; justify-content:space-between; align-items:center; gap:14px; cursor:pointer; min-height:48px; padding:12px 16px; color:#d1def2; font-size:13px; }
.fm-games-page .fm-chapter-picker .fm-d-index { border:0; padding:0 16px 12px; background:none; }
.fm-games-page .fm-chapter-picker .fm-d-index-links { margin-top:0; }
.fm-games-page .fm-chapter-picker[open] .fm-picker-mark { transform:rotate(45deg); }
.fm-games-page .fm-chapter-picker .fm-picker-mark { font:20px/1 Consolas,monospace; }
@media(max-width:767px) {
 .fm-games-page .fm-d-article-hero { gap:18px; padding-bottom:20px; }
}
