.game-page {padding: 24px 0 58px;}

.game-header {margin-bottom: 38px;}

.game-heading {margin-bottom: 20px;}

.game-platform {display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin: 0 0 4px; color: var(--muted); font: 700 12px/1.35 var(--head); letter-spacing: 0.45px; text-transform: uppercase;}

.game-platform a {color: var(--red); text-decoration: none;}

.game-platform a:hover {text-decoration: underline; text-underline-offset: 3px;}

.game-platform span {color: var(--muted);}

.game-heading h1 {margin: 0; overflow-wrap: anywhere; color: var(--text); font: 700 40px/1.06 var(--head); letter-spacing: -0.45px;}

.game-overview {display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 32px; align-items: start;}

.game-cover-column {min-width: 0;}

.game-cover {display: flex; align-items: center; justify-content: center; width: 190px; max-height: 270px; min-width: 0; overflow: hidden; border: 1px solid var(--line-dark); background: var(--surface2);}

.game-cover img {display: block; width: 100%; height: 100%; object-fit: contain; object-position: center;}

.game-cover-play {width: 100%; margin-top: 12px;}

.game-cover-column .play-note {display: block; margin-top: 7px; color: var(--muted); font: 400 11px/1.4 var(--body); text-align: center;}

.game-overview-content {min-width: 0;}

.game-facts {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 30px; margin: 0; padding: 2px 0 0;}

.game-facts > div {min-width: 0;}

.game-facts dt {margin: 0 0 4px; color: var(--text); font: 700 13px/1.35 var(--head);}

.game-facts dd {min-width: 0; margin: 0; overflow-wrap: anywhere; color: var(--text2); font: 400 14px/1.45 var(--body);}

.game-facts a {color: var(--blue); text-decoration: none;}

.game-facts a:hover {color: var(--red); text-decoration: underline; text-underline-offset: 3px;}

.game-subtitle {max-width: 820px; margin: 8px 0 0; font: 400 14px/1.6 var(--body);}

