/* C01 guide: compact, readable content without changing the shared site shell. */
.guide-page { max-width: 980px; }
.guide-hero { margin-bottom: 28px; }
.guide-hero .lead { max-width: 760px; }
.guide-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(240px, .34fr); gap: 18px; align-items: start; }
.guide-panel { background: var(--surface); border: 1px solid var(--line); border-radius: 16px; padding: 22px; box-shadow: var(--shadow); }
.guide-panel + .guide-panel { margin-top: 18px; }
.guide-panel h2 { font-size: 1.45rem; margin-bottom: 10px; }
.guide-panel h3 { margin-top: 22px; }
.guide-panel h3:first-child { margin-top: 0; }
.guide-panel p:last-child, .guide-panel ul:last-child, .guide-panel ol:last-child { margin-bottom: 0; }
.guide-panel li + li { margin-top: 7px; }
.guide-table { width: 100%; border-collapse: collapse; margin-top: 12px; }
.guide-table th, .guide-table td { border: 1px solid var(--line); padding: 9px 10px; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.guide-table th { background: var(--surface-muted); }
.guide-code { margin: 12px 0; padding: 14px; overflow-x: auto; border-radius: 10px; background: #101927; color: #eff6ff; font: .9rem/1.55 ui-monospace, SFMono-Regular, Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.guide-downloads { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.guide-downloads a { display: block; padding: 10px 12px; border: 1px solid #c3d4f0; border-radius: 9px; background: #f7faff; font-weight: 700; text-decoration: none; overflow-wrap: anywhere; }
.guide-downloads a:hover { background: #e9f1ff; }
.guide-steps { counter-reset: guide-step; list-style: none; padding: 0; }
.guide-steps li { counter-increment: guide-step; position: relative; padding: 0 0 0 42px; }
.guide-steps li::before { content: counter(guide-step); position: absolute; left: 0; top: .05em; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--primary); color: #fff; font-weight: 800; }
.guide-steps li + li { margin-top: 14px; }
.guide-kicker { color: var(--primary); font-size: .82rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.guide-small { color: var(--muted); font-size: .9rem; }
.guide-cta { margin-top: 16px; }
.guide-cta .button { display: inline-block; }
.guide-page .notice { margin-top: 16px; }
@media (max-width: 760px) {
  .guide-grid { grid-template-columns: 1fr; }
  .guide-panel { padding: 16px; }
  .guide-table { font-size: .92rem; }
  .guide-page { padding-top: 34px; }
}
