.resource-page{margin:40px 0 64px;min-width:0}.resource-page h1{font-size:clamp(1.9rem,4vw,3rem);line-height:1.2;letter-spacing:-.04em;margin:12px 0 18px}.resource-page h2{font-size:1.2rem;line-height:1.35;margin:0 0 14px}.resource-page h3{font-size:1rem;margin:24px 0 8px}.resource-page p{font-size:1rem;line-height:1.7}.resource-page a:focus-visible,.resource-hub-entry a:focus-visible,.resource-page input:focus-visible,.resource-page select:focus-visible,.resource-page button:focus-visible{outline:3px solid var(--lime);outline-offset:4px}.resource-intro{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:22px 0 30px;border-bottom:1px solid var(--line)}.resource-intro>div:first-child{max-width:760px}.resource-intro p:not(.eyebrow){color:var(--muted);margin:0}.resource-library-actions{display:flex;flex-direction:column;gap:12px;flex:none}.resource-library-actions>span{font-size:.875rem;color:var(--muted);text-align:center}.resource-filters{display:grid;grid-template-columns:minmax(220px,2fr) minmax(160px,1fr) auto;align-items:end;gap:14px;margin-top:0;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.resource-filters label{display:grid;gap:8px;font-size:.875rem;font-weight:700;min-width:0}.resource-filters input,.resource-filters select{width:100%;min-width:0;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--input);color:var(--paper);font-size:1rem}.resource-filters input::placeholder{color:var(--muted)}.resource-filters .button{min-height:48px}.resource-results-line{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:14px 0}.resource-results-line p{font-weight:700;margin:0}.resource-results-line a{min-height:44px;display:inline-flex;align-items:center;color:var(--muted);text-decoration:underline;text-underline-offset:5px}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.resource-card{display:flex;min-width:0;flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.resource-card-top{display:flex;align-items:start;justify-content:space-between;gap:10px;margin-bottom:20px;flex-wrap:wrap}.resource-game{font-size:.875rem;font-weight:750;color:var(--lime)}.resource-badge{font-size:.75rem;padding:3px 9px;background:var(--panel-2);border:1px solid var(--line);border-radius:6px;color:var(--muted)}.resource-card h2 a{display:block}.resource-card h2 a:hover{color:var(--lime)}.resource-card>p{color:var(--muted);margin:0 0 20px}.resource-card dl{margin:0 0 22px}.resource-page dl>div{margin:0 0 12px}.resource-page dt{font-size:.8125rem;color:var(--muted)}.resource-page dd{font-size:.9375rem;margin:2px 0 0;overflow-wrap:anywhere}.resource-card-bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:12px}.resource-card-bottom>span{font-size:.75rem;color:var(--muted)}.resource-detail-link{min-height:44px;display:inline-flex;align-items:center;font-size:.875rem;font-weight:750;color:var(--lime)}.resource-notice{margin-top:24px;border-inline-start:3px solid var(--lime);padding:18px 22px;background:var(--panel-2);border-radius:0 10px 10px 0}.resource-notice p{color:var(--muted);margin:0}.resource-notice p+p{margin-top:10px}.resource-back{display:inline-flex;align-items:center;min-height:44px;color:var(--muted);font-size:.9375rem}.resource-detail-header{margin:22px 0 30px}.resource-detail-header>p{color:var(--muted)}.resource-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:32px;align-items:start}.resource-instructions{min-width:0}.resource-instructions>section{padding:26px;border:1px solid var(--line);border-radius:14px;background:var(--panel);margin-bottom:20px}.resource-instructions ol{margin:0;padding-inline-start:24px;font-size:1rem;line-height:1.8}.resource-instructions li{padding-inline-start:6px;margin:12px 0;overflow-wrap:anywhere}.resource-instructions li:last-child{margin-bottom:0}.resource-download-panel{padding:24px;min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.resource-download-panel .button{display:flex;justify-content:center;width:100%;min-height:48px;margin:10px 0;padding:12px;text-align:center}.resource-download-panel dl{padding-top:18px;border-top:1px solid var(--line)}.resource-download-panel p{font-size:.9375rem;overflow-wrap:anywhere}.resource-page .resource-note{font-size:.875rem;color:var(--muted)}.resource-source-link{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere;word-break:break-word;color:var(--lime);text-decoration:underline;text-underline-offset:4px}.resource-checksum{display:block;overflow-wrap:anywhere;font-size:.8125rem;line-height:1.7;padding:10px;background:var(--input);border:1px solid var(--line);border-radius:8px;direction:ltr;text-align:left}.resource-hub-entry{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:28px 0 60px;padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.resource-hub-entry h2{font-size:1.2rem;margin:0 0 5px}.resource-hub-entry p{font-size:1rem;color:var(--muted);margin:0}.resource-hub-entry .button{min-height:48px;flex:none}
.resource-categories{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:8px;margin:24px 0 20px;padding:0 0 16px;border-bottom:1px solid var(--line);scroll-margin-top:100px}
.resource-category.chip{display:inline-flex;align-items:center;justify-content:center;gap:6px;max-width:100%;background:transparent;white-space:nowrap}
.resource-category-count{font:inherit;font-variant-numeric:tabular-nums}
@media(max-width:760px){.resource-categories{gap:6px;margin:20px 0 16px;padding-block:4px 12px}.resource-page .resource-filters{grid-template-columns:minmax(0,1fr)}}
/* Preserve the existing bottom-tab mappings; the new entry is in the desktop/mobile menu. */
.resource-page h1,.resource-page h2{word-break:keep-all;overflow-wrap:anywhere}
@media(min-width:1121px) and (max-width:1504px){.site-header .primary-nav{gap:2px}.site-header .primary-nav :is(a, button[data-desktop-chat-trigger]){padding-inline:8px;font-size:12px}}
@media(min-width:1121px) and (max-width:1200px){.site-header .primary-nav :is(a, button[data-desktop-chat-trigger]){padding-inline:5px;font-size:11px}}
:root[data-theme=light] .resource-game,:root[data-theme=light] .resource-detail-link,:root[data-theme=light] .resource-source-link,:root[data-theme=light] .resource-page .eyebrow{color:#4e6b00}
@media(max-width:1000px){.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.resource-detail-layout{grid-template-columns:minmax(0,1fr) 300px;gap:20px}}
@media(max-width:760px){.resource-page{margin:22px 0 50px}.resource-intro{align-items:stretch;flex-direction:column;gap:20px;padding:12px 0 24px}.resource-library-actions{align-items:start;flex-wrap:wrap;flex-direction:row;align-items:center}.resource-filters{padding:16px;gap:14px}.resource-filters>label:first-child{grid-column:1/-1}.resource-filters>.button{grid-column:1/-1}.resource-grid{grid-template-columns:1fr;gap:14px}.resource-card{padding:20px}.resource-detail-layout{grid-template-columns:1fr;gap:20px}.resource-download-panel{grid-row:1}.resource-instructions>section{padding:20px}.resource-detail-header{margin:14px 0 24px}.resource-hub-entry{align-items:stretch;flex-direction:column;padding:20px;gap:16px}.resource-notice{padding:16px 18px}.resource-grid>.empty{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.resource-page{scroll-behavior:auto}}

.resource-game {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}
.resource-game > span:last-child {
  min-width: 0;
  overflow-wrap: anywhere;
}
.resource-game-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  overflow: hidden;
  border-radius: 4px;
}
.resource-game-mark img { display: block; width: 100%; height: 100%; object-fit: contain; }
.resource-game-mark-artwork img { object-fit: cover; }
.resource-game-mark-icon { background: #101217; }

.resource-card-image { margin: 0 0 18px; }
.resource-card-image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 8px;
  background: var(--panel-2);
}
.resource-card-image figcaption {
  font-size: .75rem;
  line-height: 1.4;
  color: var(--muted);
  padding-top: 4px;
  overflow-wrap: anywhere;
}
.resource-card-image figcaption a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Reserve matching text rows without shortening the stored resource content. */
.resource-card h2 { min-width: 0; flex-shrink: 0; }
.resource-card h2 a > span,
.resource-card dt,
.resource-card dd {
  display: block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.resource-card > p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  height: 3.4em;
  flex-shrink: 0;
  overflow: hidden;
}
.resource-card .resource-card-top {
  flex-wrap: nowrap;
  align-items: center;
  min-height: 28px;
}
.resource-card .resource-game { flex: 1; }
.resource-card .resource-game > span:last-child,
.resource-card .resource-badge {
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.resource-card .resource-badge { flex: 0 1 auto; max-width: 50%; }
