.guide-page .site-header { height:96px; }
.guide-nav { display:flex; flex-wrap:wrap; gap:8px 24px; padding-block:16px; font-size:14px; font-weight:600; }
.guide-nav a { min-height:44px; display:inline-flex; align-items:center; border-bottom:2px solid transparent; }
.guide-nav a[aria-current=page] { color:var(--gold); border-color:var(--gold); }
.guide-disclaimer { color:var(--muted); font-size:12px; line-height:1.7; padding-block:12px; border-top:1px solid var(--line); }
.guide-main { max-width:1060px; padding-bottom:56px; }
.breadcrumbs { padding-top:24px; color:var(--muted); font-size:13px; }
.breadcrumbs ol { list-style:none; display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; }
.breadcrumbs li { display:inline-flex; align-items:center; gap:8px; }
.breadcrumbs li+li::before { content:'/'; color:var(--line); }
.breadcrumbs a { text-decoration:underline; text-underline-offset:4px; padding-block:8px; }
.guide-hero { padding-block:36px 48px; border-bottom:1px solid var(--line); }
.guide-hero h1 { font-family:var(--display); font-size:clamp(28px,4.6vw,54px); line-height:1.22; max-width:860px; letter-spacing:-1px; margin:16px 0 20px; overflow-wrap:anywhere; }
.guide-hero .eyebrow { font-size:12px; line-height:1.7; letter-spacing:1.4px; color:var(--gold); }
.guide-lead { font-size:clamp(18px,2vw,21px); line-height:1.65; color:var(--text); max-width:760px; }
.guide-byline { margin-block:20px 26px; color:var(--muted); font-size:13px; line-height:1.8; }
.guide-section { padding-block:36px; border-bottom:1px solid var(--line); scroll-margin-top:20px; }
.guide-section h2,.guide-toc h2,.guide-cta h2 { font-family:var(--display); font-size:clamp(21px,2.7vw,30px); line-height:1.4; margin-bottom:18px; letter-spacing:-.35px; }
.guide-section h3 { font-size:18px; line-height:1.4; }
.guide-section>p { margin-top:16px; max-width:80ch; font-size:17px; line-height:1.85; }
.guide-section a,.sources a { color:#ffd969; text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:1px; }
.guide-section a:hover,.sources a:hover { color:var(--text); }
.sources { display:block; color:var(--muted); font-size:13px; line-height:1.9; margin-top:12px; overflow-wrap:anywhere; }
.guide-section p .sources { margin-top:8px; }
.guide-timeline { list-style:none; padding:0; margin:26px 0; border:1px solid var(--line); border-radius:16px; overflow:hidden; }
.guide-timeline li { display:grid; grid-template-columns:94px 1fr; gap:18px; padding:24px; background:var(--panel); }
.guide-timeline li+li { border-top:1px solid var(--line); }
.guide-timeline time { color:var(--gold); font-family:var(--display); font-size:18px; }
.guide-timeline h3 { margin-bottom:8px; }
.guide-timeline p { color:var(--muted); font-size:15px; line-height:1.7; }
.guide-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:0; margin:24px 0 0; list-style:none; }
.guide-card { display:flex; height:100%; align-items:center; gap:16px; padding:18px; border:1px solid var(--line); border-top:3px solid var(--purple); border-radius:14px; background:var(--panel); text-decoration:none!important; color:var(--text)!important; }
.guide-card.pt { border-top-color:var(--red); }
.guide-card.pl { border-top-color:var(--blue); }
.guide-card:hover { border-color:var(--gold); background:var(--panel2); }
.guide-card img { flex-shrink:0; width:64px; height:80px; object-fit:contain; border-radius:8px; }
.guide-card h3 { margin:6px 0; font-size:17px; }
.guide-card p { font-size:13px; line-height:1.6; color:var(--muted); }
.guide-card-tag { display:block; font-size:11px; line-height:1.5; font-weight:600; color:var(--muted); }
.guide-card-link { display:block; margin-top:8px; color:var(--gold); font-size:12px; line-height:1.5; }
.has-portrait { display:grid; grid-template-columns:minmax(0,1fr) 220px; align-items:center; gap:36px; }
.guide-portrait { margin:0; display:flex; flex-direction:column; align-items:center; gap:18px; padding:28px 20px; background:var(--panel); border:1px solid var(--line); border-top:4px solid var(--purple); border-radius:18px; }
.guide-portrait.pt { border-top-color:var(--red); }
.guide-portrait.pl { border-top-color:var(--blue); }
.guide-portrait img { width:144px; height:180px; object-fit:contain; }
.guide-portrait figcaption { max-width:150px; color:var(--muted); font-size:12px; line-height:1.7; text-align:center; }
.guide-stats,.guide-definitions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:14px; overflow:hidden; margin:24px 0 0; }
.guide-stats>div,.guide-definitions>div { background:var(--panel); padding:20px; }
.guide-stats dt,.guide-definitions dt { font-size:13px; color:var(--muted); margin-bottom:8px; }
.guide-stats dd { margin:0; font-size:17px; font-weight:600; line-height:1.5; }
.guide-stats>div:nth-child(5) dd { font-size:15px; }
.guide-definitions { grid-template-columns:1fr; }
.guide-definitions dt { color:var(--gold); font-size:17px; font-weight:600; }
.guide-definitions dd { margin:0; font-size:16px; line-height:1.8; }
.guide-caption { font-size:13px!important; color:var(--muted); }
.guide-toc { margin-top:32px; padding:24px; border:1px solid var(--line); background:var(--panel); border-radius:16px; }
.guide-toc h2 { font-size:20px; }
.guide-toc ul { list-style:none; display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:0; }
.guide-toc a { display:inline-flex; align-items:center; padding:10px 12px; min-height:44px; border:1px solid var(--line); border-radius:8px; font-size:14px; color:var(--muted); }
.guide-toc a:hover { border-color:var(--gold); color:var(--gold); }
.game-note { display:block; background:var(--panel); border-left:3px solid var(--gold); padding:18px 20px; margin-top:20px; border-radius:0 12px 12px 0; font-size:15px; line-height:1.8; }
.game-note p+p { margin-top:10px; }
.guide-steps { padding-left:24px; margin:24px 0 0; }
.guide-steps li { padding-left:8px; margin-bottom:20px; font-size:17px; line-height:1.85; }
.guide-steps li::marker { color:var(--gold); font-weight:700; }
.guide-faq details { border:1px solid var(--line); border-radius:12px; background:var(--panel); margin-top:12px; padding:18px 20px; }
.guide-faq summary { cursor:pointer; font-weight:600; font-size:17px; line-height:1.6; min-height:28px; }
.guide-faq details[open] p { margin-top:16px; color:var(--muted); font-size:16px; line-height:1.85; }
.guide-cta { margin-top:48px; padding:32px; background:var(--panel); border:1px solid var(--line); border-radius:18px; }
.guide-cta .eyebrow { font-size:12px; color:var(--gold); margin-bottom:12px; }
.guide-cta p:not(.eyebrow) { color:var(--muted); line-height:1.8; margin-bottom:24px; max-width:60ch; }
.guide-link-list { padding-left:22px; line-height:2.8; }
.guide-page .site-footer { padding-bottom:28px; }
.guide-page .site-footer nav { gap:12px; }
.guide-page .site-footer nav a { display:inline-flex; align-items:center; min-height:44px; }
@media (max-width:1000px) { .guide-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) {
  .guide-page .wrap { width:calc(100% - 40px); }
  .guide-page .site-header { height:88px; gap:16px; }
  .guide-page .brand { font-size:12px; gap:8px; }
  .guide-page .brand>span>span { font-size:16px; }
  .guide-page .brand img { width:36px; height:36px; }
  .guide-page .site-header .button { font-size:11px; padding:10px 12px; gap:6px; }
  .guide-nav { gap:0 20px; font-size:13px; padding-block:10px; }
  .guide-hero { padding-block:28px 32px; }
  .guide-hero h1 { letter-spacing:-.5px; }
  .guide-lead { font-size:18px; }
  .guide-section { padding-block:28px; }
  .guide-section>p { font-size:16px; line-height:1.85; }
  .guide-card-grid { grid-template-columns:1fr; gap:12px; }
  .guide-card { padding:16px; }
  .guide-card img { width:72px; height:90px; }
  .guide-timeline li { grid-template-columns:70px 1fr; gap:14px; padding:20px 16px; }
  .guide-timeline time { font-size:15px; }
  .has-portrait { grid-template-columns:1fr; gap:24px; }
  .guide-portrait { flex-direction:row; justify-content:center; gap:24px; padding:20px; }
  .guide-portrait img { width:96px; height:120px; }
  .guide-portrait figcaption { max-width:130px; text-align:left; }
  .guide-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .guide-stats>div { padding:16px; }
  .guide-stats>div:nth-child(5) { grid-column:1/-1; }
  .guide-toc,.guide-cta { padding:20px; }
  .guide-page .site-footer nav { display:grid; grid-template-columns:1fr 1fr; }
}
@media (prefers-reduced-motion:reduce) { .guide-page *, .guide-page *::before, .guide-page *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }
