/* Guide-only layout: shared navigation and legal pages retain their own styles. */
.guide-page .guide-container { max-width: 1080px; padding-inline: 20px; }
.guide-intro { padding: 12px 0 24px; }
.guide-eyebrow { color: #67e8f9; font-size: .72rem; font-weight: 700; letter-spacing: .12em; }
.guide-page .guide-intro h1 { font-size: clamp(1.65rem, 4vw, 2.25rem); margin: 10px 0; }
.guide-page .guide-container p, .guide-page .guide-container li { color: #cbd5e1; font-size: 1rem; line-height: 1.65; }
.guide-page .guide-intro p { max-width: 65ch; }
.guide-page .guide-container strong { color: #f1f5f9; }
.guide-container a { color: #67e8f9; text-underline-offset: 3px; }
.guide-container a:hover { color: #cffafe; }
.guide-container a:focus-visible, .guide-container summary:focus-visible { outline: 3px solid #67e8f9; outline-offset: 4px; border-radius: 5px; }
.guide-start { display: inline-flex; gap: 9px; align-items: center; min-height: 44px; padding: 9px 15px; border: 1px solid #24768a; border-radius: 9px; background: #123443; text-decoration: none; font-weight: 600; }
.guide-toc { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-bottom: 24px; }
.guide-toc a { display: grid; grid-template-columns: 20px minmax(0, 1fr); align-items: center; gap: 9px; min-height: 54px; padding: 10px 13px; color: #e2e8f0; background: #1c2839; border: 1px solid #364458; border-radius: 9px; text-decoration: none; font-size: .9rem; line-height: 1.4; }
.guide-toc a:hover { background: #24374a; border-color: #4da5b9; }
.guide-toc a > span:first-child { color: #67e8f9; font-size: .75rem; font-weight: 700; }
.guide-toc small, .guide-pro { color: #fcd34d; background: #40391e; padding: 3px 6px; border-radius: 4px; font-size: .65rem; font-weight: 700; vertical-align: middle; white-space: nowrap; }
.guide-section { padding: 24px; margin-bottom: 16px; border: 1px solid #364458; border-radius: 13px; background: #1c2737; min-width: 0; }
.guide-section, .guide-subsection, #ghid { scroll-margin-top: 100px; }
.guide-section-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 15px; }
.guide-number { display: grid; place-items: center; flex: 0 0 32px; height: 32px; border: 1px solid #276779; border-radius: 8px; color: #67e8f9; background: #123443; font-size: .75rem; font-weight: 700; }
.guide-page .guide-section-heading h2 { margin: 0; font-size: 1.2rem; line-height: 1.45; }
.guide-page .guide-section h3 { margin: 0 0 8px; font-size: 1rem; }
.guide-steps { padding-left: 1.4rem; margin: 0 0 16px; }
.guide-steps li { padding-left: 5px; margin-bottom: 10px; }
.guide-steps li::marker { color: #67e8f9; font-weight: 700; }
.guide-page .guide-note { border-left: 3px solid #3b889b; padding: 9px 12px; background: #182231; font-size: .9rem; border-radius: 0 7px 7px 0; }
.guide-section > :last-child { margin-bottom: 0; }
.guide-format-grid, .guide-map-grid { display: grid; gap: 10px; margin: 16px 0; }
.guide-format-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.guide-map-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.guide-format-grid > div, .guide-map-grid > div { min-width: 0; padding: 14px; background: #142030; border: 1px solid #334458; border-radius: 9px; }
.guide-page .guide-format-grid p, .guide-page .guide-map-grid p { font-size: .92rem; }
.guide-container code { color: #a5f3fc; background: #111c2b; border-radius: 4px; padding: 2px 4px; overflow-wrap: anywhere; }
.guide-format-grid code { display: block; font-size: .83rem; padding: 8px; }
.guide-details { border-top: 1px solid #3a495b; }
.guide-details summary { padding: 15px 2px; min-height: 48px; color: #e2e8f0; font-weight: 600; font-size: .97rem; cursor: pointer; }
.guide-details summary::marker { color: #67e8f9; }
.guide-details[open] > summary { color: #67e8f9; }
.guide-detail-body { padding: 0 2px 12px 20px; }
.guide-detail-body > :last-child { margin-bottom: 0; }
.guide-figure { margin: 18px 0; text-align: center; }
.guide-figure a { display: inline-block; max-width: 100%; border-radius: 7px; overflow: hidden; background: #fff; }
.guide-figure img { display: block; width: 100%; max-width: 680px; height: auto; }
.guide-figure figcaption { color: #b5c4d6; font-size: .85rem; margin-top: 8px; }
.guide-subsection { padding-top: 20px; border-top: 1px solid #3a495b; }
.guide-layer-list { padding-left: 1.2rem; }
.guide-page .guide-layer-list li { margin-bottom: 12px; }
.guide-layer-list span { display: block; color: #9ecbd8; font-size: .85rem; }
.guide-page .guide-contact { padding-top: 16px; border-top: 1px solid #3a495b; }
.guide-back { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
@media (max-width: 767px) {
    .guide-page .guide-container { padding-inline: 14px; }
    .guide-toc { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .guide-toc a { padding: 10px; gap: 8px; }
    .guide-section { padding: 18px; }
    .guide-format-grid { grid-template-columns: 1fr; }
    .guide-map-grid { grid-template-columns: 1fr; }
    .guide-detail-body { padding-left: 6px; }
}
@media (max-width: 380px) {
    .guide-page .guide-container { padding-inline: 10px; }
    .guide-section { padding: 15px; }
    .guide-section-heading { gap: 9px; }
    .guide-page .guide-section-heading h2 { font-size: 1.1rem; }
    .guide-toc a { font-size: .83rem; }
}
@media print {
    .guide-toc, .guide-start, .guide-back { display: none; }
    .guide-section { break-inside: avoid; }
}