.btn-play {display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 42px; padding: 0 17px; border: 1px solid var(--line-dark); background: var(--red); color: #fff; font: 700 13px/1 var(--head); letter-spacing: 0.25px; text-decoration: none; text-transform: uppercase;}

.btn-play:hover {background: var(--text); color: var(--surface);}

.btn-play:focus-visible {outline: 2px solid var(--red); outline-offset: 3px;}

.btn-play-icon {font-size: 10px;}

.game-layout {display: grid; grid-template-columns: minmax(0, 1fr) 220px; gap: 46px; align-items: start;}

.game-main, .game-sidebar {min-width: 0;}

.game-section {margin: 0 0 42px;}

.game-section h2 {margin: 0 0 15px; color: var(--text); font: 700 24px/1.2 var(--head);}

.game-section-head {display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 16px;}

.game-section-head h2 {margin: 0;}

.game-section-count {flex: 0 0 auto; color: var(--muted); font: 500 12px/1.3 var(--body);}

.game-content {color: var(--text2);}

.game-content p {margin: 0 0 16px; font: 400 15px/1.72 var(--body);}

.game-content p:last-child {margin-bottom: 0;}

.game-content a {color: var(--red); text-decoration: underline; text-underline-offset: 3px;}

.game-content strong {color: var(--text);}

.cg-shots-grid {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px;}

.cg-shot {min-width: 0; margin: 0;}

.cg-shot-btn {display: block; width: 100%; padding: 0; border: 0; background: transparent; color: inherit; text-align: left; cursor: zoom-in;}

.cg-shot-image {position: relative; display: block; overflow: hidden; border: 1px solid var(--line-dark); background: #151515;}

.cg-shot-image img {display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; transition: filter 0.16s ease, opacity 0.16s ease;}

.cg-shot-view {position: absolute; right: 8px; bottom: 8px; display: block; padding: 4px 7px; border: 1px solid rgba(255, 255, 255, 0.8); background: rgba(20, 18, 15, 0.82); color: #fff; font: 700 10px/1 var(--head); letter-spacing: 0.8px; opacity: 0; transition: opacity 0.15s ease;}

.cg-shot-btn:hover .cg-shot-image img {filter: contrast(1.04);}

.cg-shot-btn:hover .cg-shot-view, .cg-shot-btn:focus-visible .cg-shot-view {opacity: 1;}

.cg-shot-btn:focus-visible {outline: 2px solid var(--red); outline-offset: 3px;}

.cg-shot figcaption {margin-top: 7px; font: 400 14px/1.45 var(--body);}

.cg-lightbox {position: fixed; z-index: 9999; inset: 0; display: flex; align-items: center; justify-content: center; padding: 24px; visibility: hidden; opacity: 0; pointer-events: none; transition: opacity 0.16s ease, visibility 0.16s ease;}

.cg-lightbox.is-open {visibility: visible; opacity: 1; pointer-events: auto;}

.cg-lightbox-backdrop {position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: rgba(13, 12, 10, 0.93); cursor: zoom-out;}

.cg-lightbox-dialog {position: relative; z-index: 2; display: flex; flex-direction: column; width: min(1180px, 100%); max-height: calc(100vh - 48px); border: 1px solid #5b554b; background: #171612; color: #f4eddd;}

.cg-lightbox-top {display: flex; align-items: center; justify-content: space-between; min-height: 42px; padding-left: 14px; border-bottom: 1px solid #4d483f;}

.cg-lightbox-count {color: #bdb4a2; font: 700 12px/1 var(--head); letter-spacing: 0.5px;}

.cg-lightbox-close {display: flex; align-items: center; justify-content: center; width: 44px; height: 41px; padding: 0; border: 0; border-left: 1px solid #4d483f; background: transparent; color: #f4eddd; font: 400 28px/1 var(--body); cursor: pointer;}

.cg-lightbox-close:hover {background: var(--red); color: #fff;}

.cg-lightbox-stage {position: relative; display: grid; grid-template-columns: 54px minmax(0, 1fr) 54px; align-items: center; min-height: 300px; max-height: calc(100vh - 150px); background: #0d0c0a;}

.cg-lightbox-image-wrap {display: flex; align-items: center; justify-content: center; min-width: 0; min-height: 0; padding: 18px 8px;}

.cg-lightbox-image {display: block; width: auto; height: auto; max-width: 100%; max-height: calc(100vh - 190px); object-fit: contain; transition: opacity 0.12s ease;}

.cg-lightbox-nav {display: flex; align-items: center; justify-content: center; width: 54px; height: 100%; padding: 0; border: 0; background: transparent; color: #d9d0bf; font: 400 42px/1 var(--body); cursor: pointer; transition: background 0.15s ease, color 0.15s ease;}

.cg-lightbox-nav:hover, .cg-lightbox-nav:focus-visible {background: rgba(255, 255, 255, 0.07); color: #fff;}

.cg-lightbox-nav:focus-visible, .cg-lightbox-close:focus-visible {outline: 2px solid var(--red); outline-offset: -3px;}

.cg-lightbox-caption {min-height: 42px; padding: 11px 14px; border-top: 1px solid #4d483f; color: #c5bcaa; font: 400 13px/1.5 var(--body);}

.info-card {margin: 0 0 28px;}

.info-card h2 {margin: 0; padding: 0 0 9px; border-bottom: 2px solid var(--line-dark); color: var(--text); font: 700 17px/1.25 var(--head);}

.info-list {margin: 0;}

.info-list > div {display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 11px; padding: 9px 0; border-bottom: 1px solid var(--line);}

.info-list dt {color: var(--muted); font: 400 12px/1.45 var(--body);}

.info-list dd {min-width: 0; margin: 0; overflow-wrap: anywhere; color: var(--text); font: 600 13px/1.45 var(--head);}

.info-list a {color: var(--text); text-decoration: none;}

.info-list a:hover {color: var(--red); text-decoration: underline; text-underline-offset: 3px;}

.game-facts .rating-fact {min-width: 0;}

.rating-widget {min-width: 0;}

.rating-summary {display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px;}

.rating-average-stars {--rating-percent: 0%; position: relative; display: inline-block; flex: 0 0 auto; color: var(--line); font: 700 17px/1 var(--body); letter-spacing: 1px; white-space: nowrap;}

.rating-average-stars::before {content: "★★★★★";}

.rating-average-stars::after {content: "★★★★★"; position: absolute; top: 0; left: 0; width: var(--rating-percent); overflow: hidden; color: var(--yellow); white-space: nowrap;}

.rating-score {color: var(--text); font: 700 14px/1.2 var(--head); white-space: nowrap;}

.rating-score small {color: var(--muted); font: 500 11px/1.2 var(--body);}

.rating-votes {color: var(--muted); font: 400 11px/1.35 var(--body); white-space: nowrap;}

.rating-actions {display: flex; align-items: center; gap: 6px; margin-top: 7px;}

.rating-label {color: var(--muted); font: 600 11px/1.2 var(--body); white-space: nowrap;}

.rating-stars {display: inline-flex; align-items: center; gap: 1px;}

.rating-star {appearance: none; display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; padding: 0; border: 0; background: transparent; color: var(--line-dark); font: 700 19px/1 var(--body); cursor: pointer; transition: color 0.12s ease, transform 0.12s ease;}

.rating-star:hover, .rating-star.is-active, .rating-star.is-selected {color: var(--yellow);}

.rating-star:hover {transform: translateY(-1px);}

.rating-star:focus-visible {outline: 2px solid var(--red); outline-offset: 2px;}

.rating-star:disabled {cursor: default; opacity: 0.65; transform: none;}

.rating-widget.is-loading .rating-star {pointer-events: none; opacity: 0.55;}

.rating-widget.is-rated .rating-star {cursor: default;}

.rating-message {flex-basis: 100%; min-height: 15px; margin-top: 1px; color: var(--muted); font: 400 11px/1.35 var(--body);}

.rating-message.is-success {color: #4f7b2f;}

.rating-message.is-error {color: var(--red);}

body.dark .rating-message.is-success {color: #9ecb72;}

@media (max-width: 520px) {
  .rating-summary {gap: 4px 6px;}

  .rating-average-stars {font-size: 15px; letter-spacing: 0.6px;}

  .rating-score {font-size: 12px;}

  .rating-score small, .rating-votes, .rating-label, .rating-message {font-size: 10px;}

  .rating-actions {gap: 4px; margin-top: 5px;}

  .rating-star {width: 18px; height: 18px; font-size: 17px;}
}

body.dark .game-controls {background: var(--surface);}

body.dark .cg-shot-image {background: #0c0c0a;}

@media (max-width: 920px) {
  .game-heading h1 {font-size: 36px;}

  .game-overview {grid-template-columns: 170px minmax(0, 1fr); gap: 26px;}

  .game-cover {width: 170px; max-height: 240px;}

  .game-facts {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 22px;}

  .game-layout {grid-template-columns: minmax(0, 1fr) 260px; gap: 32px;}
}

@media (max-width: 768px) {
  .game-subtitle {max-width: 700px;}

  .game-page {padding-top: 18px;}

  .game-heading {margin-bottom: 17px;}

  .game-heading h1 {font-size: 32px;}

  .game-overview {grid-template-columns: 150px minmax(0, 1fr); gap: 22px;}

  .game-cover {width: 150px; max-height: 215px;}

  .game-facts {gap: 14px 20px;}

  .game-layout {grid-template-columns: 1fr; gap: 38px;}

  .game-sidebar {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px;}

  .game-sidebar .info-card {margin-bottom: 0;}

  .game-sidebar .info-card:first-child {grid-row: span 2;}

  .cg-lightbox {padding: 12px;}

  .cg-lightbox-dialog {max-height: calc(100vh - 24px);}

  .cg-lightbox-stage {grid-template-columns: 44px minmax(0, 1fr) 44px; max-height: calc(100vh - 125px);}

  .cg-lightbox-nav {width: 44px; font-size: 34px;}

  .cg-lightbox-image {max-height: calc(100vh - 165px);}
}

@media (max-width: 520px) {
  .game-subtitle {margin-top: 6px; line-height: 1.5;}

  .game-page {padding-bottom: 42px;}

  .game-header {margin-bottom: 30px;}

  .game-heading {margin-bottom: 14px;}

  .game-platform {margin-bottom: 3px; font-size: 10px; letter-spacing: 0.35px;}

  .game-heading h1 {font-size: 28px; line-height: 1.08; letter-spacing: -0.25px;}

  .game-overview {grid-template-columns: 105px minmax(0, 1fr); gap: 15px;}

  .game-cover {width: 105px; max-height: 150px;}

  .game-cover-play {min-height: 38px; margin-top: 9px; padding: 0 8px; font-size: 11px;}

  .game-cover-column .play-note {margin-top: 6px; font-size: 10px; line-height: 1.3;}

  .game-facts {gap: 9px; padding-top: 0;}

  .game-facts dt {margin-bottom: 1px; font-size: 10px;}

  .game-facts dd {font-size: 12px; line-height: 1.35;}

  .game-section {margin-bottom: 34px;}

  .game-section h2 {font-size: 21px;}

  .game-content p {font-size: 14px; line-height: 1.7;}

  .cg-shots-grid {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px;}

  .cg-shot figcaption {font-size: 11px;}

  .cg-shot-view {display: none;}

  .game-sidebar {display: block;}

  .game-sidebar .info-card {margin-bottom: 27px;}

  .cg-lightbox {padding: 0;}

  .cg-lightbox-dialog {width: 100%; height: 100%; max-height: none; border: 0;}

  .cg-lightbox-top {flex: 0 0 44px;}

  .cg-lightbox-stage {flex: 1 1 auto; grid-template-columns: 38px minmax(0, 1fr) 38px; min-height: 0; max-height: none;}

  .cg-lightbox-image-wrap {padding: 8px 2px;}

  .cg-lightbox-image {max-height: calc(100vh - 118px);}

  .cg-lightbox-nav {width: 38px; font-size: 30px;}

  .cg-lightbox-caption {flex: 0 0 auto; min-height: 44px; padding: 10px 12px; font-size: 12px;}
}

@media (max-width: 380px) {
  .game-heading h1 {font-size: 25px;}

  .game-overview {grid-template-columns: 92px minmax(0, 1fr); gap: 12px;}

  .game-cover {width: 92px; max-height: 132px;}

  .game-cover-play {min-height: 36px; padding: 0 6px; font-size: 10px;}

  .game-cover-column .play-note {display: none;}

  .game-facts {gap: 8px;}

  .game-facts dt {font-size: 9px;}

  .game-facts dd {font-size: 11px;}

  .cg-shots-grid {gap: 7px;}
}

.sidebar-box {margin: 0 0 28px;}

.sidebar-box h2 {margin: 0 0 14px; padding: 0 0 9px; font-family: var(--head); font-size: 18px; font-weight: 700; line-height: 1.25; color: var(--text); border-bottom: 2px solid var(--line-dark);}

.sidebar-game-list {display: flex; flex-direction: column;}

.sidebar-game {display: grid; grid-template-columns: 60px minmax(0, 1fr); gap: 12px; align-items: center; padding: 12px 0; color: var(--text); text-decoration: none; border-bottom: 1px solid var(--line); transition: color 0.15s ease, background-color 0.15s ease;}

.sidebar-game:first-child {padding-top: 0;}

.sidebar-game:last-child {padding-bottom: 0; border-bottom: 0;}

.sidebar-game-cover {display: block; width: 60px; height: 84px; overflow: hidden; background: var(--surface2); border: 1px solid var(--line);}

.sidebar-game-cover img {display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.2s ease;}

.sidebar-game-info {display: flex; flex-direction: column; gap: 6px; min-width: 0;}

.sidebar-game-title {display: -webkit-box; overflow: hidden; font-family: var(--body); font-size: 15px; font-weight: 700; line-height: 1.35; color: var(--text); -webkit-box-orient: vertical; -webkit-line-clamp: 2; transition: color 0.15s ease;}

.sidebar-game-year {display: block; font-family: var(--body); font-size: 13px; font-weight: 500; line-height: 1.2; color: var(--muted);}

@media (hover: hover) {
  .sidebar-game:hover .sidebar-game-title {color: var(--red);}

  .sidebar-game:hover .sidebar-game-cover img {transform: scale(1.04);}
}

.sidebar-game:focus-visible {outline: 2px solid var(--red); outline-offset: 4px;}

@media (max-width: 768px) {
  .sidebar-box {margin-bottom: 24px;}

  .sidebar-box h2 {font-size: 17px;}

  .sidebar-game {grid-template-columns: 54px minmax(0, 1fr); gap: 11px; padding: 10px 0;}

  .sidebar-game-cover {width: 54px; height: 76px;}

  .sidebar-game-title {font-size: 14px;}

  .sidebar-game-year {font-size: 12px;}
}

.game-note {margin: 6px 0 0; font-size: 14px; line-height: 1.5;}

.game-aliases {display: grid; grid-template-columns: 105px minmax(0, 1fr); gap: 12px; align-items: baseline; margin-top: 14px;}

.game-aliases-label {color: var(--muted); font: 700 11px/1.45 var(--head); letter-spacing: 0.45px; text-transform: uppercase;}

.game-aliases-list {display: flex; flex-wrap: wrap; gap: 6px 8px; min-width: 0;}

.game-alias {display: inline-flex; align-items: center; max-width: 100%; padding: 2px 7px; border: 1px solid var(--line); border-radius: 5px; background: var(--surface); color: var(--text2); font: 400 12px/1.45 var(--body);}

.game-aliases-toggle {display: none; margin-top: 7px; padding: 0; border: 0; background: transparent; color: var(--red); font: 600 12px/1.3 var(--body); cursor: pointer;}

@media (max-width: 768px) {
  .game-aliases {grid-template-columns: 92px minmax(0, 1fr); gap: 10px;}
}

@media (max-width: 520px) {
  .game-aliases {display: block; margin-top: 10px;}

  .game-aliases-label {display: block; margin-bottom: 7px; font-size: 10px;}

  .game-aliases-list {gap: 4px;}

  .game-alias {padding: 2px 6px; font-size: 11px;}

  .game-alias-extra {display: none;}

  .game-aliases.is-expanded .game-alias-extra {display: inline-flex;}

  .game-aliases-toggle {display: inline-block;}
}

.sidebar-game-meta {display: flex; align-items: center; gap: 6px; margin-top: 6px; font-size: 12px; line-height: 1.2; color: var(--muted);}

.sidebar-game-platform {display: inline-flex; align-items: center; min-height: 20px; padding: 2px 7px; border: 1px solid var(--line); border-radius: 4px; background: var(--surface2); color: var(--text2); font-size: 11px; font-weight: 700; line-height: 1; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap;}

.detail-ad {box-sizing: border-box; width: 100%; min-width: 0; margin: 28px 0; padding: 16px 0; text-align: center; border-top: 1px solid var(--line, #ddd); border-bottom: 1px solid var(--line, #ddd);}

.detail-ad-label {margin: 0 0 10px; color: var(--muted, #888); font: normal 10px/1.4 Arial,sans-serif; text-transform: uppercase; letter-spacing: 1px;}

.detail-ad-article {clear: both; min-height: 160px;}

.detail-ad-article .adsbygoogle {width: 100%;}

.detail-ad-sidebar {margin: 0 0 24px; padding: 14px 0; min-height: 280px;}

.detail-ad-sidebar .adsbygoogle {width: 100%; min-height: 250px;}

@media (max-width:900px) {
  .detail-ad-sidebar {display: none;}

  .detail-ad-article {margin: 24px 0; min-height: 150px;}
}

.ads-sidebar {display: block; width: 300px; height: 250px;}

@media (max-width: 900px) {
  .ads-sidebar {display: none;}
}

.game-faq {margin: 28px 0;}

.game-faq h2 {margin: 0 0 14px; font-family: var(--head); font-size: 23px; font-weight: 800; line-height: 1.3; color: var(--text);}

.game-faq-list {border: 1px solid var(--line); border-radius: 5px; overflow: hidden; background: var(--surface);}

.game-faq-item + .game-faq-item {border-top: 1px solid var(--line);}

.game-faq-question {position: relative; display: block; cursor: pointer; padding: 15px 42px 15px 16px; color: var(--text); font-weight: 700; font-size: 15px; line-height: 1.5; list-style: none;}

.game-faq-question::-webkit-details-marker {display: none;}

.game-faq-question::after {content: "+"; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); color: var(--accent, #2563eb); font-size: 23px; font-weight: 500;}

.game-faq-item[open] .game-faq-question::after {content: "−";}

.game-faq-question:hover {background: var(--surface2);}

.game-faq-question:focus-visible {outline: 2px solid var(--accent, #2563eb); outline-offset: -2px;}

.game-faq-answer {padding: 0 16px 16px; color: var(--text2); font-size: 14px; line-height: 1.75;}

.game-faq-answer p {margin: 0;}

@media (max-width: 600px) {
  .game-faq h2 {font-size: 20px;}

  .game-faq-question {font-size: 14px; padding: 13px 40px 13px 12px;}

  .game-faq-answer {padding: 0 12px 14px;}
}

.game-controls {display: flex; align-items: center; flex-wrap: wrap; gap: 6px 14px; margin: 14px 0 22px; color: var(--text2); font-size: 13px; line-height: 1.6;}

.game-controls > strong {color: var(--text); font-weight: 700;}

.control-pair {display: inline-flex; align-items: flex-end; gap: 5px; white-space: nowrap;}

.control-pair kbd {display: inline-block; padding: 1px 6px; background: var(--surface2); border: 1px solid var(--line-dark); border-radius: 3px; color: var(--text); font-family: inherit; font-size: 12px; font-weight: 600; line-height: 1.6;}

@media (max-width: 600px) {
  .game-controls {gap: 6px 10px; margin: 12px 0 18px; padding: 9px 10px; font-size: 12px;}

  .control-pair kbd {padding: 1px 5px; font-size: 11px;}
}

@media (min-width: 1101px) {
  .game-layout {grid-template-columns: minmax(0, 1fr) 325px; gap: 32px;}
}

@media (max-width: 1100px) and (min-width: 769px) {
  .game-layout {grid-template-columns: minmax(0, 1fr) 290px; gap: 24px;}
}

.sidebar-related .sidebar-game-list {gap: 14px;}

.sidebar-related .sidebar-game {display: flex; flex-direction: column; align-items: stretch; gap: 12px; min-width: 0; padding: 13px; border: 1px solid var(--line); border-radius: 4px; background: var(--surface); color: var(--text); text-decoration: none; transition: border-color .15s ease, background-color .15s ease;}

.sidebar-related .sidebar-game:first-child {padding-top: 13px;}

.sidebar-related .sidebar-game:last-child {padding-bottom: 13px; border-bottom: 1px solid var(--line);}

.sidebar-related .sidebar-game-top {display: grid; grid-template-columns: 108px minmax(0, 1fr); align-items: start; gap: 12px; min-width: 0;}

.sidebar-related .sidebar-game-cover {display: block; box-sizing: border-box; width: 108px; height: 82px; overflow: hidden; border: 2px solid #101b17; border-radius: 7px 3px 6px 3px; background: var(--surface2); box-shadow: 2px 2px 0 #15803d, 4px 4px 0 #101b17; transition: transform .16s ease, box-shadow .16s ease;}

.sidebar-related .sidebar-game-cover img {width: 100%; height: 100%; object-fit: contain;}

.sidebar-related .sidebar-game-info {display: flex; flex-direction: column; align-items: flex-start; gap: 5px; min-width: 0;}

.sidebar-related .sidebar-game-title {display: block; max-width: 100%; overflow: visible; color: var(--text); font: 700 15px/1.4 var(--head); overflow-wrap: anywhere; -webkit-line-clamp: unset;}

.sidebar-related .sidebar-game-meta {color: var(--muted); font: 500 12px/1.4 var(--body);}

.sidebar-related .sidebar-game-series {display: block; color: var(--text2); font: 600 12px/1.4 var(--head); overflow-wrap: anywhere;}

.sidebar-related .sidebar-game-description {display: block; width: 100%; max-height: none; overflow: visible; margin: 0; color: var(--text2); font: 400 14px/1.6 var(--body); overflow-wrap: anywhere; white-space: normal; -webkit-line-clamp: unset; line-clamp: unset;}

@media (hover: hover) and (pointer: fine) {
  .sidebar-related .sidebar-game:hover {border-color: var(--line-dark); background: var(--surface2);}

  .sidebar-related .sidebar-game:hover .sidebar-game-title {color: var(--accent);}

  .sidebar-related .sidebar-game:hover .sidebar-game-cover {transform: translate(-1px, -1px); box-shadow: 3px 3px 0 #15803d, 5px 5px 0 #101b17;}
}

@media (max-width: 380px) {
  .sidebar-related .sidebar-game {padding: 11px;}

  .sidebar-related .sidebar-game-top {grid-template-columns: 96px minmax(0, 1fr); gap: 10px;}

  .sidebar-related .sidebar-game-cover {width: 96px; height: 76px;}
}

@media (prefers-reduced-motion: reduce) {
  .sidebar-related .sidebar-game, .sidebar-related .sidebar-game-cover {transition: none;}

  .sidebar-related .sidebar-game:hover .sidebar-game-cover {transform: none;}
}

.ben10-play-button {position: relative; isolation: isolate; display: flex; align-items: center; justify-content: center; width: 100%; min-height: 60px; margin-top: 14px; padding: 9px 7px; border: 0; background: transparent; color: #10251a; font: 900 18px/1.1 var(--head); letter-spacing: .015em; text-decoration: none; text-transform: uppercase; cursor: pointer; transition: transform .16s ease;}

.ben10-play-bg {position: absolute; z-index: -1; inset: 0 5px 6px 0; border: 3px solid #101b17; border-radius: 19px 5px 16px 5px / 5px 15px 5px 18px; background: #7be448; box-shadow: 4px 4px 0 #15803d, 7px 7px 0 #101b17; transition: box-shadow .16s ease, background-color .16s ease;}

.ben10-play-shine {position: absolute; top: 8px; left: 15px; width: 32px; height: 6px; transform: rotate(-7deg); border-radius: 15px 3px 12px 3px; background: rgba(255,255,255,.67); pointer-events: none;}

.ben10-play-content {position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 7px; white-space: nowrap; text-shadow: 1px 1px 0 rgba(255,255,255,.6);}

.ben10-play-zap {flex: 0 0 auto; width: 19px; height: 19px;}

.ben10-play-decor::before, .ben10-play-decor::after {content: ""; position: absolute; width: 4px; height: 9px; background: var(--accent); opacity: 0; pointer-events: none;}

.ben10-play-decor::before {top: -7px; left: 16%; transform: rotate(-25deg);}

.ben10-play-decor::after {top: -5px; right: 16%; transform: rotate(25deg);}

@media (hover: hover) and (pointer: fine) {
  .ben10-play-button:hover {transform: translate(-1px, -2px) rotate(-1deg); color: #10251a;}

  .ben10-play-button:hover .ben10-play-bg {background: #a4f172; box-shadow: 5px 6px 0 #15803d, 8px 9px 0 #101b17;}

  .ben10-play-button:hover .ben10-play-decor::before, .ben10-play-button:hover .ben10-play-decor::after {opacity: 1;}
}

.ben10-play-button:active {transform: translate(3px, 3px) scale(.98);}

.ben10-play-button:active .ben10-play-bg {box-shadow: 1px 1px 0 #15803d, 3px 3px 0 #101b17;}

.ben10-play-button:focus-visible {outline: 3px solid var(--accent); outline-offset: 4px;}

@media (max-width: 600px) {
  .ben10-play-button {min-height: 44px; padding: 4px 0; font-size: 12px; letter-spacing: 0;}

  .ben10-play-bg {border-width: 2px; box-shadow: 2px 2px 0 #15803d, 4px 4px 0 #101b17;}

  .ben10-play-shine, .ben10-play-zap {display: none;}

  .ben10-play-content {gap: 0;}

  .ben10-play-game {display: none;}
}

@media (prefers-reduced-motion: reduce) {
  .ben10-play-button, .ben10-play-bg {transition: none;}

  .ben10-play-button:hover {transform: none;}
}

.game-cover-column .game-cover {position: relative; width: 100%; border: 3px solid #101b17; border-radius: 12px 4px 10px 4px; background: var(--surface2); box-shadow: 4px 4px 0 #15803d, 7px 7px 0 #101b17; transition: box-shadow .16s ease, transform .16s ease;}

.game-cover-column .game-cover img {width: 100%; height: auto; max-height: 264px; object-fit: contain;}

.game-cover-column {padding-right: 9px;}

@media (hover: hover) and (pointer: fine) {
  .game-cover-column .game-cover:hover {transform: translate(-1px, -1px); box-shadow: 5px 5px 0 #15803d, 8px 8px 0 #101b17;}
}

@media (max-width: 920px) {
  .game-cover-column .game-cover img {max-height: 234px;}
}

@media (max-width: 768px) {
  .game-cover-column .game-cover img {max-height: 209px;}
}

@media (max-width: 600px) {
  .game-cover-column {padding-right: 5px;}

  .game-cover-column .game-cover {border-width: 2px; border-radius: 7px 3px 6px 3px; box-shadow: 2px 2px 0 #15803d, 4px 4px 0 #101b17;}

  .game-cover-column .game-cover img {max-height: 144px;}
}

@media (max-width: 380px) {
  .game-cover-column .game-cover img {max-height: 126px;}
}

@media (prefers-reduced-motion: reduce) {
  .game-cover-column .game-cover {transition: none;}

  .game-cover-column .game-cover:hover {transform: none;}
}

.game-subtitle {font-size: 16px; line-height: 1.7; color: var(--text2);}

.game-facts dt {font-size: 14px; line-height: 1.45;}

.game-facts dd {font-size: 15px; line-height: 1.55;}

.game-content p, .game-content li {font-size: 16px; line-height: 1.78;}

.game-section h2 {font-size: clamp(23px, 2.3vw, 27px); line-height: 1.3;}

.cg-shot figcaption {font-size: 14px; line-height: 1.6; color: var(--text2);}

.info-card h2, .sidebar-box h2 {font-size: 19px;}

.info-list dt {font-size: 13px;}

.info-list dd {font-size: 14px; line-height: 1.55;}

.game-faq-question {font-size: 16px; line-height: 1.55;}

.game-faq-answer {font-size: 15px; line-height: 1.75;}

.game-controls {font-size: 14px;}

.control-pair kbd {font-size: 13px;}

.sidebar-related .sidebar-game-title {font-size: 15px; line-height: 1.45;}

.sidebar-related .sidebar-game-description {font-size: 14px; line-height: 1.55;}

.sidebar-related .sidebar-game-meta {font-size: 13px;}

.game-alias {font-size: 13px;}

.game-note {font-size: 15px; line-height: 1.65;}

@media (max-width: 600px) {
  .game-subtitle {font-size: 15px; line-height: 1.65;}

  .game-facts dt {font-size: 12px;}

  .game-facts dd {font-size: 13px; line-height: 1.45;}

  .game-section h2 {font-size: 22px;}

  .game-content p, .game-content li {font-size: 15px; line-height: 1.75;}

  .cg-shot figcaption {font-size: 12px; line-height: 1.5;}

  .game-faq-question {font-size: 15px;}

  .game-faq-answer {font-size: 14px;}

  .sidebar-related .sidebar-game-title {font-size: 15px;}

  .sidebar-related .sidebar-game-description {font-size: 13px; line-height: 1.55;}

  .sidebar-related .sidebar-game-meta {font-size: 12px;}

  .game-controls {font-size: 13px;}

  .control-pair kbd {font-size: 12px;}
}

@media (max-width: 380px) {
  .game-facts dt {font-size: 11px;}

  .game-facts dd {font-size: 12px;}
}
