/* Module-page extras on top of academy.css */
.diagram svg text { paint-order: stroke; stroke: var(--paper); stroke-width: 4px; stroke-linejoin: round; }
.callout ul { margin: .6rem 0 0; padding-left: 1.2rem; }
.callout li { margin-top: .35rem; }
.cat-compare { margin: 1rem 0 0; background: var(--paper); border-radius: var(--r); padding: .6rem; }
.cat-compare svg text { paint-order: stroke; stroke: var(--paper); stroke-width: 4px; }
.page ul { padding-left: 1.25rem; }
.page li { margin-top: .35rem; }
.buoy-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 1rem; margin-top: 1.4rem; }
.buoy-card { border: 1px solid var(--rule); border-radius: var(--r); background: var(--paper); padding: .8rem .8rem 1rem; }
.buoy-card svg { width: 100%; height: 150px; }
.buoy-card h4 { font: 600 1rem/1.25 var(--display); margin-top: .4rem; }
.buoy-card p { font-size: .84rem; line-height: 1.45; color: var(--ink-2); margin-top: .35rem; }
.buoy-card .fig { display: inline-block; margin-top: .45rem; font-size: .8rem; color: var(--magenta); }
.q .qfig { margin: .9rem 0 0; width: 180px; height: 150px; background: var(--paper); border-radius: var(--r); }
.lightrow { display: grid; grid-template-columns: 2.2rem 1fr auto; align-items: center; gap: .8rem; padding: .55rem 0; border-bottom: 1px solid var(--rule); }
.lightrow svg { width: 2.2rem; height: 2.2rem; }
.lightrow .fig { color: var(--magenta); font-size: .86rem; }
