.gshot { margin: 24px 0 8px; }
.gshot img { display: block; width: 100%; height: auto; border: 1px solid var(--line-strong); border-radius: var(--radius); background: var(--paper); }
.gshot figcaption { margin-top: 8px; color: var(--muted); font-size: 13px; }
.gph { display: grid; grid-template-columns: 28px 1fr; gap: 12px; margin: 20px 0; padding: 18px 20px; border: 1.5px dashed var(--line-strong); border-radius: var(--radius); background: var(--mist); }
.gph p { margin: 0; font-size: 14px; color: var(--text); }
.gph__icon { width: 24px; height: 20px; margin-top: 2px; border: 1.5px solid var(--muted); border-radius: 4px; position: relative; }
.gph__icon::after { content: ""; position: absolute; inset: 4px 7px; border: 1.5px solid var(--muted); border-radius: 50%; }
.gmemo { margin: 20px 0; padding: 16px 20px; border-left: 3px solid var(--navy); background: var(--navy-tint); }
.gmemo p, .gmemo li { font-size: 14px; }
.gmemo p { margin: 0 0 8px; }
.gmemo p:last-child, .gmemo ul:last-child { margin-bottom: 0; }
.gcode { margin: 16px 0; padding: 14px 16px; overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); font: 13px/1.7 ui-monospace, SFMono-Regular, Menlo, monospace; color: var(--ink); }
.gcode code { padding: 0; border: 0; background: none; word-break: normal; white-space: pre-wrap; overflow-wrap: anywhere; }
.gcheck { list-style: none; padding-left: 0 !important; }
.gcheck li { display: grid; grid-template-columns: 26px 1fr; align-items: start; }
.gcheck__box { width: 16px; height: 16px; margin-top: 5px; border: 1.5px solid var(--ink); border-radius: 2px; }
.gcheck__text { min-width: 0; }
h3.gblock__label { margin-bottom: 12px; }
.gstep a { overflow-wrap: anywhere; }
