/* The film map. Black ground; every colour authored here has B = 0 (no blue
   light); no link is underlined in any state. */
#container.one-column:has(.m-page) #content { width: auto; max-width: 80rem; margin: 0 auto 36px; }
.m-page, .m-page * { box-sizing: border-box; }
.m-page { background: var(--neon-ground); color: var(--neon-ink); padding: 16px; font-size: 18px; line-height: 1.45; }
.m-page a, .m-page a:hover, .m-page a:focus, .m-page a:active, .m-page a:visited { text-decoration: none; color: var(--neon-tube); }
.m-page a:hover, .m-page a:focus, .m-page a:focus-visible { color: var(--neon-tube-lit); text-shadow: var(--neon-halo); }
#content .m-page .m-lede { margin: 0 0 12px; color: var(--neon-ink); }
.m-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.m-chip { background: var(--neon-ground); color: var(--neon-ink); border: 1px solid var(--neon-frame); padding: 4px 9px; font: inherit; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; }
.m-chip[aria-pressed="false"] { color: var(--neon-ink-dim); border-color: var(--neon-unlit); }
.m-chip[aria-pressed="false"] svg { opacity: 0.35; }
.m-chip:hover, .m-chip:focus-visible { border-color: var(--neon-tube-lit); box-shadow: var(--neon-halo-box); }
.m-n { color: var(--neon-ink-dim); }
.m-stage { position: relative; border: 1px solid var(--neon-frame); background: var(--neon-ground); }
#m-svg { display: block; width: 100%; height: auto; max-height: 78vh; cursor: grab; touch-action: none; background: var(--neon-ground); }
#m-svg.m-drag { cursor: grabbing; }
.m-state { fill: var(--neon-ground); stroke: var(--neon-unlit); stroke-width: 1; vector-effect: non-scaling-stroke; }
.m-ohio { fill: var(--neon-ground); stroke: var(--neon-tube); stroke-width: 1.5; vector-effect: non-scaling-stroke; }
.m-pin { cursor: pointer; outline: none; }
.m-pin .m-glyph { stroke: var(--neon-ground); stroke-width: 1; vector-effect: non-scaling-stroke; }
.m-pin:hover .m-glyph, .m-pin:focus .m-glyph { stroke: var(--neon-ink-strong); filter: drop-shadow(0 0 3px var(--neon-tube)); }
.m-pin.m-on .m-glyph { stroke: var(--neon-ink-strong); stroke-width: 2; }
.m-pin.m-off, .m-row.m-off { display: none; }
.m-zoom { position: absolute; right: 8px; top: 8px; display: flex; flex-direction: column; gap: 4px; }
.m-zoom button { background: var(--neon-ground); color: var(--neon-ink); border: 1px solid var(--neon-frame); min-width: 34px; padding: 4px 6px; font: inherit; cursor: pointer; }
.m-zoom button:hover, .m-zoom button:focus-visible { border-color: var(--neon-tube-lit); box-shadow: var(--neon-halo-box); }
#content .m-page .m-detail { border: 1px solid var(--neon-frame); margin: 10px 0; padding: 10px 12px; min-height: 3.2em; color: var(--neon-ink); }
.m-detail strong { color: var(--neon-ink-strong); font-size: 1.1em; }
#content .m-page .m-h { color: var(--neon-tube); margin: 18px 0 6px; font-size: 1.15em; }
.m-count { color: var(--neon-ink-dim); font-weight: normal; font-size: 0.85em; }
.m-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(21rem, 1fr)); gap: 8px; }
.m-row { border: 1px solid var(--neon-unlit); padding: 8px 10px; display: flex; flex-direction: column; gap: 2px; }
.m-row.m-hit { border-color: var(--neon-ink-strong); }
.m-name { color: var(--neon-ink-strong); font-weight: bold; }
.m-meta, .m-where, .m-src { color: var(--neon-ink-dim); font-size: 0.9em; }
.m-src a { color: var(--neon-tube); }
#content .m-page .m-foot { color: var(--neon-ink-dim); font-size: 0.85em; margin-top: 18px; }
#content .m-page code { color: var(--neon-ink); background: var(--neon-ground); padding: 0 3px; }
.m-sets { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.m-set { color: var(--neon-ink); border: 1px solid var(--neon-frame); padding: 4px 10px; text-decoration: none; }
.m-set:hover, .m-set:focus-visible { border-color: var(--neon-tube-lit); box-shadow: var(--neon-halo-box); }
.m-set.is-current { border-color: var(--neon-tube-lit); color: var(--neon-tube-lit); }
