/*
 * NEX redesign layer (0.21.70, reworked in 0.21.72)
 * Scope: homepage search hero, featured game + hot list, player toolbox;
 * the game detail page; the cloud-drive QR dialog. Nothing else is touched.
 * Loaded last in <head>; selectors carry one extra class over the older
 * layers so the overrides stay predictable.
 */

/* Keep the [hidden] attribute authoritative inside the redesigned areas . */
html body :is(.nex63-detail, #nex63-description, #nex-pc-requirements, .nex-resource-qr-dialog, .widget-nex-home-search, .nex63-home-intro, .nex70-game) [hidden] { display: none !important; }

/* ---------- Tokens (dark default, light theme override) ---------- */
html body .nex63-detail,
html body #nex63-description,
html body.nex63-game-page #nex-pc-requirements,
html body.nex63-game-page .nex-perf-section,
html body.nex63-game-page .nex-related-games,
html body .nex-resource-qr-dialog,
html body:is(#nex-rd, *) .widget-nex-home-search,
html body:is(#nex-rd, *) .nex63-home-intro,
html body:is(#nex-rd, *).nex-home-numbered main,
html body .nex70-game {
    --nr-bg: #0a0e15;
    --nr-panel: #111723;
    --nr-panel-2: #161e2d;
    --nr-sunk: #0d121b;
    --nr-line: #232d3f;
    --nr-line-2: #2a3550;
    --nr-text: #e6eaf2;
    --nr-strong: #ffffff;
    --nr-soft: #aeb7c7;
    --nr-muted: #8b95a8;
    --nr-accent: #0a6cff;
    --nr-accent-ink: #ffffff;
    --nr-link: #7fb2ff;
    --nr-ok: #5be0a8;
    --nr-ok-bg: #0d2219;
    --nr-ok-line: #1d4d37;
    --nr-warn: #ffcf7a;
    --nr-warn-bg: #2a1c06;
    --nr-warn-line: #5a4116;
    --nr-bad: #ff8a8a;
    --nr-bad-bg: #2a1010;
    --nr-bad-line: #5a2424;
    --nr-info-bg: #0f1a2e;
    --nr-info-line: #1e3358;
    --nr-gold: #ffb547;
    --nr-shadow: 0 10px 40px rgba(10, 108, 255, .12);
    --nr-num: "Oxanium", "DIN Alternate", "Bahnschrift", ui-monospace, "PingFang SC", "Microsoft YaHei", sans-serif;
}
html:is([data-bs-theme=light], [data-nex-theme=light], [data-theme=light]) body :is(.nex-home-numbered main, .nex63-detail, #nex63-description, .nex63-game-page #nex-pc-requirements, .nex63-game-page .nex-perf-section, .nex63-game-page .nex-related-games, .nex-resource-qr-dialog, .widget-nex-home-search, .nex63-home-intro, .nex70-game) {
    --nr-bg: #f4f6fa;
    --nr-panel: #ffffff;
    --nr-panel-2: #f3f6fb;
    --nr-sunk: #eef2f8;
    --nr-line: #e1e7f0;
    --nr-line-2: #d3dbe7;
    --nr-text: #1a2333;
    --nr-strong: #0b1220;
    --nr-soft: #445166;
    --nr-muted: #5f6b7e;
    --nr-accent: #0a6cff;
    --nr-link: #1f5fd6;
    --nr-ok: #0b7a50;
    --nr-ok-bg: #e7f6ef;
    --nr-ok-line: #bfe6d3;
    --nr-warn: #8a5a00;
    --nr-warn-bg: #fff4dd;
    --nr-warn-line: #f2d59a;
    --nr-bad: #b42318;
    --nr-bad-bg: #fdecea;
    --nr-bad-line: #f5c2bd;
    --nr-info-bg: #eef4ff;
    --nr-info-line: #c9dafc;
    --nr-shadow: 0 10px 30px rgba(15, 35, 80, .08);
}

/* Homepage rules start with body:is(#nex-rd, *): it matches any body but counts as an id,
   which lifts them over the older home-page layers (body.nex64-home-page …) without !important wars. */
/* =================================================================
   1. Homepage · search hero
   ================================================================= */
/* 0.21.75: compact hero. Creative logo removed; one-line title, glass search box,
   hot words and "我的配置" share one row under the box. Search logic untouched. */
html body:is(#nex-rd, *) .widget-nex-home-search .nex-nsw.nex75 { padding: 22px 0 20px !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-nsw.nex75.is-pad-compact { padding: 20px 0 18px !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-nsw.nex75.is-pad-relaxed { padding: 56px 0 44px !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex75-hero {
    position: relative; display: flex; flex-direction: column; align-items: center; gap: 20px;
    max-width: 860px; margin: 0 auto 26px; padding: 0 16px; box-sizing: border-box;
}
/* soft light behind the box, painted once, no animation */
html body:is(#nex-rd, *) .widget-nex-home-search .nex75-hero::before {
    content: ""; position: absolute; left: 50%; top: 30px; width: 70%; height: 120px; transform: translateX(-50%);
    background: radial-gradient(closest-side, rgba(10,108,255,.22), transparent); filter: blur(10px); pointer-events: none; z-index: 0;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex75-title {
    position: relative; z-index: 1; margin: 0 !important; padding: 0 !important;
    font-size: clamp(22px, 2.3vw, 32px) !important; line-height: 1.25 !important; font-weight: 900 !important;
    letter-spacing: .5px !important; color: var(--nr-strong) !important; text-align: center; text-wrap: balance;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex75-title em {
    font-style: normal; color: #c8fbff; text-shadow: 0 0 2px rgba(120, 235, 255, .55), 0 0 16px rgba(10, 108, 255, .85), 0 0 34px rgba(10, 108, 255, .35);
}
html:is([data-bs-theme=light], [data-nex-theme=light], [data-theme=light]) body:is(#nex-rd, *) .widget-nex-home-search .nex75-title em { color: #0a6cff; text-shadow: none; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search { position: relative; z-index: 2; width: 100% !important; max-width: none !important; margin: 0 !important; box-sizing: border-box !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-glow { display: none !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-box {
    height: 60px !important; padding: 0 7px 0 20px !important; gap: 12px !important; box-sizing: border-box !important;
    border-radius: 18px !important; border: 1px solid color-mix(in srgb, var(--nr-text) 12%, transparent) !important;
    background: color-mix(in srgb, var(--nr-panel) 82%, transparent) !important;
    -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
    box-shadow: inset 0 1px 0 color-mix(in srgb, var(--nr-text) 7%, transparent), 0 16px 40px -18px rgba(0,0,0,.6) !important;
    transition: border-color .2s ease, box-shadow .2s ease !important;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-box:hover { border-color: color-mix(in srgb, var(--nr-text) 22%, transparent) !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-box:focus-within {
    border-color: var(--nr-accent) !important;
    box-shadow: 0 0 0 4px rgba(10,108,255,.18), 0 16px 40px -18px rgba(0,0,0,.6) !important;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-icon { color: var(--nr-muted) !important; display: inline-flex !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-box:focus-within .nex-search-icon { color: var(--nr-link) !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-input { font-size: 16px !important; color: var(--nr-text) !important; background: transparent !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-input::placeholder { color: var(--nr-muted) !important; opacity: 1; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-kbd {
    display: inline-flex !important; align-items: center; height: 24px; padding: 0 8px !important; box-sizing: border-box;
    font-family: var(--nr-num) !important; font-size: 12px !important; color: var(--nr-muted) !important;
    border: 1px solid color-mix(in srgb, var(--nr-text) 14%, transparent) !important; background: transparent !important; border-radius: 6px !important;
    transition: opacity .15s ease;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-box:focus-within .nex-search-kbd { opacity: 0; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-submit {
    height: 46px !important; width: auto !important; min-width: 92px !important; padding: 0 22px !important; border: 0 !important; border-radius: 13px !important;
    background: #0a6cff !important; color: #fff !important; font-size: 15px !important; font-weight: 700 !important;
    box-shadow: 0 6px 16px -6px rgba(10,108,255,.7) !important; cursor: pointer; transition: transform .15s ease, filter .15s ease !important;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-submit:hover { filter: brightness(1.08); transform: translateY(-1px); }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-submit:active { transform: translateY(0); }
/* results drop right under the box, not under the hot-word row */
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-panel { top: 68px !important; }

/* hot words (left) + 我的配置 (right) on one row */
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-meta {
    display: flex; align-items: center; justify-content: space-between; gap: 10px 20px; flex-wrap: nowrap;
    margin-top: 14px; padding: 0 4px;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-hot { flex: 0 0 auto; display: flex !important; flex-wrap: nowrap !important; justify-content: flex-start !important; align-items: center !important; gap: 6px !important; margin: 0 !important; min-width: 0; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-hot-label { display: inline !important; flex: 0 0 auto !important; width: auto !important; text-align: left !important; margin: 0 2px 0 0 !important; font-size: 12px !important; font-weight: 700; letter-spacing: 1px; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-hot-sep { display: none !important; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-hot-word {
    height: 28px !important; padding: 0 11px !important; border-radius: 14px !important; font-size: 13px !important; line-height: 28px !important;
    background: color-mix(in srgb, var(--nr-text) 6%, transparent) !important; border: 0 !important; box-shadow: none !important;
    color: var(--nr-soft) !important; cursor: pointer; transition: background-color .15s ease, color .15s ease !important;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-hot-word:hover { background: rgba(10,108,255,.18) !important; color: var(--nr-link) !important; }

html body:is(#nex-rd, *) .widget-nex-home-search .nex63-configbar {
    flex: 0 1 auto; display: inline-flex !important; align-items: center !important; gap: 8px !important; flex-wrap: nowrap !important; min-width: 0; max-width: 100%;
    height: 28px; margin: 0 !important; padding: 0 4px 0 10px !important; box-sizing: border-box !important;
    border-radius: 14px !important; background: none !important; border: 0 !important; font-size: 13px !important;
}
/* the label is kept for screen readers; the monitor icon says it visually */
html body:is(#nex-rd, *) .widget-nex-home-search .nex63-configbar > span { font-size: 0 !important; display: inline-flex !important; align-items: center !important; gap: 6px !important; color: var(--nr-muted) !important; white-space: nowrap; }
html body:is(#nex-rd, *) .widget-nex-home-search .nex63-configbar > span::before {
    content: "" !important; width: 15px; height: 15px; background: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='2'/%3E%3Cpath d='M8 20h8M12 16v4'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='2'/%3E%3Cpath d='M8 20h8M12 16v4'/%3E%3C/svg%3E") center / contain no-repeat;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex63-configbar > strong {
    min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
    font-family: var(--nr-num) !important; font-weight: 600 !important; font-size: 13px !important; color: var(--nr-soft) !important;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex63-configbar > button {
    flex-shrink: 0; height: 24px; padding: 0 10px !important; border: 0 !important; border-radius: 12px !important;
    background: rgba(10,108,255,.14) !important; color: var(--nr-link) !important; font-size: 12px !important; font-weight: 700; cursor: pointer;
    transition: background-color .15s ease !important;
}
html body:is(#nex-rd, *) .widget-nex-home-search .nex63-configbar > button:hover { background: rgba(10,108,255,.26) !important; }
@media (max-width: 640px) {
    html body:is(#nex-rd, *) .widget-nex-home-search .nex-nsw.nex75 { padding: 20px 0 18px !important; }
    html body:is(#nex-rd, *) .widget-nex-home-search .nex75-hero { gap: 14px; margin-bottom: 24px; padding: 0 12px; }
    html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-meta { flex-wrap: wrap; }
    html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-box { height: 52px !important; padding-left: 14px !important; border-radius: 15px !important; }
    html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-submit { flex: 0 0 auto !important; height: 40px !important; min-width: 64px !important; padding: 0 14px !important; white-space: nowrap !important; }
    html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-kbd { display: none !important; }
    html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-panel { top: 60px !important; }
    html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-hot { flex: 1 1 100%; flex-wrap: nowrap !important; overflow-x: auto; scrollbar-width: none; max-width: 100%; }
    html body:is(#nex-rd, *) .widget-nex-home-search .nex75-title { font-size: 20px !important; }
    html body:is(#nex-rd, *) .widget-nex-home-search .nex-search-hot-word { flex-shrink: 0; }
    html body:is(#nex-rd, *) .widget-nex-home-search .nex63-configbar { padding-left: 4px !important; }
}

/* ---------- 0.21.84 · home rhythm and headings ----------
   Every module below the first screen starts 40px after the one above it. Titles are plain type, no decoration;
   only the 新游速递 / 最近更新 tabs carry a short blue bar, because there it marks which list is showing. */
html body:is(#nex-rd, *).nex-home-numbered main :is(.widget-nex-box, .nex63-tabbed, .widget_nex_topic) { margin: 40px 0 0 !important; padding-top: 0 !important; }
html body:is(#nex-rd, *) .widget-nex-box .nex-box,
html body:is(#nex-rd, *) .widget_nex_topic .nex-topics { margin: 0 !important; padding: 0 !important; }
html body:is(#nex-rd, *).nex-home-numbered main :is(.nex-box-head, .nex63-listhead, .nex-topics > header) { margin: 0 0 18px !important; padding: 0 !important; }
html body:is(#nex-rd, *).nex-home-numbered main .nex-topics > header p { margin: 6px 0 0 !important; font-size: 13px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *).nex-home-numbered main :is(.nex-box-title, .nex-topics-title, .nex63-tabs button) {
    position: relative !important; margin: 0 !important; padding: 0 !important;
    font-size: 24px !important; font-weight: 900 !important; line-height: 1.25 !important; letter-spacing: .5px !important; color: var(--nr-strong) !important;
}
html body:is(#nex-rd, *).nex-home-numbered main :is(.nex-box-title, .nex-topics-title, .nex63-tabs button)::before { content: none !important; display: none !important; }
html body:is(#nex-rd, *).nex-home-numbered main .nex63-listhead { align-items: flex-end !important; }
html body:is(#nex-rd, *).nex-home-numbered main .nex63-tabs { gap: 28px !important; border: 0 !important; }
html body:is(#nex-rd, *).nex-home-numbered main .nex63-tabs button { padding-bottom: 10px !important; border: 0 !important; background: none !important; cursor: pointer; transition: color .2s ease !important; }
html body:is(#nex-rd, *).nex-home-numbered main .nex63-tabs button::after {
    content: ""; position: absolute; left: 0; bottom: 0; width: 22px; height: 3px; border-radius: 3px; background: var(--nr-accent);
    transform: scaleX(0); transform-origin: left center; transition: transform .25s ease;
}
html body:is(#nex-rd, *).nex-home-numbered main .nex63-tabs button[aria-selected="true"]::after { transform: scaleX(1); }
html body:is(#nex-rd, *).nex-home-numbered main .nex63-tabs button[aria-selected="false"] { color: var(--nr-muted) !important; }
/* 0.21.92: 「查看全部」「完整榜单」 and the list arrows share one quiet outlined style;
   the category filter pills were removed from the list header. */
html body:is(#nex-rd, *) :is(.nex63-listhead > .nex63-list-more, .nex63-home-intro .nex63-minirank header > a) {
    display: inline-flex !important; align-items: center !important; gap: 6px !important; height: 34px !important; margin: 0 !important; padding: 0 12px 0 14px !important;
    border: 1px solid color-mix(in srgb, var(--nr-strong) 16%, transparent) !important; border-radius: 999px !important; background: color-mix(in srgb, var(--nr-strong) 4%, transparent) !important;
    font-size: 13px !important; font-weight: 500 !important; line-height: 1 !important; color: var(--nr-text) !important; text-decoration: none !important; white-space: nowrap !important;
    transition: border-color .2s ease, background-color .2s ease, color .2s ease !important;
}
html body:is(#nex-rd, *) :is(.nex63-listhead > .nex63-list-more, .nex63-home-intro .nex63-minirank header > a)::after {
    content: "" !important; width: 14px !important; height: 14px !important; background: currentColor !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
    transition: transform .2s ease;
}
html body:is(#nex-rd, *) :is(.nex63-listhead > .nex63-list-more, .nex63-home-intro .nex63-minirank header > a):hover {
    border-color: color-mix(in srgb, #0a6cff 70%, transparent) !important; background: color-mix(in srgb, #0a6cff 14%, transparent) !important; color: var(--nr-strong) !important;
}
html body:is(#nex-rd, *) :is(.nex63-listhead > .nex63-list-more, .nex63-home-intro .nex63-minirank header > a):hover::after { transform: translateX(3px); }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank header > a { height: 30px !important; padding: 0 10px 0 12px !important; font-size: 12.5px !important; }
html body:is(#nex-rd, *).nex-home-numbered main .nex63-listhead { align-items: center !important; }
html body:is(#nex-rd, *).nex-home-numbered main .nex63-listhead > .nex-sec__nav { margin-left: auto !important; gap: 8px !important; }
html body:is(#nex-rd, *).nex-home-numbered main .nex63-listhead .nex-sec__arrow {
    width: 34px !important; height: 34px !important; min-width: 34px !important; min-height: 34px !important; border: 1px solid color-mix(in srgb, var(--nr-strong) 16%, transparent) !important; border-radius: 50% !important;
    background: color-mix(in srgb, var(--nr-strong) 4%, transparent) !important; color: var(--nr-text) !important; box-shadow: none !important;
    transition: border-color .2s ease, background-color .2s ease, color .2s ease !important;
}
html body:is(#nex-rd, *).nex-home-numbered main .nex63-listhead .nex-sec__arrow svg { width: 15px !important; height: 15px !important; }
html body:is(#nex-rd, *).nex-home-numbered main .nex63-listhead .nex-sec__arrow:hover:not(:disabled) { border-color: color-mix(in srgb, #0a6cff 70%, transparent) !important; background: color-mix(in srgb, #0a6cff 14%, transparent) !important; color: var(--nr-strong) !important; transform: none !important; }
html body:is(#nex-rd, *).nex-home-numbered main .nex63-listhead .nex-sec__arrow:disabled { opacity: .35 !important; }
@media (max-width: 650px) {
    /* Lists swipe on phones; the arrows would push 查看全部 onto a second line. */
    html body:is(#nex-rd, *).nex-home-numbered main .nex63-listhead > .nex-sec__nav { display: none !important; }
    html body:is(#nex-rd, *).nex-home-numbered main .nex63-listhead { flex-wrap: nowrap !important; }
    html body:is(#nex-rd, *).nex-home-numbered main .nex63-listhead > .nex63-list-more { margin-left: auto !important; height: 30px !important; padding: 0 10px 0 12px !important; font-size: 12.5px !important; }
}
html body:is(#nex-rd, *).nex-home-numbered main .nex63-tabs button[aria-selected="false"]:hover { color: var(--nr-text) !important; }
html body.nex-home-numbered { overflow-x: clip; }
/* ambient light behind the first screen: the current carousel game's image, 1/8 size, blurred, scaled up; cross-fades when the slide changes */
html body:is(#nex-rd, *) .nex63-home-intro .nex83-amb {
    position: absolute; z-index: -1; left: 50%; top: -96px; width: 100vw; height: calc(100% + 340px); transform: translateX(-50%); overflow: hidden; pointer-events: none;
    -webkit-mask-image: radial-gradient(58% 62% at 50% 46%, #000 0%, rgba(0, 0, 0, .6) 45%, transparent 100%); mask-image: radial-gradient(58% 62% at 50% 46%, #000 0%, rgba(0, 0, 0, .6) 45%, transparent 100%);
}
html body:is(#nex-rd, *) .nex63-home-intro .nex83-amb img {
    position: absolute; left: 0; top: 0; width: 12.5% !important; height: 12.5% !important; max-width: none !important; object-fit: cover;
    transform: scale(8); transform-origin: 0 0; filter: blur(5px) saturate(1.5); opacity: 0; transition: opacity 1s ease;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex83-amb img.is-on { opacity: .5; }
html:is([data-bs-theme=light], [data-nex-theme=light], [data-theme=light]) body:is(#nex-rd, *) .nex63-home-intro .nex83-amb { display: none; }

/* =================================================================
   2. Homepage · featured game + hot list
   ================================================================= */
html body:is(#nex-rd, *) .nex63-home-intro .nex63-home-lead { display: grid !important; grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr) !important; gap: 20px !important; align-items: stretch !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature {
    position: relative !important; display: flex !important; height: auto !important; min-height: 350px !important; overflow: hidden !important; isolation: isolate;
    border-radius: 20px !important; border: 1px solid #232d3f !important; background: #141018 !important; box-shadow: none !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature > img {
    position: absolute !important; top: 0 !important; right: 0 !important; left: auto !important; width: 64% !important; height: 100% !important;
    object-fit: cover !important; z-index: 0 !important; border-radius: 0 !important; opacity: 1 !important; filter: none !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature::before {
    content: "" !important; position: absolute !important; inset: 0 !important; z-index: 1 !important; pointer-events: none;
    background: linear-gradient(90deg, #141018 36%, rgba(20, 16, 24, .62) 58%, rgba(20, 16, 24, 0) 86%) !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-content {
    position: relative !important; z-index: 2 !important; display: flex !important; flex-direction: column !important; justify-content: flex-end !important;
    gap: 12px !important; max-width: 470px !important; padding: 36px 40px !important; background: none !important; color: #fff !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-label,
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-category {
    display: inline-flex !important; align-self: flex-start; margin: 0 8px 0 0 !important; padding: 4px 10px !important; border-radius: 6px !important;
    font-size: 12px !important; line-height: 1.5 !important; font-weight: 700 !important; background: rgba(255, 255, 255, .1) !important; color: #e6eaf2 !important; border: 0 !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-label { background: var(--nr-gold) !important; color: #1a1203 !important; }
/* Label pills share the first row; every other block takes a full row. */
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-content { justify-content: flex-start !important; flex-direction: row !important; flex-wrap: wrap !important; align-content: flex-end !important; align-items: flex-start !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-content > :not(span) { flex: 0 0 100% !important; max-width: 100% !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-content > span + span { margin-left: -4px !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-content h2 { margin: 2px 0 0 !important; font-size: clamp(28px, 2.8vw, 38px) !important; line-height: 1.2 !important; font-weight: 900 !important; color: #fff !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-content h2 + p { margin: -4px 0 0 !important; font-family: var(--nr-num) !important; font-size: 15px !important; color: #c9cfda !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature .nex-play-information { margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature .nex-play-output { font-size: 14px !important; color: #5be0a8 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature .nex63-clouds { margin: 0 !important; font-size: 13px !important; color: #aeb7c7 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-actions { display: flex !important; flex-wrap: wrap !important; gap: 12px !important; margin-top: 6px !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-primary,
html body:is(#nex-rd, *) .nex63-home-intro .nex63-secondary {
    display: inline-flex !important; align-items: center !important; height: 46px !important; padding: 0 22px !important; border-radius: 12px !important;
    font-size: 15px !important; font-weight: 700 !important; text-decoration: none !important; box-shadow: none !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-primary { background: var(--nr-accent) !important; color: #fff !important; border: 0 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-secondary { background: transparent !important; color: #fff !important; border: 1px solid rgba(255, 255, 255, .22) !important; }

html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank {
    display: flex !important; flex-direction: column !important; padding: 18px 20px 12px !important; border-radius: 20px !important;
    background: var(--nr-panel) !important; border: 1px solid var(--nr-line) !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank header h2 { font-size: 18px !important; font-weight: 900 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank ol { margin: 10px 0 0 !important; flex: 1 1 auto; display: flex !important; flex-direction: column !important; justify-content: space-between !important; }
html body:is(#nex-rd, *) html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li::before { width: 22px !important; text-align: center; font-family: var(--nr-num) !important; font-size: 20px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(1)::before { color: var(--nr-gold) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(2)::before { color: #c9cfda !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(3)::before { color: #e39b6b !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li > a {
    display: grid !important; grid-template-columns: 40px minmax(0, 1fr) auto !important; align-items: center !important; column-gap: 12px !important;
    padding: 6px !important; margin: 0 -6px !important; border-radius: 10px !important; color: var(--nr-text) !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li > a:hover { background: var(--nr-panel-2) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li img { width: 40px !important; height: 40px !important; border-radius: 8px !important; object-fit: cover !important; grid-row: 1; grid-column: 1; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li strong {
    grid-column: 2; display: flex !important; flex-direction: column !important; gap: 6px !important; min-width: 0;
    font-size: 14px !important; font-weight: 700 !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--nr-text) !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li strong::after {
    content: ""; display: block; height: 4px; border-radius: 2px;
    background: linear-gradient(90deg, #3f7bea 0 var(--nex-rank-pct, 0%), var(--nr-line) var(--nex-rank-pct, 0%) 100%);
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li span { grid-column: 3; font-family: var(--nr-num) !important; font-size: 13px !important; color: var(--nr-soft) !important; white-space: nowrap; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank > p { margin: auto 0 !important; color: var(--nr-muted) !important; font-size: 13px !important; }

/* 0.21.72 featured stage: full-bleed screenshot, slow push-in, content rises in, segmented progress along the bottom */
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature {
    --nf-ink: #05070c;
    position: relative !important; min-width: 0 !important; min-height: 380px !important; display: flex !important; flex-direction: column !important; overflow: hidden !important; isolation: isolate;
    border-radius: 22px !important; border: 1px solid rgba(255, 255, 255, .08) !important; background: var(--nf-ink) !important;
    box-shadow: 0 30px 70px -30px rgba(0, 0, 0, .7) !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature > .nex70-slide {
    position: absolute !important; inset: 0 !important; display: flex !important; min-height: 0 !important; height: auto !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important;
    opacity: 0 !important; visibility: hidden !important; transition: opacity .7s ease, visibility 0s linear .7s !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature > .nex70-slide.is-active { position: relative !important; inset: auto !important; flex: 1 1 auto !important; opacity: 1 !important; visibility: visible !important; transition: opacity .7s ease !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide > img {
    position: absolute !important; inset: 0 !important; left: 0 !important; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover !important; object-position: center 30% !important;
    z-index: 0 !important; border-radius: 0 !important; opacity: 1 !important; filter: saturate(1.08) !important; transform-origin: 70% 40%;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide.is-active > img { animation: nex72-push 9s ease-out both; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide::before {
    content: "" !important; position: absolute !important; inset: 0 !important; z-index: 1 !important; pointer-events: none;
    background:
        linear-gradient(90deg, rgba(5, 7, 12, .94) 0%, rgba(5, 7, 12, .78) 30%, rgba(5, 7, 12, .25) 62%, rgba(5, 7, 12, 0) 80%),
        linear-gradient(0deg, rgba(5, 7, 12, .92) 0%, rgba(5, 7, 12, 0) 42%),
        radial-gradient(80% 60% at 0% 100%, rgba(10, 108, 255, .22), transparent 70%) !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-content {
    position: relative !important; z-index: 2 !important; flex-direction: row !important; flex-wrap: wrap !important; justify-content: flex-start !important; align-content: flex-end !important; align-items: flex-start !important;
    gap: 10px !important; max-width: 540px !important; padding: 24px 40px 74px !important; background: none !important; color: #fff !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-content > * { animation: none; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide.is-active .nex63-feature-content > * { animation: nex72-rise .7s cubic-bezier(.2, .7, .2, 1) both; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide.is-active .nex63-feature-content > h2 { animation-delay: .06s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide.is-active .nex63-feature-content > h2 + p { animation-delay: .1s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide.is-active .nex63-feature-content > .nex70-feature-desc { animation-delay: .16s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide.is-active .nex63-feature-content > .nex70-feature-facts { animation-delay: .22s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide.is-active .nex63-feature-content > .nex-play-information { animation-delay: .26s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide.is-active .nex63-feature-content > .nex63-feature-actions { animation-delay: .3s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-label,
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-category {
    margin: 0 !important; padding: 5px 11px !important; border-radius: 999px !important; font-size: 12px !important; line-height: 1.4 !important; font-weight: 700 !important; letter-spacing: .3px !important;
    background: rgba(255, 255, 255, .12) !important; color: #fff !important; border: 1px solid rgba(255, 255, 255, .14) !important; backdrop-filter: blur(8px);
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-label { background: var(--nr-gold) !important; border-color: transparent !important; color: #1a1203 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-content > span + span { margin-left: -4px !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-content > :not(span) { flex: 0 0 100% !important; max-width: 100% !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-content h2 {
    margin: 2px 0 0 !important; font-size: clamp(28px, 2.8vw, 40px) !important; line-height: 1.12 !important; font-weight: 900 !important; letter-spacing: -.5px !important; color: #fff !important;
    text-shadow: 0 4px 30px rgba(0, 0, 0, .5) !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-content h2 + p { margin: -6px 0 0 !important; font-family: var(--nr-num) !important; font-size: 15px !important; letter-spacing: .4px !important; color: rgba(255, 255, 255, .62) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-desc {
    margin: 0 !important; font-size: 14.5px !important; line-height: 1.75 !important; color: rgba(255, 255, 255, .82) !important;
    display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-facts { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; margin: 2px 0 0 !important; padding: 0 !important; list-style: none !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-facts li {
    display: inline-flex !important; align-items: center !important; gap: 6px !important; height: 28px !important; padding: 0 11px !important; margin: 0 !important; border-radius: 8px !important;
    background: rgba(255, 255, 255, .08) !important; border: 1px solid rgba(255, 255, 255, .1) !important; color: #e6eaf2 !important; font-size: 12.5px !important; line-height: 1 !important; backdrop-filter: blur(8px);
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-facts li.is-review b { color: #8fbcff !important; font-weight: 800 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-facts li.is-review small { font-size: 12px !important; color: rgba(255, 255, 255, .6) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-facts li.is-ok { color: #5be0a8 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex-play-information { margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex-play-information :is(span, p) { color: rgba(255, 255, 255, .72) !important; font-size: 13px !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex-play-information a { color: #8fbcff !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex-play-output { display: inline-flex !important; align-items: center !important; gap: 8px !important; font-size: 13.5px !important; font-weight: 700 !important; color: #5be0a8 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-actions { display: flex !important; flex-wrap: wrap !important; gap: 12px !important; margin-top: 2px !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-primary {
    display: inline-flex !important; align-items: center !important; gap: 10px !important; height: 44px !important; padding: 0 24px !important; border-radius: 13px !important; border: 0 !important;
    background: linear-gradient(180deg, #2a82ff, #0a6cff) !important; color: #fff !important; font-size: 15px !important; font-weight: 800 !important; text-decoration: none !important;
    box-shadow: 0 12px 30px -10px rgba(10, 108, 255, .8) !important; transition: transform .18s ease, box-shadow .18s ease !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-primary::after { content: "" !important; width: 8px !important; height: 8px !important; border: solid currentColor !important; border-width: 2px 2px 0 0 !important; transform: rotate(45deg) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-primary:hover { transform: translateY(-2px) !important; box-shadow: 0 18px 36px -12px rgba(10, 108, 255, .9) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-secondary {
    display: inline-flex !important; align-items: center !important; height: 44px !important; padding: 0 20px !important; border-radius: 13px !important;
    background: rgba(255, 255, 255, .08) !important; border: 1px solid rgba(255, 255, 255, .2) !important; color: #fff !important; font-size: 15px !important; font-weight: 700 !important; text-decoration: none !important; backdrop-filter: blur(8px);
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-secondary:hover { background: rgba(255, 255, 255, .16) !important; }

/* Counter + arrows, top right */
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-ctrl { position: absolute !important; top: 20px !important; right: 20px !important; z-index: 4 !important; display: flex !important; align-items: center !important; gap: 8px !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-count { margin-right: 6px !important; font-family: var(--nr-num) !important; font-size: 13px !important; letter-spacing: 1px !important; color: rgba(255, 255, 255, .55) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-count b { font-size: 20px !important; font-weight: 700 !important; color: #fff !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-arrow {
    position: relative !important; width: 38px !important; height: 38px !important; padding: 0 !important; margin: 0 !important; border-radius: 50% !important; cursor: pointer;
    background: rgba(10, 13, 20, .45) !important; border: 1px solid rgba(255, 255, 255, .18) !important; box-shadow: none !important; backdrop-filter: blur(10px); transition: background .18s ease, border-color .18s ease !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-arrow::before { content: "" !important; position: absolute !important; top: 50% !important; left: 50% !important; width: 9px !important; height: 9px !important; border: solid #fff !important; border-width: 2px 2px 0 0 !important; transform: translate(-30%, -50%) rotate(-135deg) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-arrow.is-next::before { transform: translate(-70%, -50%) rotate(45deg) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-arrow:hover { background: rgba(255, 255, 255, .18) !important; border-color: rgba(255, 255, 255, .4) !important; }

/* Segmented progress: one bar per game, hovering a segment previews the game */
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav {
    position: absolute !important; left: 40px !important; right: 40px !important; bottom: 18px !important; z-index: 4 !important; display: grid !important; grid-auto-flow: column !important; grid-auto-columns: minmax(0, 1fr) !important;
    gap: 14px !important; padding: 0 !important; background: none !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav button {
    position: relative !important; display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 10px !important; min-width: 0 !important; height: auto !important; padding: 10px 0 0 !important; margin: 0 !important; overflow: visible !important;
    border: 0 !important; border-radius: 0 !important; background: none !important; color: rgba(255, 255, 255, .5) !important; text-align: left !important; cursor: pointer; box-shadow: none !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav .nex70-seg { position: relative !important; display: block !important; height: 3px !important; border-radius: 3px !important; overflow: hidden !important; background: rgba(255, 255, 255, .2) !important; transition: height .2s ease !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav .nex70-seg i { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; border-radius: inherit !important; background: #fff !important; transform-origin: left center !important; transform: scaleX(0); }
/* 0.21.78: the current game's line fills in white while it plays and holds still while the pointer is over the carousel.
   No coloured track: just a brighter grey rail with a soft glow on the fill. transform is animated, so it must not carry !important. */
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav button[aria-current] .nex70-seg { height: 4px !important; background: rgba(255, 255, 255, .26) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav button[aria-current] .nex70-seg i { transform: scaleX(1); box-shadow: 0 0 8px rgba(255, 255, 255, .55) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature.is-running .nex70-feature-nav button[aria-current] .nex70-seg i { animation: nex77-fill 7s linear both; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature.is-paused .nex70-feature-nav button[aria-current] .nex70-seg i { animation-play-state: paused; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav .nex70-seg { transition: height .2s ease, background-color .2s ease !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav .nex78-idx { margin-right: 8px; font-style: normal; font-family: var(--nr-num, inherit); font-size: 12px; font-weight: 800; letter-spacing: .5px; color: rgba(255, 255, 255, .35); transition: color .2s ease; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav button[aria-current] .nex78-idx { color: #fff; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav .nex70-seg-title { min-width: 0 !important; font-size: 13px !important; font-weight: 700 !important; line-height: 1.3 !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; transition: color .2s ease !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav button[aria-current],
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav button:hover { color: #fff !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav button:hover .nex70-seg { height: 5px !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav .nex70-peek {
    position: absolute !important; left: 0 !important; bottom: calc(100% + 10px) !important; width: 168px !important; max-width: none !important; height: auto !important; aspect-ratio: 16 / 9 !important; object-fit: cover !important;
    border-radius: 10px !important; border: 1px solid rgba(255, 255, 255, .25) !important; box-shadow: 0 16px 40px rgba(0, 0, 0, .55) !important;
    opacity: 0 !important; transform: translateY(8px) scale(.96) !important; transition: opacity .2s ease, transform .2s ease !important; pointer-events: none !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav button:hover .nex70-peek { opacity: 1 !important; transform: none !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav button[aria-current] .nex70-peek { display: none !important; }

@keyframes nex72-push { from { transform: scale(1.09); } to { transform: scale(1); } }
@keyframes nex72-rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
@keyframes nex77-fill { from { transform: scaleX(0); } to { transform: scaleX(1); } }

/* 近期热门: rows share the full height, outlined rank numerals, heat underline grows in, live pulse */
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank {
    display: flex !important; flex-direction: column !important; min-height: 0 !important; padding: 22px 18px 14px !important; border-radius: 22px !important;
    background: linear-gradient(180deg, color-mix(in srgb, var(--nr-panel-2) 92%, transparent), var(--nr-panel)) !important; border: 1px solid var(--nr-line) !important; box-shadow: none !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank header { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 10px !important; margin: 0 4px 10px !important; padding: 0 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank header h2 { display: inline-flex !important; align-items: center !important; gap: 10px !important; margin: 0 !important; font-size: 19px !important; font-weight: 900 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank header h2::after { content: "" !important; display: block !important; width: 8px !important; height: 8px !important; border-radius: 50% !important; background: var(--nr-ok) !important; animation: nex72-pulse 1.8s ease-out infinite; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank ol { flex: 1 1 auto !important; display: flex !important; flex-direction: column !important; justify-content: stretch !important; gap: 4px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li {
    --nr-heat: var(--nr-accent);
    position: relative !important; flex: 1 1 0 !important; display: flex !important; align-items: center !important; gap: 12px !important; min-height: 44px !important; margin: 0 !important; padding: 7px 12px 7px 6px !important;
    border: 0 !important; border-radius: 14px !important; cursor: pointer;
    background: linear-gradient(90deg, color-mix(in srgb, var(--nr-heat) 85%, transparent), color-mix(in srgb, var(--nr-heat) 25%, transparent)) no-repeat 170px calc(100% - 6px) / calc((100% - 196px) * var(--nex-rank-pct-n, 1)) 2px !important;
    transition: background-color .2s ease, transform .2s ease !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:first-child { --nr-heat: var(--nr-gold); }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:hover { background-color: color-mix(in srgb, var(--nr-text) 6%, transparent) !important; transform: translateX(3px) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li::before {
    flex: 0 0 36px !important; width: 36px !important; text-align: center !important; font-family: var(--nr-num) !important; font-size: 30px !important; font-weight: 800 !important; line-height: 1 !important; font-style: italic !important;
    color: transparent !important; -webkit-text-stroke: 1.2px color-mix(in srgb, var(--nr-text) 45%, transparent) !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(1)::before { color: var(--nr-gold) !important; -webkit-text-stroke: 0 !important; text-shadow: 0 0 18px rgba(255, 181, 71, .45) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(2)::before { color: #d5dbe6 !important; -webkit-text-stroke: 0 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(3)::before { color: #e39b6b !important; -webkit-text-stroke: 0 !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li::after {
    content: "" !important; display: block !important; flex: 0 0 auto !important; width: 7px !important; height: 7px !important; margin-left: 2px !important; border: solid var(--nr-muted) !important; border-width: 2px 2px 0 0 !important;
    transform: rotate(45deg) translateX(-4px) !important; opacity: 0 !important; transition: opacity .2s ease, transform .2s ease !important; background: none !important; position: static !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:hover::after { opacity: 1 !important; transform: rotate(45deg) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li > a {
    flex: 1 1 auto !important; min-width: 0 !important; display: grid !important; grid-template-columns: 104px minmax(0, 1fr) !important; grid-template-rows: auto auto !important;
    column-gap: 12px !important; row-gap: 4px !important; align-items: center !important; padding: 0 !important; margin: 0 !important; background: none !important; border: 0 !important; color: var(--nr-text) !important; text-decoration: none !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li > a::after { content: "" !important; position: absolute !important; inset: 0 !important; border-radius: inherit !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li > a:hover { background: none !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li img {
    grid-column: 1 !important; grid-row: 1 / 3 !important; width: 104px !important; height: 49px !important; border-radius: 8px !important; object-fit: cover !important;
    box-shadow: 0 6px 16px -8px rgba(0, 0, 0, .6) !important; transition: filter .2s ease, transform .2s ease !important;
}
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:hover img { filter: brightness(1.12) saturate(1.1) !important; transform: scale(1.04) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li strong { grid-column: 2 !important; grid-row: 1 !important; display: block !important; align-self: end !important; font-size: 14.5px !important; font-weight: 800 !important; line-height: 1.35 !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; color: var(--nr-text) !important; transition: color .2s ease !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:hover strong { color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li strong::after { display: none !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li span { grid-column: 2 !important; grid-row: 2 !important; align-self: start !important; display: inline-flex !important; align-items: center !important; gap: 7px !important; font-family: var(--nr-num) !important; font-size: 12.5px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li span::before { content: "" !important; flex: 0 0 6px !important; width: 6px !important; height: 6px !important; border-radius: 50% !important; background: var(--nr-ok) !important; box-shadow: 0 0 0 0 rgba(91, 224, 168, .6); animation: nex72-pulse 2.4s ease-out infinite; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(2) span::before { animation-delay: .4s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(3) span::before { animation-delay: .8s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(4) span::before { animation-delay: 1.2s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(n+5) span::before { animation-delay: 1.6s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li { animation: nex72-heat 1.2s cubic-bezier(.2, .7, .2, 1) both; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(2) { animation-delay: .08s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(3) { animation-delay: .16s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(4) { animation-delay: .24s; }
html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li:nth-child(n+5) { animation-delay: .32s; }
@keyframes nex72-heat { from { background-size: 0 2px; } }
@keyframes nex72-pulse { 0% { box-shadow: 0 0 0 0 rgba(91, 224, 168, .55); } 70%, 100% { box-shadow: 0 0 0 7px rgba(91, 224, 168, 0); } }

@media (prefers-reduced-motion: reduce) {
    html body:is(#nex-rd, *) .nex63-home-intro :is(.nex70-slide > img, .nex63-feature-content > *, .nex63-minirank li, .nex63-minirank li span::before, .nex63-minirank header h2::after) { animation: none !important; }
}
@media (max-width: 960px) {
    html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li { flex: 0 0 auto !important; }
}
@media (max-width: 600px) {
    html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature { min-height: 520px !important; border-radius: 18px !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex70-slide::before { background: linear-gradient(0deg, rgba(5, 7, 12, .96) 0%, rgba(5, 7, 12, .78) 48%, rgba(5, 7, 12, .1) 80%) !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-content { padding: 24px 20px 64px !important; gap: 10px !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature .nex63-feature-content h2 { font-size: 28px !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-ctrl { top: 14px !important; right: 14px !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-arrow { display: none !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav { left: 20px !important; right: 20px !important; bottom: 22px !important; gap: 6px !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex70-feature-nav :is(.nex70-seg-title, .nex70-peek) { display: none !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li > a { grid-template-columns: 88px minmax(0, 1fr) !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li img { width: 88px !important; height: 41px !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex63-minirank li { min-height: 60px !important; background-position: 150px calc(100% - 6px) !important; background-size: calc((100% - 176px) * var(--nex-rank-pct-n, 1)) 2px !important; }
}
@media (max-width: 600px) {
    html body:is(#nex-rd, *).nex-home-numbered main :is(.widget-nex-box, .nex63-tabbed, .widget_nex_topic) { margin-top: 32px !important; }
    html body:is(#nex-rd, *).nex-home-numbered main :is(.nex-box-title, .nex-topics-title, .nex63-tabs button) { font-size: 20px !important; }
    html body:is(#nex-rd, *).nex-home-numbered main .nex63-tabs { gap: 20px !important; }
}

/* =================================================================
   4. Game detail page
   ================================================================= */
html body.single-post.nex63-game-page .nex63-breadcrumb { font-size: 13px !important; margin-bottom: 14px !important; }

html body.single-post.nex63-game-page .nex63-detail .nex63-detail-top {
    grid-template-columns: minmax(0, 1.42fr) minmax(0, 1fr) !important; align-items: stretch !important; gap: 28px !important; padding: 24px !important;
    border-radius: 20px !important; border: 1px solid var(--nr-line) !important; background: var(--nr-panel) !important; box-shadow: none !important;
}
/* Left column: gallery on top, summary card fills the rest so both columns end on the same line. */
html body.single-post.nex63-game-page .nex63-detail .nex63-detail-media { display: flex !important; flex-direction: column !important; gap: 12px !important; }
html body.single-post.nex63-game-page .nex63-detail .nex-media-gallery { flex: 0 0 auto !important; margin: 0 !important; }
html body.single-post.nex63-game-page .nex63-detail .nex-gallery-stage { border-radius: 16px !important; border: 1px solid var(--nr-line) !important; background: #000 !important; }
html body.single-post.nex63-game-page .nex63-detail .nex-gallery-strip { gap: 10px !important; margin-top: 12px !important; padding-bottom: 4px !important; }
html body.single-post.nex63-game-page .nex63-detail .nex-gallery-thumb { border-radius: 10px !important; border: 2px solid transparent !important; background: var(--nr-panel-2) !important; box-shadow: none !important; }
html body.single-post.nex63-game-page .nex63-detail .nex-gallery-thumb[aria-pressed="true"] { border-color: var(--nr-accent) !important; box-shadow: none !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-summary {
    flex: 1 1 auto !important; margin: 0 !important; padding: 16px 18px !important; border-radius: 14px !important;
    background: var(--nr-sunk) !important; border: 1px solid var(--nr-line) !important; color: var(--nr-soft) !important; font-size: 14px !important; line-height: 1.85 !important;
}

/* Right column */
html body.single-post.nex63-game-page .nex63-detail .nex63-detail-info { display: flex !important; flex-direction: column !important; gap: 14px !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-detail-info > * { margin: 0 !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-detail-info > h1 { font-size: clamp(28px, 2.4vw, 36px) !important; line-height: 1.2 !important; font-weight: 900 !important; color: var(--nr-strong) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-detail-info > .nex63-english { margin-top: -8px !important; font-family: var(--nr-num) !important; font-size: 16px !important; color: var(--nr-soft) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-detail-info > .nex63-facts { display: flex !important; flex-wrap: wrap !important; gap: 6px !important; font-size: 12px !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-facts > span {
    display: inline-flex; align-items: center; padding: 4px 10px; border-radius: 999px; line-height: 1.5;
    background: var(--nr-panel-2); border: 1px solid var(--nr-line); color: var(--nr-soft);
}

/* "满足配置" verdict card */
html body.single-post.nex63-game-page .nex63-detail .nex63-reference { order: 0; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference .nex-play-information {
    display: block !important; margin: 0 !important; padding: 14px 16px !important; border-radius: 14px !important;
    background: var(--nr-panel-2) !important; border: 1px solid var(--nr-line) !important; box-shadow: none !important;
}
html body.single-post.nex63-game-page .nex63-detail .nex63-reference .nex-play-information:is([data-play-tone=great], [data-play-tone=good]) { background: var(--nr-ok-bg) !important; border-color: var(--nr-ok-line) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference .nex-play-information[data-play-tone=ok] { background: var(--nr-info-bg) !important; border-color: var(--nr-info-line) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference .nex-play-information[data-play-tone=tight] { background: var(--nr-warn-bg) !important; border-color: var(--nr-warn-line) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference .nex-play-information[data-play-tone=no] { background: var(--nr-bad-bg) !important; border-color: var(--nr-bad-line) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference .nex-play-verdict:not([hidden]) { display: flex !important; align-items: center !important; gap: 12px !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference .nex-play-led { width: 10px !important; height: 10px !important; flex: 0 0 10px; border-radius: 50% !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference .nex-play-output { margin: 0 !important; font-size: 15px !important; font-weight: 700 !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference [data-play-tone=great] .nex-play-output,
html body.single-post.nex63-game-page .nex63-detail .nex63-reference [data-play-tone=good] .nex-play-output { color: var(--nr-ok) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference [data-play-tone=tight] .nex-play-output { color: var(--nr-warn) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference [data-play-tone=no] .nex-play-output { color: var(--nr-bad) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-reference [data-play-empty] { font-size: 13px !important; color: var(--nr-muted) !important; }

/* Download panel: any number of cloud drives, laid out as an even grid */
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-resource-section,
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-resource-layout { margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-panel {
    margin: 0 !important; padding: 16px !important; border-radius: 16px !important; background: var(--nr-sunk) !important; border: 1px solid var(--nr-line) !important; box-shadow: none !important;
}
html body.single-post.nex63-game-page .nex63-detail .nex64-download-head { margin: 0 0 12px !important; gap: 6px 12px !important; }
html body.single-post.nex63-game-page .nex63-detail .nex64-download-head h3 { font-size: 15px !important; font-weight: 700 !important; color: var(--nr-strong) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex64-resource-meta { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 4px 10px !important; font-family: var(--nr-num) !important; font-size: 12px !important; color: var(--nr-muted) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex64-resource-meta > span { padding: 0 !important; margin: 0 !important; background: none !important; border: 0 !important; color: inherit !important; }
html body.single-post.nex63-game-page .nex63-detail .nex64-active-status { display: inline-flex !important; align-items: center !important; gap: 5px !important; color: var(--nr-ok) !important; font-weight: 600; }
html body.single-post.nex63-game-page .nex63-detail .nex64-active-status::before { content: "" !important; display: block !important; width: 7px !important; height: 7px !important; border-radius: 50% !important; background: currentColor !important; }
html body.single-post.nex63-game-page .nex63-detail .nex64-active-status:is([data-status=pending]) { color: var(--nr-warn) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex64-active-status:is([data-status=invalid], [data-status=paused]) { color: var(--nr-bad) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex64-safety { color: var(--nr-soft) !important; }

html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-grid {
    display: grid !important; grid-template-columns: repeat(auto-fit, minmax(min(100%, 168px), 1fr)) !important; gap: 10px !important;
}
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-card {
    display: flex !important; align-items: center !important; gap: 10px !important; min-height: 60px !important; margin: 0 !important; padding: 10px 12px !important;
    border-radius: 12px !important; background: var(--nr-panel) !important; border: 1px solid var(--nr-line-2) !important; color: var(--nr-text) !important;
    box-shadow: none !important; transform: none !important; text-decoration: none !important; transition: border-color .15s ease, background-color .15s ease !important;
}
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads a.nex-download-card:hover { border-color: var(--nr-accent) !important; background: var(--nr-panel-2) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads a.nex-download-card:first-child { background: var(--nr-accent) !important; border-color: var(--nr-accent) !important; color: #fff !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads a.nex-download-card:first-child:hover { filter: brightness(1.08); }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-card.is-disabled { opacity: .5 !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-icon {
    display: flex !important; align-items: center !important; justify-content: center !important; flex: 0 0 34px !important; width: 34px !important; height: 34px !important;
    margin: 0 !important; border-radius: 9px !important; background: rgba(255, 255, 255, .08) !important; color: inherit !important;
}
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads a.nex-download-card:first-child .nex-download-icon { background: rgba(255, 255, 255, .92) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-icon :is(img, svg) { width: 22px !important; height: 22px !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-main { display: flex !important; flex-direction: column !important; gap: 2px !important; min-width: 0 !important; flex: 1 1 auto !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-main strong { font-size: 14px !important; font-weight: 700 !important; line-height: 1.35 !important; color: inherit !important; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-main small { font-family: var(--nr-num) !important; font-size: 12px !important; line-height: 1.4 !important; color: var(--nr-muted) !important; opacity: 1 !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads a.nex-download-card:first-child .nex-download-main small { color: rgba(255, 255, 255, .85) !important; }
/* The old "前往下载" pill becomes a small QR glyph: a click opens the QR dialog. */
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-card::after {
    content: "" !important; display: block !important; flex: 0 0 16px !important; width: 16px !important; height: 16px !important; min-width: 0 !important; min-height: 0 !important;
    margin: 0 0 0 auto !important; padding: 0 !important; border-radius: 0 !important; background: var(--nr-soft) !important; opacity: .85 !important; color: inherit !important; filter: none !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Cpath d='M14 14h3v3M21 14v7h-7'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Cpath d='M14 14h3v3M21 14v7h-7'/%3E%3C/svg%3E") center / contain no-repeat;
}
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads a.nex-download-card:first-child::after { background: #fff !important; opacity: .9 !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-card.is-disabled::after { display: none !important; }

/* Help links + player reviews */
html body.single-post.nex63-game-page .nex63-detail .nex62-play-links { display: flex !important; flex-wrap: wrap !important; gap: 6px 18px !important; margin: 0 !important; padding: 0 !important; }
html body.single-post.nex63-game-page .nex63-detail .nex62-play-links > :is(a, button) {
    padding: 0 !important; margin: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important;
    font-size: 13px !important; color: var(--nr-link) !important; cursor: pointer;
}
html body.single-post.nex63-game-page .nex63-detail .nex62-play-links > :is(a, button):hover { text-decoration: underline !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-player-reviews { flex: 1 1 auto !important; display: flex !important; flex-direction: column !important; margin: 0 !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-player-reviews > h3 { font-size: 13px !important; font-weight: 500 !important; color: var(--nr-muted) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-player-reviews > div { flex: 1 1 auto; gap: 10px !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-review {
    display: flex !important; flex-direction: column !important; justify-content: center !important; gap: 2px !important; padding: 12px 14px !important;
    border-radius: 12px !important; background: var(--nr-panel-2) !important; border: 1px solid var(--nr-line) !important; box-shadow: none !important;
}
html body.single-post.nex63-game-page .nex63-detail .nex63-review span { font-size: 12px !important; color: var(--nr-muted) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-review strong { font-size: 16px !important; font-weight: 700 !important; color: var(--nr-link) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-review.is-empty strong { color: var(--nr-soft) !important; }
html body.single-post.nex63-game-page .nex63-detail .nex63-review small { font-family: var(--nr-num) !important; font-size: 12px !important; color: var(--nr-muted) !important; }

/* Lower sections share one panel look */
html body.single-post.nex63-game-page :is(#nex63-description, #nex-pc-requirements, .nex-perf-section, .nex-related-games) {
    margin: 20px 0 0 !important; padding: 26px !important; border-radius: 18px !important;
    background: var(--nr-panel) !important; border: 1px solid var(--nr-line) !important; box-shadow: none !important; color: var(--nr-text) !important;
}
html body.single-post.nex63-game-page :is(#nex63-description, #nex-pc-requirements, .nex-perf-section, .nex-related-games) > :is(h2, h3, .nex-detail-title) {
    margin: 0 0 16px !important; padding: 0 !important; border: 0 !important; font-size: 20px !important; font-weight: 900 !important; line-height: 1.4 !important; color: var(--nr-strong) !important;
}
html body.single-post.nex63-game-page :is(#nex63-description, #nex-pc-requirements, .nex-perf-section, .nex-related-games) > :is(h2, h3, .nex-detail-title)::before,
html body.single-post.nex63-game-page :is(#nex63-description, #nex-pc-requirements, .nex-perf-section, .nex-related-games) > :is(h2, h3, .nex-detail-title)::after { display: none !important; }
html body.single-post.nex63-game-page #nex63-description .nex63-description-body { font-size: 15px !important; line-height: 1.9 !important; color: var(--nr-soft) !important; }

/* System requirements */
html body.single-post.nex63-game-page #nex-pc-requirements .nex-pc-requirement-card {
    margin: 0 !important; border-radius: 14px !important; overflow: hidden; background: var(--nr-sunk) !important; border: 1px solid var(--nr-line) !important; box-shadow: none !important;
}
html body.single-post.nex63-game-page #nex-pc-requirements .nex-pc-requirement-head {
    margin: 0 !important; padding: 12px 16px !important; font-size: 14px !important; font-weight: 700 !important; color: var(--nr-strong) !important;
    background: var(--nr-panel-2) !important; border: 0 !important; border-bottom: 1px solid var(--nr-line) !important;
}
html body.single-post.nex63-game-page #nex-pc-requirements .nex-pc-requirement-head :is(h3, h4, strong) { margin: 0 !important; font-size: 14px !important; color: var(--nr-strong) !important; }
html body.single-post.nex63-game-page #nex-pc-requirements .nex-pc-requirement-head ::before { display: none !important; }
html body.single-post.nex63-game-page #nex-pc-requirements .nex-pc-requirement-list { padding: 4px 16px !important; }
html body.single-post.nex63-game-page #nex-pc-requirements .nex-pc-requirement-row { padding: 11px 0 !important; border-bottom: 1px solid var(--nr-line) !important; font-size: 13px !important; line-height: 1.6 !important; }
html body.single-post.nex63-game-page #nex-pc-requirements .nex-pc-requirement-row:last-child { border-bottom: 0 !important; }

/* Player benchmarks */
html body.single-post.nex63-game-page .nex-perf-section .nex-perf-hint { margin: -6px 0 14px !important; font-size: 13px !important; color: var(--nr-muted) !important; }
html body.single-post.nex63-game-page .nex-perf-section .nex-perf-primary {
    height: 44px !important; padding: 0 18px !important; border: 0 !important; border-radius: 10px !important; background: var(--nr-accent) !important; color: #fff !important;
    font-size: 14px !important; font-weight: 700 !important; box-shadow: none !important;
}
html body.single-post.nex63-game-page .nex-perf-section .nex-perf-empty {
    margin: 16px 0 0 !important; padding: 26px !important; text-align: center !important; border-radius: 12px !important;
    border: 1px dashed var(--nr-line-2) !important; background: none !important; color: var(--nr-muted) !important; font-size: 14px !important;
}

/* Related games */
html body.single-post.nex63-game-page .nex-related-games .nex-section-caption { margin: -8px 0 16px !important; font-size: 13px !important; color: var(--nr-muted) !important; }
html body.single-post.nex63-game-page .nex-related-games .nex-related-games-grid { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(min(100%, 180px), 1fr)) !important; gap: 14px !important; }
html body.single-post.nex63-game-page .nex-related-games .nex-related-game {
    border-radius: 14px !important; overflow: hidden !important; background: var(--nr-panel-2) !important; border: 1px solid var(--nr-line) !important;
    box-shadow: none !important; color: var(--nr-text) !important; transition: transform .2s ease, border-color .2s ease !important;
}
html body.single-post.nex63-game-page .nex-related-games .nex-related-game:hover { transform: translateY(-3px) !important; border-color: var(--nr-line-2) !important; }

/* =================================================================
   4b. Full-width game page (0.21.72): includes/detail70.php puts the
   blocks into .nex70-game. The whole page sits on one blurred copy of
   the game art; every panel is frosted glass over it.
   ================================================================= */
html body:is(#nex-rd, *) #nex70-game.nex70-game {
    --g-panel: color-mix(in srgb, var(--nr-panel) 72%, transparent);
    --g-panel-2: color-mix(in srgb, var(--nr-panel-2) 80%, transparent);
    --g-sunk: color-mix(in srgb, var(--nr-bg) 46%, transparent);
    --g-line: color-mix(in srgb, var(--nr-strong) 9%, transparent);
    --g-line-2: color-mix(in srgb, var(--nr-strong) 15%, transparent);
    --g-hi: inset 0 1px 0 color-mix(in srgb, #fff 6%, transparent);
    --g-blur: none; /* 0.21.79: no live blur on the panels; the page background is already blurred, and backdrop-filter re-blurs on every scroll frame */
    position: relative !important; display: block !important; overflow: visible !important; overflow-x: clip !important; isolation: isolate; padding: 0 !important; margin: 0 !important;
    color: var(--nr-text) !important; background: radial-gradient(1100px 520px at 70% -120px, color-mix(in srgb, var(--nr-accent) 14%, transparent), transparent 70%), var(--nr-bg) !important;
}
html:is([data-bs-theme=light], [data-nex-theme=light], [data-theme=light]) body:is(#nex-rd, *) #nex70-game.nex70-game {
    --g-panel: color-mix(in srgb, #fff 84%, transparent);
    --g-panel-2: color-mix(in srgb, #fff 88%, transparent);
    --g-sunk: color-mix(in srgb, #eef2f8 70%, transparent);
    --g-line: rgba(15, 30, 60, .09);
    --g-line-2: rgba(15, 30, 60, .16);
    --g-hi: inset 0 1px 0 rgba(255, 255, 255, .7);
}
/* One blurred backdrop for the whole page: it stays in view while the page scrolls (sticky), so there is no seam. */
html body:is(#nex-rd, *) #nex70-game .nex70-backdrop {
    position: sticky !important; top: 0 !important; left: 0 !important; display: block !important; width: 100% !important; height: 100vh !important; margin: 0 0 -100vh !important;
    overflow: hidden !important; pointer-events: none !important; z-index: 0 !important;
}
html body:is(#nex-rd, *) #nex70-game.nex70-game.nex70-fixed-bg { clip-path: inset(0); }
html body:is(#nex-rd, *) #nex70-game.nex70-game.nex70-fixed-bg .nex70-backdrop { position: fixed !important; inset: 0 !important; height: auto !important; margin: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-backdrop img {
    /* 0.21.79: blurred at 1/8 size and scaled up 8x: looks the same as blur(70px) at full size for ~1/64 of the rendering cost */
    position: absolute !important; left: -90px !important; top: -90px !important; right: auto !important; bottom: auto !important;
    width: calc((100% + 180px) / 8) !important; height: calc((100% + 180px) / 8) !important; max-width: none !important;
    object-fit: cover !important; filter: blur(9px) saturate(1.5) !important; opacity: .6 !important; transform: scale(8) !important; transform-origin: 0 0 !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-backdrop::after {
    content: "" !important; position: absolute !important; inset: 0 !important;
    background: radial-gradient(130% 90% at 50% 0%, color-mix(in srgb, var(--nr-bg) 38%, transparent) 0%, color-mix(in srgb, var(--nr-bg) 74%, transparent) 75%) !important;
}
html:is([data-bs-theme=light], [data-nex-theme=light], [data-theme=light]) body:is(#nex-rd, *) #nex70-game .nex70-backdrop img { opacity: .4 !important; }
html:is([data-bs-theme=light], [data-nex-theme=light], [data-theme=light]) body:is(#nex-rd, *) #nex70-game .nex70-backdrop::after { background: color-mix(in srgb, var(--nr-bg) 70%, transparent) !important; }

html body:is(#nex-rd, *) #nex70-game .nex70-shell { position: relative !important; z-index: 1 !important; box-sizing: border-box !important; width: 100% !important; max-width: calc(var(--nex70-w, 1240px) + 48px) !important; margin: 0 auto !important; padding: 22px 24px 72px !important; display: flex !important; flex-direction: column !important; gap: 30px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-source:empty { display: none !important; }
/* Nothing shows until the blocks are in place; the inline script flips is-ready right after parsing. */
html body:is(#nex-rd, *) #nex70-game.nex70-game:not(.is-ready) .nex70-shell { opacity: 0; }
html body:is(#nex-rd, *) #nex70-game.nex70-game.is-ready .nex70-shell { animation: nex72-page .45s ease both; }
@keyframes nex72-page { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }

/* ---------- Hero ---------- */
html body:is(#nex-rd, *) #nex70-game .nex70-hero { display: flex !important; flex-direction: column !important; gap: 16px !important; margin: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-breadcrumb { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; margin: 0 !important; padding: 0 !important; font-size: 13px !important; color: var(--nr-muted) !important; background: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-breadcrumb a { color: var(--nr-soft) !important; text-decoration: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-breadcrumb a:hover { color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail { margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-top {
    display: grid !important; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr) !important; grid-template-rows: auto 1fr !important; grid-template-areas: "media info" "steps info" !important; gap: 20px 32px !important; align-items: start !important;
    margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
}

/* Player: a true 16:9 frame; pictures are shown whole (contain) over a blurred fill, never stretched or cropped */
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-top > .nex63-detail-media { grid-area: media !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-top > .nex63-detail-info { grid-area: info !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-top > .nex70-steps { grid-area: steps !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-media { display: block !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-media-gallery { position: relative !important; display: flex !important; flex-direction: column !important; gap: 12px !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-stage {
    position: relative !important; flex: none !important; width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important; aspect-ratio: 16 / 9 !important; margin: 0 !important; overflow: hidden !important;
    border-radius: 18px !important; background: #04060a !important; border: 1px solid var(--g-line-2) !important; box-shadow: 0 30px 70px -28px rgba(0, 0, 0, .75) !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-stage-fill { position: absolute !important; inset: -40px !important; width: calc(100% + 80px) !important; height: calc(100% + 80px) !important; max-width: none !important; object-fit: cover !important; filter: blur(28px) brightness(.55) saturate(1.3) !important; z-index: 0 !important; pointer-events: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-panel { position: absolute !important; inset: 0 !important; z-index: 1 !important; margin: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-panel > :is(a, button, div) { display: block !important; width: 100% !important; height: 100% !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-panel :is(img, video, iframe) { width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; aspect-ratio: auto !important; object-fit: contain !important; border: 0 !important; border-radius: 0 !important; display: block !important; background: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-panel :is(video, iframe) { background: #000 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-panel > button.nex-gallery-play { position: relative !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: 12px !important; cursor: pointer; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-play :is(.nex-gallery-poster, .nex-video-frame) { position: absolute !important; inset: 0 !important; z-index: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-play :is(.nex-gallery-play-icon, .nex-gallery-play-text) { position: relative !important; z-index: 1 !important; inset: auto !important; margin: 0 !important; }
/* 0.21.94 play button: a plain ring in the logo's ice cyan with a rounded triangle; turns NEX blue on hover. No blur, no label. */
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-play-text { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-play-icon { width: 64px !important; height: 64px !important; border: 1.5px solid rgba(200, 251, 255, .6) !important; border-radius: 50% !important; background: rgba(6, 10, 16, .48) !important; box-shadow: none !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; transition: transform .25s cubic-bezier(.2, .7, .2, 1), background-color .2s, border-color .2s !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-play-icon::after { content: "" !important; display: block !important; width: 24px !important; height: 24px !important; margin: 0 0 0 3px !important; border: 0 !important; background: #fff !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5.2v13.6a1.3 1.3 0 0 0 2 1.1l10.4-6.8a1.3 1.3 0 0 0 0-2.2L10 4.1a1.3 1.3 0 0 0-2 1.1z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5.2v13.6a1.3 1.3 0 0 0 2 1.1l10.4-6.8a1.3 1.3 0 0 0 0-2.2L10 4.1a1.3 1.3 0 0 0-2 1.1z'/%3E%3C/svg%3E") center / contain no-repeat; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-play:is(:hover, :focus-visible) .nex-gallery-play-icon { transform: scale(1.06) !important; background: #0a6cff !important; border-color: #0a6cff !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-play:active .nex-gallery-play-icon { transform: scale(.96) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-kind.is-video { display: inline-flex !important; align-items: center !important; gap: 4px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-kind.is-video::before { content: ""; width: 9px; height: 9px; background: #c8fbff; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5.2v13.6a1.3 1.3 0 0 0 2 1.1l10.4-6.8a1.3 1.3 0 0 0 0-2.2L10 4.1a1.3 1.3 0 0 0-2 1.1z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5.2v13.6a1.3 1.3 0 0 0 2 1.1l10.4-6.8a1.3 1.3 0 0 0 0-2.2L10 4.1a1.3 1.3 0 0 0-2 1.1z'/%3E%3C/svg%3E") center / contain no-repeat; }
@media (prefers-reduced-motion: reduce) { html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-play-icon { transition: none !important; } }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-play.has-video-frame :is(.nex-gallery-play-icon, .nex-gallery-play-text) { display: none !important; }
/* Caption + prev/next sit over the frame */
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-tools { position: absolute !important; left: 0 !important; right: 0 !important; top: 0 !important; aspect-ratio: 16 / 9 !important; z-index: 3 !important; margin: 0 !important; padding: 0 !important; pointer-events: none !important; background: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-caption { position: absolute !important; left: 14px !important; bottom: 14px !important; padding: 5px 11px !important; border-radius: 999px !important; background: rgba(5, 7, 12, .55) !important; color: rgba(255, 255, 255, .85) !important; font-size: 12px !important; backdrop-filter: blur(8px); pointer-events: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-tools > div { position: absolute !important; inset: 0 !important; display: flex !important; align-items: center !important; justify-content: space-between !important; padding: 0 14px !important; pointer-events: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-tools button {
    pointer-events: auto !important; width: 42px !important; height: 42px !important; padding: 0 !important; margin: 0 !important; border-radius: 50% !important; border: 1px solid rgba(255, 255, 255, .25) !important;
    background: rgba(5, 7, 12, .5) !important; color: #fff !important; font-size: 24px !important; line-height: 1 !important; backdrop-filter: blur(10px); box-shadow: none !important; cursor: pointer;
    opacity: 0 !important; transform: scale(.9) !important; transition: opacity .2s ease, transform .2s ease, background .2s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-media-gallery:hover .nex-gallery-tools button:not(:disabled),
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-tools button:focus-visible { opacity: 1 !important; transform: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-tools button:hover { background: rgba(255, 255, 255, .2) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-strip {
    display: grid !important; grid-auto-flow: column !important; grid-auto-columns: calc((100% - 40px) / 5) !important; gap: 10px !important; margin: 0 !important; padding: 2px !important;
    overflow-x: auto !important; scrollbar-width: none !important; background: none !important; border: 0 !important; scroll-snap-type: x mandatory;
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-strip::-webkit-scrollbar { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-thumb {
    position: relative !important; width: auto !important; min-width: 0 !important; height: auto !important; aspect-ratio: 16 / 9 !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; scroll-snap-align: start;
    border-radius: 10px !important; border: 0 !important; outline: 2px solid transparent !important; outline-offset: 0 !important; background: var(--g-panel-2) !important; box-shadow: none !important; opacity: .55 !important; cursor: pointer;
    transition: opacity .2s ease, outline-color .2s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-thumb:hover { opacity: .9 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-thumb[aria-pressed="true"] { opacity: 1 !important; outline-color: var(--nr-accent) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-thumb img { width: 100% !important; height: 100% !important; object-fit: cover !important; border-radius: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-kind { position: absolute !important; left: 6px !important; bottom: 6px !important; top: auto !important; padding: 2px 7px !important; border-radius: 6px !important; background: rgba(5, 7, 12, .65) !important; color: #fff !important; font-size: 11px !important; line-height: 1.5 !important; border: 0 !important; }

/* Info column */
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-info { display: flex !important; flex-direction: column !important; gap: 18px !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-info > * { margin: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-badges { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; margin-bottom: -6px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-badge-new { font-family: var(--nr-num) !important; font-size: 11px !important; font-weight: 800 !important; letter-spacing: 1.2px !important; padding: 4px 9px !important; border-radius: 999px !important; background: var(--nr-gold) !important; color: #1a1203 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-badge-cat { font-size: 12px !important; padding: 4px 10px !important; border-radius: 999px !important; background: var(--g-panel-2) !important; border: 1px solid var(--g-line) !important; color: var(--nr-soft) !important; text-decoration: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-badge-cat:hover { color: var(--nr-strong) !important; border-color: var(--g-line-2) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-info > h1 { font-size: clamp(30px, 3vw, 42px) !important; line-height: 1.14 !important; font-weight: 900 !important; color: var(--nr-strong) !important; letter-spacing: -.5px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-info > .nex63-english { margin-top: -10px !important; font-family: var(--nr-num) !important; font-size: 16px !important; letter-spacing: .3px !important; color: var(--nr-soft) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts { display: grid !important; grid-template-columns: auto 1fr !important; gap: 9px 18px !important; padding: 14px 0 !important; border-top: 1px solid var(--g-line) !important; border-bottom: 1px solid var(--g-line) !important; font-size: 13.5px !important; line-height: 1.55 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts dt { margin: 0 !important; color: var(--nr-muted) !important; font-weight: 400 !important; white-space: nowrap !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts dd { margin: 0 !important; color: var(--nr-text) !important; min-width: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex70-num { font-family: var(--nr-num) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-languages { display: flex !important; flex-wrap: wrap !important; gap: 4px 12px !important; margin: 0 !important; }
/* 0.21.94 language chips: small outlined tags; supported = ice-cyan tick, unsupported = dim with a short dash, DLSS = NEX blue. */
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-languages { gap: 6px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language { display: inline-flex !important; align-items: center !important; gap: 5px !important; height: 26px !important; padding: 0 10px 0 8px !important; margin: 0 !important; border: 1px solid var(--nr-line) !important; border-radius: 7px !important; background: transparent !important; font-size: 12.5px !important; font-weight: 500 !important; line-height: 1 !important; letter-spacing: .02em !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language > i { flex: none; width: 14px; height: 14px; border-radius: 50%; background: currentColor; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language.is-supported { height: 28px !important; padding: 0 12px 0 6px !important; gap: 6px !important; border-color: rgba(200, 251, 255, .5) !important; background: rgba(200, 251, 255, .13) !important; color: #c8fbff !important; font-weight: 600 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language.is-supported > i { position: relative; width: 18px; height: 18px; border-radius: 50%; background: #c8fbff; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language.is-supported > i::after { content: ""; position: absolute; inset: 0; background: #0a1018; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.4l2.9 2.9 6.1-6.6' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.4l2.9 2.9 6.1-6.6' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px no-repeat; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language.is-unsupported { opacity: .6; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language.is-unsupported > i { width: 8px; height: 1.5px; margin: 0 3px; border-radius: 1px; }
html body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language.is-graphics { padding-left: 10px !important; border-color: rgba(10, 108, 255, .4) !important; background: rgba(10, 108, 255, .1) !important; color: #7fb3ff !important; font-family: var(--nr-num) !important; }
html:is([data-bs-theme=light], [data-nex-theme=light], [data-theme=light]) body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language.is-supported { border-color: rgba(10, 108, 255, .45) !important; background: rgba(10, 108, 255, .1) !important; color: #0a5ad6 !important; }
html:is([data-bs-theme=light], [data-nex-theme=light], [data-theme=light]) body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language.is-supported > i { background: #0a6cff; }
html:is([data-bs-theme=light], [data-nex-theme=light], [data-theme=light]) body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language.is-graphics { color: #0a6cff !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-reviews { display: flex !important; flex-wrap: wrap !important; gap: 4px 14px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-review { text-decoration: none !important; color: var(--nr-link) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-review b { font-weight: 800 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-review.is-mixed b { color: var(--nr-warn) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-review.is-negative b { color: var(--nr-bad) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-review small { margin-left: 6px !important; font-family: var(--nr-num) !important; font-size: 13px !important; color: var(--nr-muted) !important; }

/* Verdict card: "你的电脑可以流畅运行" + the hardware it was judged on */
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference {
    --v: var(--nr-link);
    display: flex !important; align-items: center !important; gap: 14px !important; min-height: 76px !important; box-sizing: border-box !important; padding: 14px 18px !important; border-radius: 16px !important;
    background: linear-gradient(100deg, color-mix(in srgb, var(--v) 16%, transparent), color-mix(in srgb, var(--v) 4%, transparent) 70%), var(--g-panel) !important;
    border: 1px solid color-mix(in srgb, var(--v) 32%, transparent) !important; box-shadow: var(--g-hi) !important; backdrop-filter: var(--g-blur); transition: background .3s ease, border-color .3s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference:has(:is([data-play-tone=great], [data-play-tone=good])) { --v: var(--nr-ok); }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference:has([data-play-tone=tight]) { --v: var(--nr-warn); }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference:has([data-play-tone=no]) { --v: var(--nr-bad); }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference::before {
    content: "" !important; flex: 0 0 44px !important; width: 44px !important; height: 44px !important; border-radius: 50% !important;
    background: color-mix(in srgb, var(--v) 20%, transparent) !important; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--v) 35%, transparent) !important;
    -webkit-mask: none !important; mask: none !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference .nex-play-information { position: relative !important; flex: 1 1 auto !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference .nex-play-information::before {
    content: "" !important; position: absolute !important; left: -46px !important; top: 50% !important; width: 20px !important; height: 20px !important; margin-top: -10px !important; background: var(--v) !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='2'/%3E%3Cpath d='M8 20h8M12 16v4'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='2'/%3E%3Cpath d='M8 20h8M12 16v4'/%3E%3C/svg%3E") center / contain no-repeat;
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference .nex-play-information:is([data-play-tone=great], [data-play-tone=good])::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E");
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference .nex-play-information:is([data-play-tone=tight], [data-play-tone=no])::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round'%3E%3Cpath d='M12 7v6M12 17h.01'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.8' stroke-linecap='round'%3E%3Cpath d='M12 7v6M12 17h.01'/%3E%3C/svg%3E");
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference.is-loading .nex-play-information::before { animation: nex72-blink 1s ease-in-out infinite alternate; }
@keyframes nex72-blink { to { opacity: .3; } }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference .nex-play-led { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference .nex-play-verdict { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip-path: inset(50%) !important; margin: 0 !important; padding: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-verdict { display: flex !important; flex-direction: column !important; gap: 3px !important; min-width: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-verdict[hidden] { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-verdict-title { font-size: 17px !important; font-weight: 800 !important; line-height: 1.35 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-verdict-sub { font-family: var(--nr-num) !important; font-size: 13px !important; line-height: 1.45 !important; color: color-mix(in srgb, var(--v) 70%, var(--nr-text)) !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-verdict-sub:empty { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference [data-play-empty]:not([hidden]) { display: flex !important; flex-direction: column !important; gap: 4px !important; font-size: 13px !important; line-height: 1.5 !important; color: var(--nr-soft) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference [data-play-empty] > span { font-size: 16px !important; font-weight: 800 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference [data-play-empty] a { color: var(--nr-link) !important; font-weight: 700 !important; text-decoration: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference > a { flex: 0 0 auto !important; padding: 7px 12px !important; border-radius: 10px !important; background: var(--g-sunk) !important; border: 1px solid var(--g-line) !important; font-size: 12.5px !important; color: var(--nr-soft) !important; text-decoration: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference > a:hover { color: var(--nr-strong) !important; border-color: var(--g-line-2) !important; }

/* 获取资源 */
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-player-reviews { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads :is(.nex-resource-section, .nex-resource-layout) { margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads .nex-resource-details { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads .nex-download-panel {
    display: flex !important; flex-direction: column !important; gap: 14px !important; margin: 0 !important; padding: 18px !important;
    border-radius: 18px !important; background: var(--g-panel) !important; border: 1px solid var(--g-line) !important; box-shadow: var(--g-hi), 0 24px 50px -30px rgba(0, 0, 0, .6) !important; backdrop-filter: var(--g-blur);
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads .nex-download-panel-title { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex64-download-head { display: flex !important; align-items: center !important; justify-content: space-between !important; flex-wrap: wrap !important; gap: 8px !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex64-download-head h3 { margin: 0 !important; font-size: 16px !important; font-weight: 800 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex64-download-head :is(.nex64-active-status, .nex64-safety) { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex64-resource-meta { display: flex !important; flex-wrap: wrap !important; gap: 0 !important; margin: 0 !important; padding: 0 !important; background: none !important; font-family: var(--nr-num) !important; font-size: 12px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex64-resource-meta > span { margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; color: inherit !important; white-space: nowrap !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex64-resource-meta > span + span::before { content: "\00a0·\00a0" !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 8px 14px !important; margin-top: -6px !important; font-size: 12.5px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status > span { display: inline-flex !important; align-items: center !important; gap: 6px !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; font-size: 12.5px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status .nex64-active-status { color: var(--nr-ok) !important; font-weight: 700 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status .nex64-active-status::before { content: "" !important; display: block !important; width: 7px !important; height: 7px !important; border-radius: 50% !important; background: currentColor !important; box-shadow: 0 0 0 3px color-mix(in srgb, currentColor 22%, transparent) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status .nex64-active-status:is([data-status=pending]) { color: var(--nr-warn) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status .nex64-active-status:is([data-status=invalid], [data-status=paused]) { color: var(--nr-bad) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status .nex64-safety { color: var(--nr-soft) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads .nex-download-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; margin: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads .nex-download-card { background: var(--g-panel-2) !important; border: 1px solid var(--g-line-2) !important; border-radius: 14px !important; gap: 12px !important; transition: transform .18s ease, border-color .18s ease, background .18s ease !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads .nex-download-card:hover { transform: translateY(-2px) !important; border-color: color-mix(in srgb, var(--nr-accent) 60%, transparent) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card:first-child { background: linear-gradient(180deg, #2a82ff, #0a6cff) !important; border-color: transparent !important; color: #fff !important; box-shadow: 0 14px 30px -14px rgba(10, 108, 255, .9) !important; }

/* ---------- Lower area: main column + aside, all frosted panels ---------- */
html body:is(#nex-rd, *) #nex70-game .nex70-cols { display: grid !important; grid-template-columns: minmax(0, 1fr) 340px !important; gap: 28px !important; align-items: start !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-cols.is-single { grid-template-columns: minmax(0, 1fr) !important; }
html body:is(#nex-rd, *) #nex70-game :is(.nex70-main, .nex70-aside) { display: flex !important; flex-direction: column !important; gap: 24px !important; min-width: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main > :is(section, details, .nex70-card),
html body:is(#nex-rd, *) #nex70-game .nex70-aside > :is(section, .nex70-card) {
    box-sizing: border-box !important; width: auto !important; margin: 0 !important; padding: 28px !important; border-radius: 22px !important;
    background: var(--g-panel) !important; border: 1px solid var(--g-line) !important; box-shadow: var(--g-hi), 0 30px 60px -40px rgba(0, 0, 0, .6) !important; backdrop-filter: var(--g-blur);
    color: var(--nr-text) !important; display: flex !important; flex-direction: column !important; gap: 16px !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-main > :is(section, details)[hidden] { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-aside > :is(section, .nex70-card) { padding: 22px !important; border-radius: 20px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main > section > :is(h2, h3, header, .nex-detail-title),
html body:is(#nex-rd, *) #nex70-game .nex70-main > section > header > h2,
html body:is(#nex-rd, *) #nex70-game .nex70-section-head > :is(h2, h3, .nex-detail-title),
html body:is(#nex-rd, *) #nex70-game .nex70-comments .comments-title {
    margin: 0 !important; padding: 0 0 0 14px !important; border: 0 !important; font-size: 21px !important; font-weight: 900 !important; line-height: 1.35 !important; letter-spacing: -.2px !important; color: var(--nr-strong) !important;
    background: linear-gradient(var(--nr-accent), var(--nr-accent)) left center / 4px 18px no-repeat !important; border-radius: 0 !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-main > section > header:is(header, #nex70-x) { padding: 0 !important; background: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main > section > header > h2 { padding-left: 14px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-aside > section > :is(h2, h3, .nex-detail-title) { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; font-size: 17px !important; font-weight: 900 !important; line-height: 1.4 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game :is(.nex70-main, .nex70-aside) > section > :is(h2, h3, .nex-detail-title)::before,
html body:is(#nex-rd, *) #nex70-game :is(.nex70-main, .nex70-aside) > section > :is(h2, h3, .nex-detail-title)::after,
html body:is(#nex-rd, *) #nex70-game .nex70-main > section > header > h2::before,
html body:is(#nex-rd, *) #nex70-game .nex70-main > section > header > h2::after { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main > p { margin: 0 !important; color: var(--nr-soft) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main > style + section { margin-top: 0 !important; }

/* Shared form controls inside the lower panels */
html body:is(#nex-rd, *) #nex70-game .nex70-main :is(input[type=text], input[type=email], input[type=url], input[type=number], input[type=search], select, textarea) {
    box-sizing: border-box !important; max-width: 100% !important; padding: 10px 13px !important; border-radius: 12px !important; border: 1px solid var(--g-line-2) !important;
    background: var(--g-sunk) !important; color: var(--nr-text) !important; font-size: 14px !important; box-shadow: none !important; outline: 0 !important; transition: border-color .18s ease, box-shadow .18s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-main :is(input[type=text], input[type=email], input[type=url], input[type=number], input[type=search], select) { height: 42px !important; padding-top: 0 !important; padding-bottom: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main :is(input, select, textarea):focus { border-color: var(--nr-accent) !important; box-shadow: 0 0 0 4px color-mix(in srgb, var(--nr-accent) 22%, transparent) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main ::placeholder { color: var(--nr-muted) !important; opacity: 1 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main input[type=checkbox] { accent-color: var(--nr-accent); width: 16px; height: 16px; }
html body:is(#nex-rd, *) #nex70-game .nex70-main details > summary { cursor: pointer; }

/* 游戏介绍 */
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex-game-tags { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; margin: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex-game-tags > :is(span, a) {
    display: inline-flex !important; align-items: center !important; height: 30px !important; padding: 0 13px !important; margin: 0 !important; border-radius: 999px !important;
    background: var(--g-sunk) !important; border: 1px solid var(--g-line) !important; color: var(--nr-soft) !important; font-size: 13px !important; text-decoration: none !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex63-summary { flex: 0 0 auto !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; font-size: 16px !important; font-weight: 500 !important; line-height: 1.85 !important; color: var(--nr-text) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex63-description-body { margin: 0 !important; font-size: 15px !important; line-height: 1.95 !important; color: var(--nr-soft) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex63-description-body :is(h2, h3, h4) { margin: 1.4em 0 .5em !important; padding: 0 !important; border: 0 !important; background: none !important; font-size: 19px !important; font-weight: 800 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex63-description-body :is(h2, h3, h4)::before { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex63-description-body :is(img, video, iframe) { max-width: 100% !important; height: auto !important; border-radius: 14px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex67-read-toggle:not([hidden]) {
    /* 0.21.90: centred pill with a chevron (was stretched full width by layout.css width:100%, text stuck at the left) */
    align-self: center !important; display: flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important;
    width: fit-content !important; height: 38px !important; padding: 0 20px !important; margin: 4px auto 0 !important; border-radius: 999px !important;
    border: 1px solid var(--g-line-2) !important; background: var(--g-sunk) !important; box-shadow: none !important; font-size: 13.5px !important; font-weight: 700 !important; color: var(--nr-text) !important; cursor: pointer;
}
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex67-read-toggle:hover { border-color: var(--nr-accent) !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex67-read-toggle::after {
    content: ""; width: 7px; height: 7px; margin-top: -4px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .25s ease, margin .25s ease;
}
html body:is(#nex-rd, *) #nex70-game .nex70-main #nex63-description .nex67-read-toggle[aria-expanded="true"]::after { transform: rotate(-135deg); margin-top: 3px; }

/* 配置需求 */
html body:is(#nex-rd, *) #nex70-game .nex70-section-head { display: flex !important; align-items: baseline !important; justify-content: space-between !important; flex-wrap: wrap !important; gap: 10px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-section-note { font-size: 13px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-spec-wrap { overflow-x: auto !important; border-radius: 14px !important; border: 1px solid var(--g-line) !important; background: var(--g-sunk) !important; }
html body:is(#nex-rd, *) #nex70-game table.nex70-spec { width: 100% !important; min-width: 560px !important; margin: 0 !important; border-collapse: collapse !important; border: 0 !important; background: none !important; }
html body:is(#nex-rd, *) #nex70-game table.nex70-spec :is(th, td) { padding: 13px 16px !important; border: 0 !important; border-bottom: 1px solid var(--g-line) !important; text-align: left !important; vertical-align: top !important; font-size: 13.5px !important; line-height: 1.55 !important; background: none !important; }
html body:is(#nex-rd, *) #nex70-game table.nex70-spec tbody tr:last-child :is(th, td) { border-bottom: 0 !important; }
html body:is(#nex-rd, *) #nex70-game table.nex70-spec tbody tr:hover :is(th, td) { background: color-mix(in srgb, var(--nr-text) 3%, transparent) !important; }
html body:is(#nex-rd, *) #nex70-game table.nex70-spec thead th { font-size: 12px !important; letter-spacing: .5px !important; color: var(--nr-muted) !important; font-weight: 700 !important; background: color-mix(in srgb, var(--nr-text) 3%, transparent) !important; }
html body:is(#nex-rd, *) #nex70-game table.nex70-spec tbody th { color: var(--nr-muted) !important; font-weight: 500 !important; white-space: nowrap !important; }
html body:is(#nex-rd, *) #nex70-game table.nex70-spec td { color: var(--nr-text) !important; }
html body:is(#nex-rd, *) #nex70-game table.nex70-spec .nex70-mine { background: color-mix(in srgb, var(--nr-accent) 8%, transparent) !important; }
html body:is(#nex-rd, *) #nex70-game table.nex70-spec th.nex70-mine { color: var(--nr-link) !important; }
html body:is(#nex-rd, *) #nex70-game table.nex70-spec td.nex70-mine { font-family: var(--nr-num) !important; color: var(--nr-strong) !important; }

/* 玩家性能实测 */
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-perf-section { display: grid !important; grid-template-columns: minmax(0, 1fr) auto !important; align-items: center !important; gap: 14px 10px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-perf-section > * { grid-column: 1 / -1 !important; margin: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-perf-section > h2 { grid-column: 1 !important; grid-row: 1 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-perf-section > .nex-perf-primary { grid-column: 2 !important; grid-row: 1 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-perf-section > .nex-perf-hint { font-size: 13px !important; color: var(--nr-muted) !important; margin-top: -8px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main :is(.nex-perf-primary, .nex-benchmark-button) {
    display: inline-flex !important; align-items: center !important; justify-content: center !important; height: 42px !important; padding: 0 18px !important; border: 0 !important; border-radius: 12px !important;
    background: linear-gradient(180deg, #2a82ff, #0a6cff) !important; color: #fff !important; font-size: 14px !important; font-weight: 800 !important; box-shadow: 0 10px 24px -12px rgba(10, 108, 255, .9) !important; cursor: pointer; transition: transform .18s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-main :is(.nex-perf-primary, .nex-benchmark-button):hover { transform: translateY(-1px) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-perf-secondary { height: 42px !important; padding: 0 18px !important; border-radius: 12px !important; border: 1px solid var(--g-line-2) !important; background: var(--g-sunk) !important; color: var(--nr-text) !important; font-weight: 700 !important; box-shadow: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-perf-section .nex-perf-empty { margin: 0 !important; padding: 34px 20px !important; border-radius: 16px !important; border: 1px dashed var(--g-line-2) !important; background: var(--g-sunk) !important; text-align: center !important; font-size: 14px !important; line-height: 1.7 !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main :is(.nex-perf-form, .nex-perf-wizard) { background: none !important; border: 0 !important; box-shadow: none !important; color: var(--nr-text) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-perf-form-head { color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-perf-progress span { border-radius: 999px !important; }

/* 游戏优化: each option is one inset card */
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-flow-hint { margin: -6px 0 0 !important; font-size: 13px !important; line-height: 1.7 !important; color: var(--nr-muted) !important; background: none !important; border: 0 !important; padding: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-opt-group { display: flex !important; flex-direction: column !important; gap: 12px !important; margin: 6px 0 0 !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-opt-group-title { margin: 0 !important; padding: 0 !important; font-size: 16px !important; font-weight: 900 !important; color: var(--nr-strong) !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-opt-group-desc { margin: -6px 0 2px !important; font-size: 13px !important; color: var(--nr-muted) !important; background: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-opt-front-item {
    display: flex !important; flex-direction: column !important; gap: 12px !important; margin: 0 !important; padding: 18px 20px !important; border-radius: 16px !important;
    background: var(--g-sunk) !important; border: 1px solid var(--g-line) !important; box-shadow: none !important; transition: border-color .2s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-opt-front-item:hover { border-color: var(--g-line-2) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-opt-front-heading { display: flex !important; align-items: center !important; justify-content: space-between !important; flex-wrap: wrap !important; gap: 8px 14px !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-opt-front-name { font-size: 16px !important; font-weight: 800 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-opt-front-meta { display: flex !important; flex-wrap: wrap !important; gap: 6px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-opt-front-tag { display: inline-flex !important; align-items: center !important; height: 24px !important; padding: 0 9px !important; border-radius: 999px !important; background: color-mix(in srgb, var(--nr-text) 7%, transparent) !important; border: 0 !important; font-size: 12px !important; color: var(--nr-soft) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-opt-front-note {
    margin: 0 !important; padding: 10px 14px !important; border-radius: 12px !important; border: 0 !important; border-left: 3px solid var(--nr-accent) !important;
    background: color-mix(in srgb, var(--nr-accent) 12%, transparent) !important; font-size: 14px !important; font-weight: 800 !important; color: var(--nr-strong) !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-benchmark-summary { display: flex !important; flex-wrap: wrap !important; align-items: baseline !important; gap: 4px 12px !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-benchmark-conclusion { margin: 0 !important; font-size: 13px !important; font-weight: 700 !important; color: var(--nr-soft) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-benchmark-summary-meta { font-size: 12px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-vote-box { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 8px !important; margin: 0 !important; padding: 12px 0 0 !important; border: 0 !important; border-top: 1px solid var(--g-line) !important; background: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-vote-button,
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-view-benchmarks {
    display: inline-flex !important; align-items: center !important; gap: 5px !important; height: 32px !important; padding: 0 12px !important; margin: 0 !important; border-radius: 999px !important;
    border: 1px solid var(--g-line) !important; background: color-mix(in srgb, var(--nr-text) 4%, transparent) !important; color: var(--nr-soft) !important; font-size: 13px !important; box-shadow: none !important; cursor: pointer;
    transition: border-color .18s ease, color .18s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-vote-button:hover,
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-view-benchmarks:hover { border-color: var(--g-line-2) !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-vote-summary { font-size: 12px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-vote-box .nex-benchmark-button { height: 32px !important; padding: 0 14px !important; margin-left: auto !important; border-radius: 999px !important; font-size: 13px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex-vote-box .nex-view-benchmarks { order: 9; }

/* 资源与版权声明 */
html body:is(#nex-rd, *) #nex70-game .nex70-main .nex70-notice { display: block !important; padding: 18px 28px !important; gap: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-notice summary { display: flex !important; align-items: center !important; justify-content: space-between !important; list-style: none !important; cursor: pointer !important; font-size: 14px !important; font-weight: 700 !important; color: var(--nr-soft) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-notice summary::-webkit-details-marker { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-notice-toggle { font-size: 13px !important; font-weight: 400 !important; color: var(--nr-link) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-notice ul { margin: 14px 0 0 !important; padding-left: 18px !important; font-size: 13px !important; line-height: 1.9 !important; color: var(--nr-muted) !important; }

/* ---------- 评论: rebuilt on the panel; mood buttons and review choices keep their logic ---------- */
html body:is(#nex-rd, *) #nex70-game .nex70-comments { gap: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments:has(.comments-title, #comments > h2, #comments > h3:not(#reply-title)) > h2 { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments > h2 { margin-bottom: 20px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(#comments, .comments-area, .entry-comments, .post-comments, .comments-wrap, .comment-respond, #respond, .card, .card-body, .comments-list-wrap, .comment-form-wrap) {
    margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-comments .comments-title { display: flex !important; align-items: center !important; gap: 8px !important; margin: 0 0 20px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .comments-title :is(i, svg) { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .comments-title::after { display: none !important; }

/* Mood row */
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reactions { margin: 0 0 22px !important; padding: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-heading { display: flex !important; align-items: baseline !important; justify-content: space-between !important; gap: 10px !important; margin: 0 0 12px !important; padding: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-heading strong { font-size: 15px !important; font-weight: 800 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-heading span { font-size: 12.5px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options { display: grid !important; grid-template-columns: repeat(6, minmax(0, 1fr)) !important; gap: 10px !important; margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options button {
    position: relative !important; display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; gap: 6px !important; min-width: 0 !important; height: auto !important; margin: 0 !important; padding: 16px 6px 12px !important;
    border-radius: 16px !important; border: 1px solid var(--g-line) !important; background: var(--g-sunk) !important; color: var(--nr-soft) !important; box-shadow: none !important; cursor: pointer; opacity: 1 !important;
    transition: transform .18s ease, border-color .18s ease, background .18s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options button:disabled { cursor: default; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options button:not(:disabled):hover { transform: translateY(-3px) !important; border-color: var(--g-line-2) !important; background: color-mix(in srgb, var(--nr-text) 6%, transparent) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options button > :is(img, .nex57-emoji) { order: 1 !important; display: block !important; width: 38px !important; height: 38px !important; margin: 0 !important; font-size: 32px !important; line-height: 38px !important; text-align: center !important; object-fit: contain !important; transition: transform .25s cubic-bezier(.3, 1.6, .5, 1) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options button:not(:disabled):hover > :is(img, .nex57-emoji) { transform: scale(1.12) rotate(-6deg) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options button > span:not(.nex57-emoji) { order: 2 !important; font-size: 13px !important; font-weight: 700 !important; color: var(--nr-text) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options button > b { order: 3 !important; font-family: var(--nr-num) !important; font-size: 12px !important; font-weight: 600 !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options button[aria-pressed="true"] { border-color: var(--nr-accent) !important; background: color-mix(in srgb, var(--nr-accent) 16%, transparent) !important; box-shadow: 0 0 0 3px color-mix(in srgb, var(--nr-accent) 18%, transparent) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options button[aria-pressed="true"] > :is(img, .nex57-emoji) { animation: nex72-pop .45s cubic-bezier(.3, 1.6, .5, 1); }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options button[aria-pressed="true"] > b { color: var(--nr-link) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-status { margin: 8px 0 0 !important; font-size: 12px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-status:empty { display: none !important; }
@keyframes nex72-pop { 0% { transform: scale(.7); } 60% { transform: scale(1.22); } 100% { transform: scale(1); } }

/* Composer: textarea on top, attitude + options underneath, then send */
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-form, #commentform) { display: flex !important; flex-direction: column !important; gap: 12px !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-form, #commentform) > * { margin: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-form, #commentform) > .comment-form-comment { order: 1 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-form, #commentform) > [data-nex-review-form] { order: 2 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-form, #commentform) > :is(.comment-form-author, .comment-form-email, .comment-form-url, .comment-form-cookies-consent) { order: 3 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-form, #commentform) > .form-submit { order: 4 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-notes, .logged-in-as, .must-log-in) { font-size: 12.5px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-notes, .logged-in-as, .must-log-in) a { color: var(--nr-link) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .comment-form-comment label { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments textarea {
    display: block !important; box-sizing: border-box !important; width: 100% !important; min-height: 130px !important; padding: 16px 18px !important; border-radius: 16px !important;
    border: 1px solid var(--g-line-2) !important; background: var(--g-sunk) !important; color: var(--nr-text) !important; font-size: 14.5px !important; line-height: 1.7 !important; resize: vertical; box-shadow: none !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-form-author, .comment-form-email, .comment-form-url) { display: flex !important; flex-direction: column !important; gap: 6px !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-form-author, .comment-form-email, .comment-form-url) label { font-size: 12.5px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-form-author, .comment-form-email, .comment-form-url) input { width: 100% !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .comment-form-cookies-consent { display: flex !important; align-items: center !important; gap: 8px !important; font-size: 12.5px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex-review38-form { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 10px 12px !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex-review38-form[hidden] { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-composer-title { display: inline-flex !important; align-items: baseline !important; gap: 8px !important; margin: 0 4px 0 0 !important; padding: 0 !important; font-size: 13.5px !important; font-weight: 700 !important; color: var(--nr-soft) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-composer-title span { font-size: 12px !important; font-weight: 400 !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex-review38-choices { display: flex !important; gap: 8px !important; margin: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex-review38-choices button {
    display: inline-flex !important; align-items: center !important; gap: 6px !important; height: 34px !important; padding: 0 14px 0 8px !important; margin: 0 !important; border-radius: 999px !important;
    border: 1px solid var(--g-line-2) !important; background: none !important; color: var(--nr-soft) !important; font-size: 13px !important; font-weight: 700 !important; box-shadow: none !important; cursor: pointer;
    transition: border-color .18s ease, background .18s ease, color .18s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex-review38-choices button img { width: 22px !important; height: 22px !important; margin: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex-review38-choices button:hover { border-color: var(--nr-soft) !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex-review38-choices [data-review-choice=recommend][aria-pressed=true] { border-color: var(--nr-ok) !important; background: color-mix(in srgb, var(--nr-ok) 16%, transparent) !important; color: var(--nr-ok) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex-review38-choices [data-review-choice=notrecommend][aria-pressed=true] { border-color: var(--nr-bad) !important; background: color-mix(in srgb, var(--nr-bad) 16%, transparent) !important; color: var(--nr-bad) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex-review38-optin:not([hidden]) { display: inline-flex !important; align-items: center !important; gap: 7px !important; margin: 0 0 0 auto !important; font-size: 13px !important; color: var(--nr-soft) !important; cursor: pointer; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .form-submit { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 12px !important; padding-top: 14px !important; border-top: 1px solid var(--g-line) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .form-submit #reply-title,
html body:is(#nex-rd, *) #nex70-game .nex70-comments .form-submit .comment-reply-title { margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; font-size: 12.5px !important; font-weight: 400 !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments .form-submit #reply-title::before { display: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments #cancel-comment-reply-link { margin-left: 8px !important; color: var(--nr-link) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(input[type=submit], button[type=submit], .submit) {
    flex: 0 0 auto !important; height: 44px !important; margin: 0 0 0 auto !important; padding: 0 26px !important; border: 0 !important; border-radius: 12px !important;
    background: linear-gradient(180deg, #2a82ff, #0a6cff) !important; color: #fff !important; font-size: 14.5px !important; font-weight: 800 !important; box-shadow: 0 12px 26px -12px rgba(10, 108, 255, .9) !important; cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(input[type=submit], button[type=submit], .submit):hover { transform: translateY(-1px) !important; box-shadow: 0 16px 30px -12px rgba(10, 108, 255, 1) !important; }

/* Comment list: X-style threads. No cards; a thin line runs from the parent's avatar
   and curves into each reply's avatar. Sizes are variables so mobile only redefines them. */
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) { --c-av1: 40px; --c-av2: 32px; --c-gap: 12px; --c-pad: 14px; --c-line: color-mix(in srgb, var(--nr-strong) 16%, transparent); margin: 22px 0 0 !important; padding: 0 !important; list-style: none !important; background: none !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) li { position: relative !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; list-style: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) > li { --c-av: var(--c-av1); }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) > li + li { border-top: 1px solid var(--g-line) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) :is(ol, ul).children { --c-pav: var(--c-av1); margin: 0 0 0 calc(var(--c-av1) + var(--c-gap)) !important; padding: 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; list-style: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) :is(ol, ul).children :is(ol, ul).children { --c-pav: var(--c-av2); margin-left: calc(var(--c-av2) + var(--c-gap)) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) .children > li { --c-av: var(--c-av2); }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) .children > li::before { content: "" !important; position: absolute !important; top: 0 !important; left: calc(-1px - var(--c-pav) / 2 - var(--c-gap)) !important; width: calc(var(--c-pav) / 2 + var(--c-gap) - 3px) !important; height: calc(var(--c-pad) + var(--c-av2) / 2) !important; border: 0 solid var(--c-line) !important; border-width: 0 0 2px 2px !important; border-bottom-left-radius: 12px !important; pointer-events: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) .children > li:not(:last-child)::after { content: "" !important; position: absolute !important; top: calc(var(--c-pad) + var(--c-av2) / 2 - 12px) !important; bottom: 0 !important; left: calc(-1px - var(--c-pav) / 2 - var(--c-gap)) !important; width: 2px !important; background: var(--c-line) !important; pointer-events: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) li:has(> .children) > .comment-inner::after { content: "" !important; position: absolute !important; top: calc(var(--c-pad) + var(--c-av) + 6px) !important; bottom: 0 !important; left: calc(var(--c-av) / 2 - 1px) !important; width: 2px !important; background: var(--c-line) !important; pointer-events: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  .comment-inner { position: relative !important; display: flex !important; align-items: flex-start !important; gap: var(--c-gap) !important; margin: 0 !important; padding: var(--c-pad) 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  .comment-inner > .comment-author { flex: 0 0 var(--c-av) !important; margin: 0 !important; padding: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  .comment-body { flex: 1 1 auto !important; min-width: 0 !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  .comment-inner img.avatar { display: block !important; width: var(--c-av) !important; height: var(--c-av) !important; margin: 0 !important; border-radius: 50% !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  .nickname { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 4px 8px !important; margin: 0 0 2px !important; line-height: 1.5 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  :is(.nickname, .comment-author .fn) { font-size: 14px !important; font-weight: 600 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  .nex92-to { font-size: 12.5px !important; font-weight: 400 !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  :is(.comment-content, .comment-text) { margin: 0 !important; padding: 0 !important; font-size: 14.5px !important; line-height: 1.75 !important; color: var(--nr-text) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  .nex-review38 footer { display: flex !important; align-items: center !important; gap: 14px !important; margin: 4px 0 0 !important; padding: 0 !important; border: 0 !important; font-size: 12px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  .nex-review38-helpful { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; font-size: 12px !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  :is(.comment-meta, .comment-metadata, time) { margin: 0 !important; padding: 0 !important; font-size: 12px !important; font-weight: 400 !important; color: var(--nr-muted) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  :is(.comment-reply-link, .comment-meta a) { color: var(--nr-muted) !important; font-size: 12px !important; text-decoration: none !important; transition: color .15s !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-comments  :is(.comment-reply-link, .comment-meta a):hover { color: var(--nr-link) !important; }
@media (max-width: 600px) {
    html body:is(#nex-rd, *) #nex70-game .nex70-comments :is(.comment-list, .comments-list, .commentlist) { --c-av1: 34px; --c-av2: 28px; --c-gap: 10px; --c-pad: 12px; }
}

@media (max-width: 960px) {
    html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-top,
    html body:is(#nex-rd, *) #nex70-game .nex70-cols { grid-template-columns: minmax(0, 1fr) !important; }
    html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-top { grid-template-rows: auto !important; grid-template-areas: "media" "info" "steps" !important; }
}
@media (max-width: 600px) {
    html body:is(#nex-rd, *) #nex70-game .nex70-shell { padding: 14px 16px 44px !important; gap: 20px !important; }
    html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-top { gap: 20px !important; }
    html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-info > h1 { font-size: 28px !important; }
    html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-stage { border-radius: 14px !important; }
    html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-tools button { opacity: 1 !important; transform: none !important; width: 34px !important; height: 34px !important; font-size: 20px !important; }
    html body:is(#nex-rd, *) #nex70-game .nex70-main > :is(section, details, .nex70-card), html body:is(#nex-rd, *) #nex70-game .nex70-aside > :is(section, .nex70-card) { padding: 20px 18px !important; border-radius: 18px !important; }
    html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-strip { grid-auto-columns: calc((100% - 20px) / 3) !important; }
    html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex57-reaction-options { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
    html body:is(#nex-rd, *) #nex70-game .nex70-comments .nex-review38-optin:not([hidden]) { margin-left: 0 !important; }
    html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-reference > a { display: none !important; }
}
@media (prefers-reduced-motion: reduce) {
    html body:is(#nex-rd, *) #nex70-game.nex70-game.is-ready .nex70-shell { animation: none !important; }
}

/* Phone and narrow tablets */
@media (max-width: 960px) {
    html body:is(#nex-rd, *) .nex63-home-intro .nex63-home-lead { grid-template-columns: minmax(0, 1fr) !important; }
    html body.single-post.nex63-game-page .nex63-detail .nex63-detail-top { grid-template-columns: minmax(0, 1fr) !important; padding: 16px !important; gap: 20px !important; }
    html body.single-post.nex63-game-page .nex63-detail .nex63-summary { flex: 0 0 auto !important; }
}
@media (max-width: 600px) {
    html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature-content { padding: 24px 20px !important; }
    html body:is(#nex-rd, *) .nex63-home-intro .nex63-feature > img { width: 100% !important; opacity: .55 !important; }
    html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 128px), 1fr)) !important; gap: 8px !important; }
    html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-card { gap: 8px !important; padding: 10px !important; min-height: 56px !important; }
    html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-card::after { display: none !important; }
    html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-icon { flex-basis: 30px !important; width: 30px !important; height: 30px !important; }
    html body.single-post.nex63-game-page .nex63-detail .nex63-downloads .nex-download-main :is(strong, small) { white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
    html body.single-post.nex63-game-page :is(#nex63-description, #nex-pc-requirements, .nex-perf-section, .nex-related-games) { padding: 18px !important; }
}

/* =================================================================
   5. Cloud-drive QR dialog (same markup on game and tool pages)
   ================================================================= */
html body dialog.nex-resource-qr-dialog {
    width: min(380px, calc(100vw - 32px)) !important; max-width: none !important; box-sizing: border-box !important; padding: 28px 28px 22px !important;
    border-radius: 22px !important; border: 1px solid var(--nr-line-2) !important; background: var(--nr-panel) !important; color: var(--nr-text) !important;
    box-shadow: 0 30px 80px rgba(0, 0, 0, .55) !important; text-align: center !important;
}
html body dialog.nex-resource-qr-dialog::backdrop { background: rgba(4, 7, 12, .78); backdrop-filter: blur(4px); }
html body dialog.nex-resource-qr-dialog .nex-qr-close {
    top: 14px !important; right: 14px !important; width: 36px !important; height: 36px !important; padding: 0 !important; border-radius: 10px !important;
    background: var(--nr-panel-2) !important; color: var(--nr-soft) !important; font-size: 22px !important; line-height: 36px !important;
}
html body dialog.nex-resource-qr-dialog .nex-qr-close:hover { color: var(--nr-strong) !important; }
html body dialog.nex-resource-qr-dialog h2 { margin: 4px 0 4px !important; font-size: 20px !important; font-weight: 900 !important; color: var(--nr-strong) !important; }
html body dialog.nex-resource-qr-dialog h2 + p { margin: 0 0 4px !important; font-size: 13px !important; color: var(--nr-muted) !important; }
html body dialog.nex-resource-qr-dialog .nex-qr-image {
    width: 220px !important; height: 220px !important; min-height: 220px !important; margin: 16px auto 12px !important; padding: 12px !important; box-sizing: border-box !important;
    border-radius: 16px !important; background: #fff !important; box-shadow: 0 0 0 6px rgba(10, 108, 255, .18) !important;
}
html body dialog.nex-resource-qr-dialog .nex-qr-password:not(:empty) {
    display: inline-block !important; margin: 4px auto 0 !important; padding: 8px 16px !important; border-radius: 10px !important;
    background: var(--nr-sunk) !important; border: 1px dashed var(--nr-line-2) !important;
    font-family: var(--nr-num) !important; font-size: 16px !important; font-weight: 700 !important; letter-spacing: 1px !important; color: var(--nr-strong) !important;
}
html body dialog.nex-resource-qr-dialog .nex-qr-computer {
    display: flex !important; align-items: center !important; justify-content: center !important; height: 48px !important; margin: 16px 0 10px !important; padding: 0 !important;
    border-radius: 12px !important; background: var(--nr-accent) !important; color: #fff !important; font-size: 15px !important; font-weight: 700 !important;
}
html body dialog.nex-resource-qr-dialog .nex-qr-computer:hover { filter: brightness(1.08); }
html body dialog.nex-resource-qr-dialog .nex-qr-state { margin: 0 !important; font-size: 12px !important; color: var(--nr-ok) !important; }
html body dialog.nex-resource-qr-dialog .nex-qr-state:empty { display: none !important; }

/* =================================================================
   0.21.74 Home game cards as 3D PC boxes
   The cover sits on a box turned ~26deg so the spine shows. On hover the
   box turns to face the viewer; the existing hover panel (.nex-hover) then
   grows out of the box (JS: nex74 grow/slide). Only transform and opacity
   animate, so everything stays on the compositor.
   ================================================================= */
html body:is(#nex-rd, *) .nex-sec .nex-sec__rail { padding-top: 10px !important; padding-bottom: 10px !important; }
html body:is(#nex-rd, *) .nex-sec .nex-card {
  padding: 0 !important; border: 0 !important; border-radius: 0 !important;
  background: none !important; box-shadow: none !important; transform: none !important;
  overflow: visible !important; isolation: auto !important;
  display: flex !important; flex-direction: column; gap: 12px; color: var(--nex74-text) !important;
  --nex74-text: #e8edf5; --nex74-dim: #8e99ab; --nex74-edge-a: #1b2130; --nex74-edge-b: #121722;
}
html:is([data-bs-theme=light], [data-nex-theme=light]) body:is(#nex-rd, *) .nex-sec .nex-card { --nex74-text: #1d2738; --nex74-dim: #66748a; --nex74-edge-a: #d7dde7; --nex74-edge-b: #c6cdd9; }
html body:is(#nex-rd, *) .nex-sec .nex-card::before,
html body:is(#nex-rd, *) .nex-sec .nex-card::after { display: none !important; content: none !important; }

html body:is(#nex-rd, *) .nex-sec .nex74-stage { display: block; perspective: 760px; padding-left: 18px; transition: opacity .2s ease; }
html body:is(#nex-rd, *) .nex-sec .nex74-box {
  position: relative; display: block; aspect-ratio: 135 / 190;
  transform-style: preserve-3d; transform-origin: 50% 50% -9px;
  transform: rotateY(32deg);
  transition: transform .34s cubic-bezier(.3, .7, .25, 1);
}
html body:is(#nex-rd, *) .nex-sec .nex-card:hover .nex74-box,
html body:is(#nex-rd, *) .nex-sec .nex-card:focus-visible .nex74-box {
  transform: rotateY(0deg) translateZ(18px);
  transition-duration: .26s; transition-timing-function: cubic-bezier(.2, .9, .3, 1);
}
html body:is(#nex-rd, *) .nex-sec .nex74-front {
  position: absolute; inset: 0; display: flex; flex-direction: column;
  border-radius: 2px 5px 5px 2px; overflow: hidden; background: #0b0e14;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.07), 0 14px 26px -16px rgba(0,0,0,.85);
  backface-visibility: hidden; -webkit-backface-visibility: hidden;
}
/* soft light on the front so the turned box reads as one solid object */
html body:is(#nex-rd, *) .nex-sec .nex74-front::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 3;
  background: linear-gradient(90deg, rgba(0,0,0,.32) 0%, rgba(0,0,0,0) 9%, rgba(255,255,255,.06) 55%, rgba(255,255,255,0) 100%);
  transition: opacity .26s ease;
}
html body:is(#nex-rd, *) .nex-sec .nex-card:hover .nex74-front::after { opacity: .35; }
/* 0.21.79: the top strip floats over the cover as tinted glass in the box's own spine colour (no backdrop blur: it is costly on 3D-tilted boxes) */
html body:is(#nex-rd, *) .nex-sec .nex74-front .nex-pc-case-label {
  position: absolute !important; top: 0; left: 0; right: 0; z-index: 2; height: 22px !important; border-radius: 0 !important;
  background: linear-gradient(180deg, color-mix(in srgb, var(--nex74-spine, #3b4252) 70%, rgba(255, 255, 255, .16)), color-mix(in srgb, var(--nex74-spine, #3b4252) 52%, transparent)) !important;
  border-bottom: 1px solid rgba(255, 255, 255, .1); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22), 0 2px 8px rgba(0, 0, 0, .25) !important; color: #fff !important;
}
html body:is(#nex-rd, *) .nex-sec .nex74-front .nex-pc-case-label > span { color: #fff !important; text-shadow: 0 1px 2px rgba(0, 0, 0, .35); }
html body:is(#nex-rd, *) .nex-sec .nex74-front .nex-pc-case-label .nex-cover-category { color: rgba(255, 255, 255, .82) !important; }
html body:is(#nex-rd, *) .nex-sec .nex74-front .nex-card__thumb {
  flex: 1 1 auto !important; min-height: 0; aspect-ratio: auto !important; height: auto !important;
  border: 0 !important; border-radius: 0 !important; box-shadow: none !important; transform: none !important;
}
html body:is(#nex-rd, *) .nex-sec .nex74-spine {
  position: absolute; top: 0; bottom: 0; left: -18px; width: 18px; box-sizing: border-box;
  display: flex; flex-direction: column; align-items: center; justify-content: space-between; padding: 7px 0;
  background: var(--nex74-spine, #3d4452);
  background: linear-gradient(90deg, color-mix(in srgb, var(--nex74-spine, #3d4452) 70%, #000), var(--nex74-spine, #3d4452));
  border-radius: 3px 0 0 3px;
  transform-origin: right center; transform: rotateY(-90deg);
  backface-visibility: hidden; -webkit-backface-visibility: hidden;
}
html body:is(#nex-rd, *) .nex-sec .nex74-spine i,
html body:is(#nex-rd, *) .nex-sec .nex74-spine em { font-style: normal; font-size: 8px; font-weight: 800; letter-spacing: .5px; color: rgba(236,240,246,.82); line-height: 1; }
html body:is(#nex-rd, *) .nex-sec .nex74-spine em { font-size: 6px; letter-spacing: 1px; color: rgba(236,240,246,.5); }
html body:is(#nex-rd, *) .nex-sec .nex74-spine b {
  writing-mode: vertical-rl; font-size: 10px; font-weight: 700; letter-spacing: 1.5px; line-height: 1;
  color: rgba(236,240,246,.88); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-height: 72%;
}
html body:is(#nex-rd, *) .nex-sec .nex74-edge {
  position: absolute; top: 2px; bottom: 2px; left: 100%; width: 18px;
  background: repeating-linear-gradient(0deg, var(--nex74-edge-a) 0 2px, var(--nex74-edge-b) 2px 4px);
  transform-origin: left center; transform: rotateY(90deg);
  backface-visibility: hidden; -webkit-backface-visibility: hidden;
}
/* while one box is hovered, the others step back */
html body:is(#nex-rd, *) .nex-sec .nex-sec__rail:hover .nex-card:not(:hover) .nex74-stage { opacity: .5; }

/* caption under the box */
html body:is(#nex-rd, *) .nex-sec .nex-card .nex-card__meta {
  position: static !important; inset: auto !important; max-height: none !important; overflow: visible !important;
  padding: 0 0 0 18px !important; background: none !important; color: var(--nex74-text) !important;
}
html body:is(#nex-rd, *) .nex-sec .nex-card .nex-card__name {
  font-size: 14px !important; font-weight: 700 !important; line-height: 1.4 !important; text-shadow: none !important;
  color: var(--nex74-text) !important; -webkit-line-clamp: 1 !important; transition: color .2s ease;
}
html body:is(#nex-rd, *) .nex-sec .nex-card:hover .nex-card__name { color: #7fb2ff !important; }
html body:is(#nex-rd, *) .nex-sec .nex-card .nex-card-facts { margin-top: 6px !important; padding-top: 0 !important; border: 0 !important; }
html body:is(#nex-rd, *) .nex-sec .nex-card .nex-cloud-tags small {
  font-size: 10px !important; padding: 1px 6px !important; border-radius: 4px !important;
  border: 0 !important; background: color-mix(in srgb, var(--nex74-dim) 18%, transparent) !important; color: var(--nex74-dim) !important;
}

/* hover panel: thin spine-coloured strip on top, grows out of the box */
html body:is(#nex-rd, *) .nex-hover { border-radius: 12px; will-change: transform, opacity; }
html body:is(#nex-rd, *) .nex-hover::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px; z-index: 4;
  background: #8fa0b6;
  background: color-mix(in srgb, var(--nex74-spine, #3d4452) 60%, #9fb3cc);
}
html body:is(#nex-rd, *) .nex-hover.nex74-anim {
  transition: opacity .18s ease, transform .3s cubic-bezier(.2, .9, .3, 1.04), visibility .3s !important;
}
html body:is(#nex-rd, *) .nex-hover.nex74-out {
  transition: opacity .16s ease, transform .2s cubic-bezier(.4, 0, .7, .2), visibility .2s !important;
}

@media (prefers-reduced-motion: reduce) {
  html body:is(#nex-rd, *) .nex-sec .nex74-box,
  html body:is(#nex-rd, *) .nex-sec .nex74-stage { transition: none !important; }
}
/* touch screens: no hover, keep the box still and slightly turned */
@media (hover: none) {
  html body:is(#nex-rd, *) .nex-sec .nex74-box { transform: rotateY(18deg) !important; transition: none !important; }
}

/* =================================================================
   0.21.76 Game page: real install guide, lit cloud-drive buttons, whole thumbnails
   ================================================================= */
/* left column (player + guide) and right column (info + downloads) end on the same line */
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-top > .nex63-detail-info { align-self: stretch !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-top > .nex70-steps { align-self: stretch !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-detail-info > .nex63-downloads { flex: 1 1 auto !important; display: flex !important; flex-direction: column !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads > .nex-download-panel { flex: 1 1 auto !important; }

/* 0.22.1 三步就能玩：标题行右侧放前置工具和完整教程，下面一根三段分段条 */
html body:is(#nex-rd, *) #nex70-game .nex221-steps {
    display: flex !important; flex-direction: column !important; gap: 16px !important; margin: 0 !important; padding: 18px 20px 20px !important; border-radius: 16px !important;
    background: var(--g-panel) !important; border: 1px solid var(--g-line) !important; box-shadow: var(--g-hi) !important; backdrop-filter: var(--g-blur);
}
html body:is(#nex-rd, *) #nex70-game .nex221-head { display: flex !important; flex-wrap: wrap !important; align-items: center !important; justify-content: space-between !important; gap: 10px 12px !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-head h2 { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; font-size: 17px !important; font-weight: 900 !important; line-height: 1.3 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-acts { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 6px !important; }
html body:is(#nex-rd, *) #nex70-game :is(.nex221-tool, .nex221-more) {
    display: inline-flex !important; align-items: center !important; gap: 5px !important; height: 32px !important; padding: 0 12px !important; margin: 0 !important; border-radius: 9px !important; box-shadow: none !important;
    font: inherit !important; font-size: 12.5px !important; font-weight: 700 !important; text-decoration: none !important; white-space: nowrap !important; cursor: pointer;
    transition: background-color .15s ease, border-color .15s ease, color .15s ease, filter .15s ease !important;
}
html body:is(#nex-rd, *) #nex70-game :is(.nex221-tool, .nex221-more) em { font-style: normal !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-tool { border: 1px solid var(--g-line-2) !important; background: none !important; color: var(--nr-soft) !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-tool:hover { border-color: var(--nr-accent) !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-more { border: 0 !important; background: var(--nr-accent) !important; color: #fff !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-more:hover { filter: brightness(1.12); }
html body:is(#nex-rd, *) #nex70-game .nex221-more svg { transition: transform .15s ease; }html body:is(#nex-rd, *) #nex70-game .nex221-more:hover svg { transform: translateX(2px); }
html body:is(#nex-rd, *) #nex70-game .nex221-steps ol { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 4px !important; margin: 0 !important; padding: 4px !important; list-style: none !important; border-radius: 14px !important; background: var(--g-sunk) !important; border: 1px solid var(--g-line) !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-step { display: flex !important; align-items: center !important; gap: 10px !important; min-width: 0 !important; margin: 0 !important; padding: 12px 14px !important; border-radius: 10px !important; background: var(--g-panel-2) !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-step:first-child { background: linear-gradient(135deg, color-mix(in srgb, var(--nr-accent) 22%, transparent), color-mix(in srgb, var(--nr-accent) 6%, transparent)) !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-step > i { flex: 0 0 28px !important; display: grid !important; place-items: center !important; width: 28px !important; height: 28px !important; border-radius: 50% !important; background: var(--nr-accent) !important; color: #fff !important; font: 800 14px/1 var(--nr-num) !important; font-style: normal !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-step > div { min-width: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-step b { display: block !important; font-size: 15px !important; font-weight: 800 !important; line-height: 1.35 !important; color: var(--nr-strong) !important; }
html body:is(#nex-rd, *) #nex70-game .nex221-step p { margin: 2px 0 0 !important; font-size: 12.5px !important; line-height: 1.5 !important; color: var(--nr-muted) !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
@media (max-width: 760px) {
    html body:is(#nex-rd, *) #nex70-game .nex221-steps ol { grid-template-columns: minmax(0, 1fr) !important; }
    html body:is(#nex-rd, *) #nex70-game .nex221-acts { width: 100% !important; }
    html body:is(#nex-rd, *) #nex70-game .nex221-more { margin-left: auto !important; }
    html body:is(#nex-rd, *) #nex70-game :is(.nex221-tool, .nex221-more) em { display: none !important; }
}

/* 资源区：失效反馈放在状态行右侧，不占网盘按钮的位置 */
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status .nex221-fb { display: flex !important; margin: 0 0 0 auto !important; padding: 0 !important; border: 0 !important; background: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status .nex221-fb > button {
    display: inline-flex !important; align-items: center !important; gap: 5px !important; height: auto !important; padding: 0 !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important;
    background: none !important; box-shadow: none !important; font: inherit !important; font-size: 12.5px !important; font-weight: 600 !important; color: var(--nr-muted) !important; cursor: pointer; transition: color .15s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status .nex221-fb > button::before { content: "" !important; width: 13px !important; height: 13px !important; background: currentColor !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 21V4h11l-1.5 4L16 12H5'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 21V4h11l-1.5 4L16 12H5'/%3E%3C/svg%3E") center / contain no-repeat; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex70-dl-status .nex221-fb > button:hover { color: var(--nr-bad) !important; }

/* Cloud-drive buttons: every drive lit in its own brand colour; no QR glyph (a click still opens the QR dialog) */
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card {
    background: linear-gradient(135deg, #4a5262, #2f3542) !important; border: 0 !important; color: #fff !important;
    box-shadow: 0 12px 26px -16px rgba(0, 0, 0, .9) !important; transition: transform .18s ease, filter .18s ease, box-shadow .18s ease !important;
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card:hover { transform: translateY(-2px) !important; filter: brightness(1.08) !important; border: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card.nex-dl-baidu  { background: linear-gradient(135deg, #3d8cff, #2468f2) !important; box-shadow: 0 12px 26px -14px rgba(36, 104, 242, .85) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card.nex-dl-quark  { background: linear-gradient(135deg, #7c5cff, #4b55f5) !important; box-shadow: 0 12px 26px -14px rgba(96, 84, 255, .85) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card.nex-dl-xunlei { background: linear-gradient(135deg, #25b0ff, #0a7ae3) !important; box-shadow: 0 12px 26px -14px rgba(10, 122, 227, .85) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card.nex-dl-aliyun { background: linear-gradient(135deg, #9d6bff, #6a4cf0) !important; box-shadow: 0 12px 26px -14px rgba(122, 82, 245, .85) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card.nex-dl-tianyi { background: linear-gradient(135deg, #ff9142, #f2552c) !important; box-shadow: 0 12px 26px -14px rgba(242, 85, 44, .85) !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card::after { display: none !important; content: none !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card .nex-download-icon { background: rgba(255, 255, 255, .95) !important; color: #2f3542 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card .nex-download-main :is(strong, small) { color: #fff !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex63-downloads a.nex-download-card .nex-download-main small { opacity: .85 !important; }

/* Gallery thumbnails: selection ring drawn inside (never wider than its neighbours); non-16:9 pictures shown whole */
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-strip { padding: 0 !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-thumb { outline-offset: -2px !important; isolation: isolate; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-thumb.nex76-fit::before {
    content: ""; position: absolute; inset: -10%; z-index: -1; background: var(--nex76-src) center / cover no-repeat; filter: blur(10px) brightness(.6);
}
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-thumb.nex76-fit img { object-fit: contain !important; background: transparent !important; }
html body:is(#nex-rd, *) #nex70-game .nex70-hero .nex-gallery-thumb .nex-gallery-kind { z-index: 2 !important; }

/* ==========================================================================
   0.21.79 新游速递 timeline: one thin rail under the titles; each game's release date sits on it as a pill
   (dot · 10月17日 · 3 天前). The pill is opaque, so the rail reads as running between the dates.
   Today's and yesterday's games get a glowing orange dot. 最近更新 keeps its netdisk tags.
   ========================================================================== */
html body:is(#nex-rd, *) .nex-sec .nex-card .nex77-when { position: relative !important; margin: 10px 0 0 !important; padding: 0 !important; line-height: 1 !important; white-space: nowrap !important; }
html body:is(#nex-rd, *) .nex-sec .nex-card .nex77-when::before {
  content: ""; position: absolute; left: 0; right: -64px; top: 50%; height: 1px; pointer-events: none;
  background: linear-gradient(90deg, rgba(148, 163, 184, .34), rgba(148, 163, 184, .18));
}
html body:is(#nex-rd, *) .nex-sec .nex-release-item:last-child .nex77-when::before { right: 0; background: linear-gradient(90deg, rgba(148, 163, 184, .3), transparent); }
html body:is(#nex-rd, *) .nex-sec .nex-card .nex79-node {
  position: relative; display: inline-flex; align-items: center; gap: 6px; padding: 5px 10px 5px 8px;
  border: 1px solid rgba(148, 163, 184, .22); border-radius: 999px; background: #151a24; font-size: 12px; line-height: 1;
  transition: border-color .2s ease;
}
html body:is(#nex-rd, *) .nex-sec .nex-card .nex79-node i { width: 6px; height: 6px; border-radius: 50%; background: #7c8799; flex: none; }
html body:is(#nex-rd, *) .nex-sec .nex-card .nex79-node time { font-weight: 700; font-variant-numeric: tabular-nums; color: var(--nex74-text); }
html body:is(#nex-rd, *) .nex-sec .nex-card .nex79-node small { font-size: 12px !important; color: var(--nex74-dim) !important; }
html body:is(#nex-rd, *) .nex-sec .nex-card .nex79-node small::before { content: "·"; margin-right: 6px; opacity: .6; }
html body:is(#nex-rd, *) .nex-sec .nex-card .nex77-when.is-fresh .nex79-node { border-color: rgba(255, 138, 92, .45); }
html body:is(#nex-rd, *) .nex-sec .nex-card .nex77-when.is-fresh .nex79-node i { background: #ff8a5c; box-shadow: 0 0 0 3px rgba(255, 138, 92, .18), 0 0 8px rgba(255, 138, 92, .8); }
html body:is(#nex-rd, *) .nex-sec .nex-card .nex77-when.is-fresh small { color: #ffb08f !important; font-weight: 700 !important; }
html body:is(#nex-rd, *) .nex-sec .nex-card:hover .nex79-node { border-color: rgba(127, 178, 255, .5); }
html:is([data-bs-theme=light], [data-nex-theme=light]) body:is(#nex-rd, *) .nex-sec .nex-card .nex79-node { background: #fff; border-color: rgba(15, 30, 60, .14); }

/* 0.21.77 detail page: the download panel fills the column even with only two netdisks, so its bottom meets 三步装好就玩 */
html body:is(#nex-rd, *) #nex70-game .nex63-downloads > .nex-resource-section { display: flex !important; flex-direction: column !important; flex: 1 1 auto !important; }
html body:is(#nex-rd, *) #nex70-game .nex63-downloads .nex-resource-layout { flex: 1 1 auto !important; }
html body:is(#nex-rd, *) #nex70-game .nex63-downloads .nex-download-panel { flex: 1 1 auto !important; flex-direction: column !important; }
/* 0.22.1：网盘一行两个（不再单个铺满整行） */

/* ==========================================================================
   0.21.78 / 0.21.79 Category boxes: a tilted 3D wall of covers packed edge to edge, panning slowly along the
   diagonal (like the Steam client's start-up backdrop). The box keeps its original height. The wall pauses while
   off screen (cover loading: see 0.21.88 below). The wall starts at the pivot's left edge so a full pan never uncovers the right edge.
   ========================================================================== */
html body:is(#nex-rd, *) .nex-box .nex-box-bg.nex78-bg {
  position: absolute !important; inset: 0 !important; z-index: 0 !important; display: block !important; gap: 0 !important;
  transform: none !important; transition: none !important; overflow: hidden !important; perspective: 900px; perspective-origin: 50% 30%;
}
html body:is(#nex-rd, *) .nex-box .nex78-pivot {
  /* 0.21.80: the tilt pivots on the box's own centre, so no corner is ever left uncovered (it used to pivot far right of the box and the top-left corner showed) */
  position: absolute; left: -12%; right: -12%; top: -45%; bottom: -45%;
  transform: rotateX(26deg) rotateZ(-18deg); transform-origin: 50% 50%; transition: transform .8s cubic-bezier(.2, .7, .2, 1);
}
html body:is(#nex-rd, *) .nex-box .nex78-wall {
  position: absolute; left: 0; top: 50%; display: flex; flex-direction: column; gap: 4px;
  transform: translateY(-50%); opacity: .9; transition: opacity .3s ease;
}
html body:is(#nex-rd, *) .nex-box .nex78-row { display: flex; gap: 4px; padding-right: 4px; width: max-content; }
html body:is(#nex-rd, *) .nex-box .nex78-row:nth-child(even) { margin-left: -32px; }
html body:is(#nex-rd, *) .nex-box .nex78-row { animation: nex78-pan var(--nex78-dur, 40s) linear infinite; }
html body:is(#nex-rd, *) .nex-box .nex-box-card.nex78-off .nex78-row { animation-play-state: paused; }
html body:is(#nex-rd, *) .nex-box .nex78-tile {
  display: block; flex: none; width: 60px !important; height: 80px !important; max-width: none !important; margin: 0 !important;
  object-fit: cover; border-radius: 5px !important; background: rgba(148, 163, 184, .14); box-shadow: none !important;
}
html body:is(#nex-rd, *) .nex-box .nex-box-card:hover .nex78-wall { opacity: 1; }
html body:is(#nex-rd, *) .nex-box .nex-box-card:hover .nex78-pivot { transform: rotateX(20deg) rotateZ(-18deg) scale(1.06); }
@keyframes nex78-pan { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { html body:is(#nex-rd, *) .nex-box .nex-box-card .nex78-row { animation: none !important; } }
/* 0.21.88 depth wall: the 4 dense rows become the background (smaller look through distance, dimmer, slower, adjacent rows
   moving opposite ways); 3 rows of larger, spaced covers float in front (translateZ) and pan the other way, faster, so the
   wall reads as layered depth instead of one flat sheet. Transform/opacity only; same cover URLs, nothing extra to download. */
html body:is(#nex-rd, *) .nex-box .nex78-pivot { transform-style: preserve-3d; }
html body:is(#nex-rd, *) .nex-box .nex78-wall:not(.nex88-front) { opacity: .45; transform: translateY(-50%) translateZ(-40px); }
html body:is(#nex-rd, *) .nex-box .nex78-wall:not(.nex88-front) .nex78-row { animation-duration: calc(var(--nex78-dur, 40s) * 1.5); }
html body:is(#nex-rd, *) .nex-box .nex78-wall:not(.nex88-front) .nex78-row:nth-child(even) { animation-direction: reverse; }
html body:is(#nex-rd, *) .nex-box .nex88-front { gap: 34px; transform: translateY(-50%) translateZ(45px); opacity: 1; }
html body:is(#nex-rd, *) .nex-box .nex88-front .nex78-row { gap: 30px; padding-right: 30px; animation-name: nex88-pan; animation-duration: calc(var(--nex78-dur, 40s) * .6); }
html body:is(#nex-rd, *) .nex-box .nex88-front .nex78-row:nth-child(even) { margin-left: -47px; }
html body:is(#nex-rd, *) .nex-box .nex88-front .nex78-tile {
  width: 64px !important; height: 86px !important; border-radius: 6px !important;
  box-shadow: 0 14px 28px rgba(0, 0, 0, .6), 0 0 0 1px rgba(200, 251, 255, .08) !important;
}
html body:is(#nex-rd, *) .nex-box .nex-box-card:hover .nex78-wall:not(.nex88-front) { opacity: .62; }
@keyframes nex88-pan { from { transform: translateX(-50%); } to { transform: translateX(0); } }
@media (max-width: 640px) {
  html body:is(#nex-rd, *) .nex-box .nex88-front { gap: 26px; }
  html body:is(#nex-rd, *) .nex-box .nex88-front .nex78-row { gap: 24px; padding-right: 24px; }
  html body:is(#nex-rd, *) .nex-box .nex88-front .nex78-tile { width: 46px !important; height: 62px !important; }
}
/* 0.21.88 covers load right away at low priority and each one fades in when it arrives (the script adds .nex78-fade, so
   without JS they just show). Until then the box shows a faint blue/ice glow instead of rows of grey slots. */
html body:is(#nex-rd, *) .nex-box .nex-box-bg.nex78-bg {
  background: radial-gradient(120% 90% at 25% 15%, rgba(10, 108, 255, .16), transparent 62%), radial-gradient(90% 80% at 85% 95%, rgba(120, 235, 255, .08), transparent 60%) !important;
}
html.nex78-fade body:is(#nex-rd, *) .nex-box .nex78-tile { opacity: 0; transition: opacity .6s ease; }
html.nex78-fade body:is(#nex-rd, *) .nex-box .nex78-tile.is-in { opacity: 1; }

html:is([data-bs-theme=light], [data-nex-theme=light], [data-theme=light]) body:is(#nex-rd, *) #nex70-game .nex70-facts .nex64-language.is-supported > i::after { background: #fff; }
