/* hotelx Games Hub — .hxgh 配下にスコープ（Cocoon の本文装飾と干渉させない） */
.hxgh { --ink: #14213d; --ink2: #4a5670; --paper: #f6f3ec; --line: #e2dccd; --brass: #b08d3c; --brass2: #d9b45a; --navy: #0f1b33;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif; color: var(--ink); line-height: 1.6; }
.hxgh * , .hxgh *::before, .hxgh *::after { box-sizing: border-box; }
.hxgh p { margin: 0 0 18px !important; }
.hxgh .hxgh-lead { font-size: 15px; color: var(--ink2); }

.hxgh .hxgh-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); gap: 18px; }

/* カード全体がリンク。テーマのリンク色・下線・ホバー装飾を打ち消す */
.hxgh a.hxgh-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: 14px; overflow: hidden;
  color: var(--ink) !important; text-decoration: none !important; box-shadow: 0 2px 8px rgba(20, 33, 61, .08); transition: transform .15s, box-shadow .15s; }
.hxgh a.hxgh-card:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(20, 33, 61, .16); color: var(--ink) !important; }
.hxgh a.hxgh-card:focus-visible { outline: 3px solid var(--brass2); outline-offset: 2px; }

.hxgh .hxgh-thumb { display: block; aspect-ratio: 1200 / 630; background: var(--navy); overflow: hidden; }
.hxgh .hxgh-thumb img { display: block; width: 100% !important; height: 100% !important; object-fit: cover; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }

.hxgh .hxgh-body { display: flex; flex-direction: column; gap: 8px; padding: 16px 18px 18px; flex: 1; }
.hxgh .hxgh-label { font-size: 12px; font-weight: 700; letter-spacing: .08em; color: var(--brass); }
.hxgh .hxgh-title { display: block; font-size: 20px; font-weight: 800; line-height: 1.4; color: var(--navy); }
.hxgh .hxgh-desc { display: block; font-size: 14px; color: var(--ink2); }
.hxgh .hxgh-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 2px; }
.hxgh .hxgh-tag { font-size: 11.5px; font-weight: 600; background: var(--paper); border: 1px solid var(--line); border-radius: 999px; padding: 1px 10px; color: var(--ink2); }
.hxgh .hxgh-cta { margin-top: auto; padding-top: 10px; align-self: flex-start; font-weight: 800; font-size: 14px; color: #1b1405;
  background: linear-gradient(180deg, var(--brass2), var(--brass)); border-radius: 999px; padding: 8px 20px; box-shadow: 0 3px 0 #8a6b25; }

/* このページではアイキャッチ（OGP用に設定しているだけ）を本文上部に出さない */
body.hxgh-page .eye-catch-wrap, body.hxgh-page .entry-content > .eye-catch, body.hxgh-page figure.eye-catch { display: none !important; }
/* リンク集には投稿日・読了時間は不要（タイトルは残す） */
body.hxgh-page .read-time, body.hxgh-page .date-tags { display: none !important; }
body.hxgh-page #toc, body.hxgh-page .toc { display: none !important; }
/* AdSense の自動アノテーションが説明文の中にリンクバッジを差し込むのを防ぐ */
.hxgh .google-anno, .hxgh [class*="google-anno"] { display: none !important; }
