/* Overrides intentionally follow the complete legacy sheet. No image color treatment. */
body { color: var(--cm-text); background: var(--cm-bg); }
::selection { color: #fff; background: var(--cm-pink-action); }
.l-header { border-image: none; border-bottom: 3px solid var(--cm-pink); background: #fff; }
.c-headLogo a { color: var(--cm-pink-deep); }
.c-gnav > li > a::after { background: var(--cm-pink); }
.c-gnav > li.is-active > a, .c-gnav > li > a:hover { color: var(--cm-pink-deep); }
.l-main::before { background: var(--cm-pink); box-shadow: none; height: 3px; }
.post_content h3 { border-image: none; border-bottom: 2px solid var(--cm-pink); }
.post_content h4 { border-color: var(--cm-pink); }
.post_content table, .c-widget, .p-postList__link { box-shadow: none; border-color: var(--cm-border); }
.post_content th, .c-widget__title { color: var(--cm-text); background: var(--cm-bg-soft); }
.p-postList__link:hover { transform: none; box-shadow: 0 4px 12px rgba(23,23,43,.06); border-color: var(--cm-pink); }
.p-postList__link:hover .p-postList__thumb img { transform: none; filter: none; }
.post-cat, .cm-brand-button, .cm-game-top__official-link { color: #fff; background: var(--cm-pink-action); border-radius: 8px; }
.cm-brand-button { display: inline-flex; align-items: center; min-height: 44px; padding: 10px 20px; font-weight: 700; text-decoration: none; }
.cm-brand-button:hover, .cm-game-top__official-link:hover { color: #fff; background: var(--cm-pink-deep); }
.c-pagination .page-numbers.current { background: var(--cm-pink-action); color: #fff; }
.cm-label, .cm-badge { display: inline-block; padding: 3px 9px; border: 1px solid var(--cm-border); border-radius: 5px; background: var(--cm-bg-soft); color: var(--cm-pink-deep); font-size: .8rem; font-weight: 700; }
.cm-section-heading { border-left: 5px solid var(--cm-pink); padding-left: 12px; color: var(--cm-text); }
.cm-game-masthead__nav a { border-color: var(--cm-border); color: var(--cm-text); overflow-wrap: anywhere; }
.cm-game-masthead__nav a:hover, .cm-game-masthead__nav a.is-active { background: var(--cm-pink-action); color: #fff; }
.cm-game-site .cm-game-masthead { border-color: var(--cm-border); border-top: 4px solid var(--cm-pink); border-radius: 12px; box-shadow: none; }
.cm-game-masthead__visual { background: var(--cm-navy); }
.cm-game-site .cm-game-top__header { border-color: var(--cm-border); border-left: 4px solid var(--cm-pink); background: #fff; }
.cm-game-site .cm-game-sidebar__panel { border-color: var(--cm-border); background: #fff; box-shadow: none; }
.cm-game-site .cm-game-sidebar__heading { color: var(--cm-text); }
.cm-game-site .cm-game-sidebar__heading::before { background: var(--cm-pink); }
.cm-game-site .cm-game-sidebar__list a { min-height: 44px; overflow-wrap: anywhere; }
.cm-game-site .cm-game-sidebar__list a:hover { color: var(--cm-pink-deep); background: var(--cm-bg-soft); }
.cm-game-site .cm-game-sidebar__eyebrow, .cm-game-top__eyebrow { color: var(--cm-pink-deep); }
.cm-game-site .cm-game-top__tagline { color: var(--cm-pink-deep); }
.cm-game-site .cm-game-top__description, .cm-game-site .cm-game-meta__item dt, .cm-game-site .cmgt-information dd { color: var(--cm-text); }
.cm-game-article-context__back a { min-height: 44px; border-color: var(--cm-pink); color: var(--cm-pink-deep); background: #fff; }
.l-footer { background: var(--cm-navy); color: #fff; }
.l-footer a:hover { color: var(--cm-pink); }
.cm-brand-signature { padding: 20px 16px; border-top: 3px solid var(--cm-pink); color: #fff; background: var(--cm-navy); text-align: center; font-size: 14px; line-height: 1.8; }
.cm-brand-signature p { margin: 0; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, summary:focus-visible { outline: 3px solid var(--cm-focus); outline-offset: 3px; }
.cm-game-masthead__nav a:focus-visible { outline-color: var(--cm-focus); outline-offset: -4px; }
.cm-section-anchor { display: block; scroll-margin-top: 100px; }
@media (max-width: 959px) {
 .cm-game-masthead__nav { overflow-x: visible; }
 .cm-game-masthead__nav ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; min-width: 0; }
 .cm-game-masthead__nav li { min-width: 0; }
 .cm-game-masthead__nav a { white-space: normal; min-height: 48px; padding: 10px; border-bottom: 1px solid var(--cm-border); font-size: 13px; }
 .cm-game-site .cm-game-top__header { padding: 18px 16px; }
}
@media (prefers-reduced-motion: reduce) {
 html { scroll-behavior: auto; }
 a, button, .p-postList__thumb img, .c-gnav > li > a::after { transition: none; animation: none; }
}
