/* Shared visual retrofit for the original static editorial and support routes. */
body.legacy-modernized { min-height: 100vh; background: var(--ink); }
body.legacy-modernized .site-header { position: sticky; z-index: 10; top: 0; border-bottom: 1px solid var(--line); background: rgb(17 18 15 / 92%); backdrop-filter: blur(16px); }
body.legacy-modernized .legacy-page-intro { position: relative; display: grid; min-height: clamp(280px, 38vw, 510px); align-content: end; overflow: hidden; padding: clamp(2rem, 7vw, 6rem) var(--page-gutter); border-bottom: 1px solid var(--line); background: radial-gradient(ellipse at 83% 25%, rgb(var(--accent-rgb) / 15%), transparent 38%), linear-gradient(115deg, #171914, #11120f 72%); }
body.legacy-modernized .legacy-page-intro::after { position: absolute; top: -45%; right: 7%; width: min(50vw, 580px); aspect-ratio: 1; border: 1px solid rgb(var(--accent-rgb) / 15%); border-radius: 50%; content: ""; box-shadow: 0 0 0 5vw rgb(var(--accent-rgb) / 3%), 0 0 0 10vw rgb(var(--accent-rgb) / 2%); pointer-events: none; }
body.legacy-modernized .legacy-page-intro > * { position: relative; z-index: 1; }
body.legacy-modernized .legacy-page-intro .eyebrow { margin-bottom: .8rem; }
body.legacy-modernized .legacy-page-intro h1 { max-width: 15ch; margin: 0; font-size: clamp(3.2rem, 8vw, 7.2rem); line-height: .88; }
body.legacy-modernized .legacy-page-intro p:not(.eyebrow) { max-width: 42rem; margin: 1.2rem 0 0; color: #c3c2b8; font-size: clamp(.95rem, 1.3vw, 1.1rem); line-height: 1.75; }
body.legacy-modernized .legacy-page-intro .legacy-index { position: absolute; z-index: 2; right: var(--page-gutter); bottom: 1.4rem; color: #8d8c83; font-size: .6rem; letter-spacing: .15em; }
body.legacy-modernized .legacy-page-intro .legacy-index strong { color: var(--accent); }
body.legacy-modernized main > .text-section, body.legacy-modernized main > .intro-section { padding-block: clamp(2rem, 5vw, 4.5rem); background: transparent; }
body.legacy-modernized main > .text-section.dark-section { border-block: 1px solid var(--line); background: #171914; }
body.legacy-modernized main > .text-section > .container, body.legacy-modernized main > .intro-section > .container { width: min(calc(100% - var(--page-gutter) * 2), 1120px); max-width: 1120px; padding: 0; }
body.legacy-modernized .breadcrumbs { display: flex; flex-wrap: wrap; gap: .45rem .8rem; margin: 0 0 1.8rem; padding: 0; list-style: none; color: #8d8c83; font-size: .66rem; }
body.legacy-modernized .breadcrumbs a { color: var(--accent); }
body.legacy-modernized .article, body.legacy-modernized .article-content { max-width: 850px; margin-inline: auto; }
body.legacy-modernized .article-content { color: #d0cfc6; font-size: 1rem; line-height: 1.85; overflow-wrap: anywhere; }
body.legacy-modernized .article-content p { margin-block: 0 1.3rem; }
body.legacy-modernized .article-content h2, body.legacy-modernized .article-content h3 { margin-block: 2.5rem 1rem; color: var(--paper); font-family: var(--display); line-height: 1.04; text-transform: uppercase; }
body.legacy-modernized .article-content h2 { font-size: clamp(1.8rem, 4vw, 3.2rem); }
body.legacy-modernized .article-content h3 { font-size: clamp(1.35rem, 2.5vw, 2rem); }
body.legacy-modernized .article-content a, body.legacy-modernized .text-section a:not(.article-action):not(.article-teaser) { color: var(--accent); text-decoration-color: rgb(var(--accent-rgb) / 50%); text-underline-offset: .2em; }
body.legacy-modernized .article-content a:hover, body.legacy-modernized .text-section a:hover { text-decoration: underline; }
body.legacy-modernized .article-content img, body.legacy-modernized .figure img, body.legacy-modernized .article img { width: auto !important; max-width: 100% !important; height: auto !important; margin: 1.5rem auto; object-fit: contain; }
body.legacy-modernized .article-content figure, body.legacy-modernized .figure { margin: 2rem 0; }
body.legacy-modernized .article-content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
body.legacy-modernized .article-content th, body.legacy-modernized .article-content td { padding: .6rem .8rem; border: 1px solid var(--line); }
body.legacy-modernized .article .section-heading, body.legacy-modernized .section-heading { color: var(--paper); font: 800 clamp(2.2rem, 5vw, 4.2rem)/.95 var(--display); text-transform: uppercase; }
body.legacy-modernized .meta, body.legacy-modernized .meta-date, body.legacy-modernized .meta-tags { color: #9b9a90; font-size: .7rem; }
body.legacy-modernized .news { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.3rem; }
body.legacy-modernized .news .snippet { min-width: 0; padding: 0 0 1.5rem; border: 0; border-bottom: 1px solid var(--line); background: transparent; }
body.legacy-modernized .news .snippet-image-outer, body.legacy-modernized .news .snippet-image { display: block; overflow: hidden; }
body.legacy-modernized .news .snippet-image img { width: 100%; height: clamp(150px, 21vw, 280px); object-fit: cover; transition: transform .6s var(--ease-out); }
body.legacy-modernized .news .snippet-image:hover img { transform: scale(1.04); }
body.legacy-modernized .news .snippet-title { display: inline-block; margin-block: .8rem .4rem; color: var(--paper) !important; font: 750 clamp(1.35rem, 2.4vw, 2rem)/1.08 var(--display); text-transform: uppercase; }
body.legacy-modernized .news .snippet p:not(.meta) { color: #aaa99f; font-size: .85rem; line-height: 1.7; }
body.legacy-modernized .pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: .45rem; margin: 2.5rem 0 0; padding: 0; list-style: none; }
body.legacy-modernized .pagination-item { display: grid; min-width: 2.5rem; min-height: 2.5rem; place-items: center; padding: .45rem; border: 1px solid var(--line); color: var(--paper); }
body.legacy-modernized .pagination-item-active, body.legacy-modernized .pagination-item:hover { border-color: var(--accent); color: var(--ink); background: var(--accent); }
body.legacy-modernized form:not(.nologin-style) { max-width: 850px; margin: 1rem auto; padding: clamp(1rem, 3vw, 2rem); border: 1px solid var(--line); background: #171914; }
body.legacy-modernized form[id*="nologinForm"] { display: none !important; }
body.legacy-modernized input:not([type="hidden"]):not([type="submit"]), body.legacy-modernized select, body.legacy-modernized textarea { width: 100%; max-width: 100%; min-height: 2.8rem; padding: .7rem .8rem; border: 1px solid #4a4b43; border-radius: 0; color: var(--paper); background: #11120f; font: inherit; }
body.legacy-modernized textarea { min-height: 9rem; }
body.legacy-modernized input[type="submit"], body.legacy-modernized button[type="submit"] { min-height: 2.8rem; padding: .7rem 1rem; border: 0; color: var(--ink); background: var(--accent); font-weight: 750; cursor: pointer; }
body.legacy-modernized label { display: block; margin-block: .4rem; color: var(--paper); }
body.legacy-modernized .social-section .container { width: min(calc(100% - var(--page-gutter) * 2), 1120px); max-width: 1120px; }
body.legacy-modernized .social-section form { margin-inline: 0; }
body.legacy-modernized .site-footer { margin-top: 0; }
body.legacy-modernized .legacy-page-intro + main { min-height: 30vh; }
body.legacy-modernized .legacy-page-intro ~ .site-footer { margin-top: 0; }
body.legacy-modernized .site-header a { text-decoration: none; }
body.legacy-modernized .site-header .primary-nav a { color: #d2d0c7; }
body.legacy-modernized .site-header .primary-nav .nav-cta { color: var(--paper); }
body.legacy-modernized .site-header .primary-nav .nav-cta:hover { color: var(--ink); }
body.legacy-modernized .legacy-page-intro--game { min-height: clamp(360px, 52vw, 680px); grid-template-columns: minmax(0, 1fr) minmax(260px, .72fr); align-items: end; gap: 2rem; }
body.legacy-modernized .legacy-game-art { position: absolute !important; z-index: 0 !important; inset: 0 0 0 auto; width: min(55%, 760px); height: 100%; margin: 0; opacity: .6; object-fit: cover; object-position: center; mask-image: linear-gradient(90deg, transparent, black 35%); }
body.legacy-modernized .legacy-page-intro--game::before { position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, #11120f 15%, transparent 100%), linear-gradient(0deg, #11120f 0%, transparent 55%); content: ""; pointer-events: none; }
@media (max-width: 720px) {
  body.legacy-modernized .news { grid-template-columns: 1fr; }
  body.legacy-modernized .legacy-page-intro--game { grid-template-columns: 1fr; min-height: 430px; }
  body.legacy-modernized .legacy-game-art { width: 100%; opacity: .36; mask-image: linear-gradient(0deg, transparent, black 50%); }
}
