/* Survival Guide: short field-manual layout */

.guide-shell { align-items: start; display: grid; gap: var(--space-xl); grid-template-columns: 220px minmax(0, 1fr); margin: 0 auto; max-width: 1180px; }
.guide-sidebar { background: rgba(10, 10, 10, .86); border: 1px solid var(--border-main); box-shadow: var(--shadow-md); position: sticky; top: 110px; }
.guide-sidebar-top { border-bottom: 1px solid var(--border-dim); display: grid; font-family: var(--font-tech); gap: 3px; padding: var(--space-md); }
.guide-kicker, .guide-heading > span { color: var(--accent-primary); font-size: .78rem; letter-spacing: 1.5px; }
.guide-sidebar-top strong { color: var(--text-primary); font-family: var(--font-header); font-size: .9rem; }
.guide-version { color: var(--text-muted); font-size: .68rem; }
.guide-nav { display: grid; padding: var(--space-sm) 0; }
.guide-nav a { border-left: 2px solid transparent; color: var(--text-secondary); font-size: .78rem; padding: 9px var(--space-md); }
.guide-nav a:hover { background: rgba(230, 184, 0, .06); border-left-color: var(--accent-primary); color: var(--accent-secondary); }

.guide-document { min-width: 0; }
.guide-section { margin-bottom: 58px; scroll-margin-top: 135px; }
.guide-hero { border-bottom: 1px solid var(--border-main); padding: 18px 0 34px; }
.guide-hero h1 { color: #f0f0f0; font-family: var(--font-header); font-size: clamp(2.1rem, 5vw, 4.2rem); line-height: .98; letter-spacing: 1px; margin: 12px 0 18px; }
.guide-hero h1 em { color: var(--accent-secondary); font-style: normal; }
.guide-lede, .guide-intro { color: var(--text-secondary); font-family: var(--font-ui); line-height: 1.7; max-width: 760px; }
.guide-lede { font-size: 1.05rem; }
.guide-intro { margin-bottom: var(--space-lg); }
.guide-meta-row { display: flex; flex-wrap: wrap; gap: 8px; margin: var(--space-lg) 0; }
.guide-meta-row span { border: 1px solid var(--border-dim); color: var(--text-secondary); font-size: .67rem; padding: 5px 8px; }
.guide-meta-row i { color: var(--accent-secondary); margin-right: 3px; }
.guide-heading { align-items: baseline; border-bottom: 1px solid var(--border-main); display: flex; gap: var(--space-sm); margin-bottom: var(--space-md); padding-bottom: var(--space-sm); }
.guide-heading h2 { color: var(--text-primary); font-family: var(--font-header); font-size: clamp(1.35rem, 3vw, 2rem); letter-spacing: 1px; }

.guide-alert, .guide-callout { align-items: flex-start; border: 1px solid var(--border-dim); display: flex; gap: 12px; margin: var(--space-lg) 0; padding: 13px 15px; }
.guide-alert p, .guide-callout p, .guide-card p { color: var(--text-secondary); font-family: var(--font-ui); font-size: .86rem; line-height: 1.6; }
.guide-alert-danger { background: rgba(212, 77, 77, .08); border-color: rgba(212, 77, 77, .58); }
.guide-alert-danger i { color: var(--accent-primary); }
.guide-callout { background: rgba(52, 152, 219, .06); border-color: rgba(52, 152, 219, .4); }
.guide-callout > i { color: var(--accent-secondary); margin-top: 3px; }
.priority-strip, .base-order { align-items: center; background: var(--bg-deep); border: 1px solid var(--border-dim); display: flex; flex-wrap: wrap; gap: 12px; padding: 10px 12px; }
.priority-strip span, .base-order span { color: var(--text-muted); font-size: .7rem; }
.priority-strip b, .base-order b { color: var(--text-secondary); letter-spacing: .5px; }

.guide-grid { display: grid; gap: var(--space-md); }
.guide-grid.two-col { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.guide-grid.three-col { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.guide-card { background: var(--bg-panel); border: 1px solid var(--border-main); padding: var(--space-md); }
.guide-card h3 { color: var(--accent-secondary); font-family: var(--font-header); font-size: .96rem; letter-spacing: .4px; margin-bottom: 10px; }
.guide-card h3 i { color: var(--accent-primary); margin-right: 5px; }
.guide-note { border-left: 2px solid var(--accent-primary); margin-top: 12px; padding-left: 8px; }
.guide-checklist, .guide-bullets { display: grid; gap: 9px; list-style: none; }
.guide-checklist { counter-reset: item; }
.guide-checklist li, .guide-bullets li { color: var(--text-secondary); font-family: var(--font-ui); font-size: .84rem; line-height: 1.5; padding-left: 22px; position: relative; }
.guide-checklist li::before { color: var(--accent-primary); content: counter(item, decimal-leading-zero); counter-increment: item; font-family: var(--font-tech); font-size: .68rem; left: 0; position: absolute; top: 2px; }
.guide-bullets li::before { color: var(--accent-primary); content: '>'; left: 0; position: absolute; }
.guide-checklist b, .guide-bullets b { color: var(--text-primary); }
.guide-tool-link { color: var(--accent-secondary); display: inline-block; font-size: .68rem; letter-spacing: .6px; margin-top: 13px; }
.guide-tool-link:hover { color: #fff; }
.guide-tool-link.large { border: 1px solid var(--accent-primary); color: var(--accent-primary); padding: 10px 12px; }
.guide-tool-link.large:hover { background: var(--accent-primary); color: #fff; }

.station-table-wrap { border: 1px solid var(--border-main); margin-top: var(--space-md); overflow-x: auto; }
.station-table { border-collapse: collapse; min-width: 600px; width: 100%; }
.station-table th { background: rgba(0, 0, 0, .3); color: var(--text-muted); font-size: .65rem; letter-spacing: .7px; padding: 10px 12px; text-align: left; }
.station-table td { border-top: 1px solid var(--border-dim); color: var(--text-secondary); font-family: var(--font-ui); font-size: .8rem; line-height: 1.45; padding: 12px; vertical-align: top; }
.station-table td strong { color: var(--accent-secondary); font-family: var(--font-header); }
.source-line { margin-top: 14px; }
.source-line a, .guide-sources a { color: var(--accent-secondary); font-size: .72rem; letter-spacing: .5px; }
.source-line a:hover, .guide-sources a:hover { color: #fff; }

.base-order { border-color: rgba(230, 184, 0, .35); justify-content: space-between; margin-bottom: var(--space-md); }
.build-list { display: grid; gap: var(--space-sm); }
.build-card { background: var(--bg-panel); border: 1px solid var(--border-main); }
.build-card summary { align-items: center; cursor: pointer; display: flex; gap: 10px; list-style: none; padding: var(--space-md); }
.build-card summary::-webkit-details-marker { display: none; }
.build-card summary strong { color: var(--accent-secondary); font-family: var(--font-header); }
.build-card summary i { color: var(--text-muted); font-size: .7rem; margin-left: auto; transition: transform .15s; }
.build-card[open] summary i { transform: rotate(180deg); }
.build-role { color: var(--text-muted); font-size: .65rem; letter-spacing: .8px; }
.build-details { border-top: 1px solid var(--border-dim); padding: var(--space-md); }
.build-details p { color: var(--text-secondary); font-family: var(--font-ui); font-size: .82rem; line-height: 1.55; }
.build-details p + p { margin-top: 8px; }
.build-details b { color: var(--text-primary); font-size: .7rem; letter-spacing: .6px; }
.build-details a { color: var(--accent-secondary); display: inline-block; font-size: .68rem; letter-spacing: .6px; margin-top: 12px; }
.nbc-card { border-color: rgba(212, 77, 77, .55); }
.guide-sources { border-top: 1px solid var(--border-main); padding-top: var(--space-xl); }
.guide-sources > p { color: var(--text-secondary); font-family: var(--font-ui); font-size: .85rem; line-height: 1.6; margin-top: var(--space-lg); }
.guide-sources > ul { display: grid; gap: 8px; margin-top: var(--space-md); }

@media (max-width: 900px) {
    .guide-shell { display: block; }
    .guide-sidebar { background: var(--bg-deep); margin: -4px -4px var(--space-xl); position: sticky; top: 76px; z-index: 10; }
    .guide-sidebar-top { display: none; }
    .guide-nav { display: flex; overflow-x: auto; padding: 0; }
    .guide-nav a { border-bottom: 2px solid transparent; border-left: 0; flex: 0 0 auto; padding: 10px 12px; white-space: nowrap; }
    .guide-nav a:hover { border-bottom-color: var(--accent-primary); }
}

@media (max-width: 680px) {
    .guide-meta-row, .guide-grid.two-col, .guide-grid.three-col { display: grid; grid-template-columns: 1fr; }
    .priority-strip, .base-order { align-items: flex-start; display: grid; grid-template-columns: 1fr 1fr; }
    .guide-section { margin-bottom: 42px; }
    .guide-alert, .guide-callout { padding: 11px; }
}
