:root {
  --v3-bg: #f4f7f8;
  --v3-surface: #ffffff;
  --v3-ink: #18222e;
  --v3-muted: #62717b;
  --v3-line: #dce4e8;
  --v3-blue: #2f6fed;
  --v3-teal: #247a73;
  --v3-navy: #1d2c3b;
  --v3-radius: 16px;
  --v3-shadow: 0 12px 32px rgba(24, 34, 46, 0.08);
}

* { box-sizing: border-box; }
body { margin: 0; background: var(--v3-bg); color: var(--v3-ink); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
.v3-page { max-width: 1240px; margin: 0 auto; padding: 32px 24px 64px; }
.v3-layout-row { min-width: 0; }
.v3-layout-row--main_sidebar { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr); gap: 24px; align-items: start; }
.v3-layout-row--two_column { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; }
.v3-layout-row--two_column:has(> .v3-layout-slot--right:empty) { grid-template-columns: minmax(0, 1fr); }
.v3-layout-slot { min-width: 0; }
.v3-nav { display: flex; align-items: center; gap: 22px; min-height: 68px; padding: 0 24px; background: var(--v3-surface); border-bottom: 1px solid var(--v3-line); }
.v3-brand { font-family: Georgia, "Songti SC", serif; font-size: 25px; font-weight: 800; letter-spacing: -1px; }
.v3-brand-logo { width: auto; height: 34px; max-width: 180px; object-fit: contain; object-position: left center; }
.v3-brand-mark { color: var(--v3-blue); }
.v3-nav-links { display: flex; gap: 18px; font-size: 14px; font-weight: 650; color: #46545f; }
.v3-nav-link { color: inherit; }
.v3-nav-link:hover, .v3-nav-link.is-active { color: var(--v3-blue); }
.v3-nav-link.is-active { font-weight: 800; }
.v3-secondary-nav { display: flex; flex-wrap: wrap; gap: 8px 16px; min-height: 36px; padding: 8px 24px; border-bottom: 1px solid var(--v3-line); background: color-mix(in srgb, var(--v3-surface) 92%, var(--v3-bg)); color: var(--v3-muted); font-size: 13px; font-weight: 700; }
.v3-secondary-nav a { color: inherit; }
.v3-secondary-nav a:hover, .v3-secondary-nav a[aria-current="page"] { color: var(--v3-blue); }
.v3-secondary-nav-child { padding-left: 10px; color: var(--v3-muted); font-size: 12px; }
.v3-nav-search { margin-left: auto; color: var(--v3-muted); font-size: 14px; }
.v3-nav-search:hover { color: var(--v3-blue); }
.v3-nav-user { color: var(--v3-blue); font-size: 14px; font-weight: 700; }
.v3-nav-account { display: flex; align-items: center; gap: 12px; }
.v3-nav-logout { color: var(--v3-muted); font-size: 14px; font-weight: 700; }
.v3-focus { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr); overflow: hidden; min-height: 400px; border-radius: var(--v3-radius); background: var(--v3-navy); color: #fff; box-shadow: var(--v3-shadow); }
.v3-focus-copy { display: flex; flex-direction: column; justify-content: end; padding: 54px; }
.v3-eyebrow { display: inline-block; color: var(--v3-blue); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.v3-focus .v3-eyebrow { color: #bcd0ff; }
.v3-focus h1 { margin: 14px 0; font-family: Georgia, "Songti SC", serif; font-size: clamp(38px, 5vw, 68px); line-height: 1.02; letter-spacing: -2px; }
.v3-focus p { max-width: 560px; margin: 0; color: #d5e1e8; line-height: 1.8; }
.v3-focus-visual { min-height: 300px; background: linear-gradient(135deg, #7c9cac, #375363); background-position: center; background-size: cover; }
.v3-focus-visual img { width: 100%; height: 100%; min-height: 300px; object-fit: cover; }
.v3-button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; margin-top: 24px; padding: 0 18px; border: 1px solid var(--v3-blue); border-radius: 8px; background: var(--v3-blue); color: #fff; font-weight: 750; }
.v3-button--line { background: transparent; color: var(--v3-blue); }
.v3-button--light { border-color: #fff; background: #fff; color: var(--v3-navy); }
.v3-focus-links, .v3-grid, .v3-rank-columns, .v3-topics { display: grid; gap: 16px; }
.v3-focus-links { grid-template-columns: repeat(3, 1fr); margin: 16px 0 40px; }
.v3-context-card, .v3-card, .v3-rank, .v3-sidecard, .v3-facts-panel, .v3-article { border: 1px solid var(--v3-line); border-radius: 12px; background: var(--v3-surface); }
.v3-context-card { min-height: 150px; padding: 22px; }
.v3-context-card h3, .v3-card h3, .v3-article h3 { margin: 8px 0; font-size: 18px; }
.v3-context-card p, .v3-card p, .v3-article p, .v3-muted { color: var(--v3-muted); }
.v3-section { margin: 46px 0; }
.v3-section-head { display: flex; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.v3-section-head h2 { margin: 0; font-family: Georgia, "Songti SC", serif; font-size: 30px; }
.v3-section-head p { margin: 4px 0 0; color: var(--v3-muted); }
.v3-section-link { color: var(--v3-blue); font-weight: 750; white-space: nowrap; }
.v3-grid { grid-template-columns: repeat(4, 1fr); }
.v3-card { overflow: hidden; transition: transform .18s ease, box-shadow .18s ease; }
.v3-card:hover { transform: translateY(-4px); box-shadow: var(--v3-shadow); }
.v3-card-cover { aspect-ratio: 16 / 10; background: #cddde1; }
.v3-card-cover img { width: 100%; height: 100%; object-fit: cover; }
.v3-card-body { padding: 15px; }
.v3-score { float: right; color: var(--v3-teal); font-weight: 800; }
.v3-radar { display: grid; grid-template-columns: 1.35fr .65fr; overflow: hidden; border-radius: var(--v3-radius); background: var(--v3-navy); color: #fff; }
.v3-radar-main { padding: 36px; }
.v3-radar-main h2 { margin: 8px 0; font-size: 34px; }
.v3-radar-main p { color: #d2dce5; }
.v3-radar-list { padding: 18px; background: #e9f1f0; color: var(--v3-ink); }
.v3-radar-item { display: flex; gap: 12px; padding: 13px 0; border-bottom: 1px solid #d1dfdc; }
.v3-radar-date { min-width: 46px; color: var(--v3-teal); font-size: 13px; font-weight: 800; }
.v3-rank-columns { grid-template-columns: repeat(4, 1fr); }
.v3-rank { padding: 18px; }
.v3-rank h3 { margin-top: 0; }
.v3-rank-row { display: flex; gap: 10px; align-items: center; padding: 12px 0; border-top: 1px solid var(--v3-line); }
.v3-rank-row b { color: var(--v3-blue); }
.v3-rank-row small { margin-left: auto; color: var(--v3-teal); font-weight: 800; }
.v3-topics { grid-template-columns: repeat(3, 1fr); }
.v3-topic { min-height: 180px; padding: 25px; border-radius: 12px; background: linear-gradient(135deg, #d6e5e1, #a9bfc1); }
.v3-topic:nth-child(2) { background: linear-gradient(135deg, #e8d8cf, #cfaa92); }
.v3-topic:nth-child(3) { background: linear-gradient(135deg, #d9d7ea, #a9a7ca); }
.v3-topic h3 { font-family: Georgia, "Songti SC", serif; font-size: 25px; }
.v3-columns { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(260px, .55fr); gap: 24px; }
.v3-article { display: grid; grid-template-columns: 180px 1fr; gap: 18px; margin-bottom: 14px; padding: 14px; }
.v3-article { width: 100%; min-width: 0; }
.v3-article-cover { min-height: 120px; background: #d6e1e3; border-radius: 8px; }
.v3-article-cover img { width: 100%; height: 100%; object-fit: cover; }
.v3-ad { padding: 14px; border: 1px dashed #b9c5ca; color: var(--v3-muted); font-size: 12px; text-align: center; }
.v3-detail-layout { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 28px; align-items: start; }
.v3-detail-layout > div { min-width: 0; }
.v3-detail-hero { overflow: hidden; border-radius: var(--v3-radius); background: var(--v3-navy); color: #fff; }
.v3-detail-primary { aspect-ratio: 16 / 8; background: #526b78; }
.v3-detail-primary img { width: 100%; height: 100%; object-fit: cover; }
.v3-detail-copy { padding: 30px; }
.v3-detail-copy h1 { margin: 8px 0; font-family: Georgia, "Songti SC", serif; font-size: 44px; }
.v3-screens { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding: 12px; background: #eaf0f2; }
.v3-screens img { width: 100%; aspect-ratio: 16 / 9; border-radius: 6px; object-fit: cover; }
.v3-facts-panel { position: sticky; top: 18px; padding: 22px; }
.v3-facts-panel h2 { margin-top: 0; }
.v3-fact { display: flex; justify-content: space-between; gap: 12px; padding: 11px 0; border-top: 1px solid var(--v3-line); color: var(--v3-muted); }
.v3-fact b { color: var(--v3-ink); text-align: right; }
.v3-prose { margin-top: 30px; padding: 0 6px; line-height: 1.85; }
.v3-prose h2 { margin-top: 36px; font-size: 27px; }
.v3-mobile-cta { display: none; }
.mobile-cta-spacer { display: none; }
.v3-footer { padding: 42px 24px; background: var(--v3-navy); color: #dbe5eb; }
.v3-footer-inner { display: grid; grid-template-columns: 1.5fr repeat(3, 1fr); gap: 28px; max-width: 1240px; margin: 0 auto; }
.v3-footer h3 { margin-top: 0; font-size: 15px; color: #fff; }
.v3-footer a { display: block; margin: 8px 0; color: #c1d0d9; }
@media (max-width: 900px) { .v3-grid, .v3-rank-columns { grid-template-columns: repeat(2, 1fr); } .v3-detail-layout, .v3-columns { grid-template-columns: 1fr; } .v3-facts-panel { position: static; } }
@media (max-width: 680px) { .v3-page { padding: 20px 14px 82px; } .v3-nav { gap: 12px; padding: 0 14px; } .v3-nav-search { display: none; } .v3-nav { flex-wrap: wrap; align-content: center; min-height: 104px; } .v3-nav-links { display: flex; order: 3; flex-basis: 100%; overflow-x: auto; min-width: 0; gap: 16px; padding-bottom: 10px; white-space: nowrap; } .v3-nav-link { flex: 0 0 auto; } .v3-nav-user, .v3-nav-account { margin-left: auto; } .v3-nav-account .v3-nav-user { margin-left: 0; } .v3-focus, .v3-radar, .v3-layout-row--main_sidebar, .v3-layout-row--two_column { grid-template-columns: 1fr; } .v3-focus-copy { padding: 32px 24px; } .v3-focus h1 { font-size: 42px; } .v3-focus-visual { min-height: 220px; } .v3-focus-links, .v3-grid, .v3-rank-columns, .v3-topics { grid-template-columns: 1fr; } .v3-section-head { align-items: start; flex-direction: column; } .v3-article { grid-template-columns: 1fr; } .v3-article-cover { min-height: 170px; } .v3-footer-inner { grid-template-columns: 1fr 1fr; } .v3-mobile-cta { display: flex; position: fixed; z-index: 100; right: 0; bottom: 0; left: 0; gap: 10px; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.96); border-top: 1px solid var(--v3-line); } .v3-mobile-cta .v3-button { flex: 1; margin: 0; } .mobile-cta-spacer { display: block; height: calc(76px + env(safe-area-inset-bottom)); } .v3-page--detail { padding-bottom: calc(82px + env(safe-area-inset-bottom)); } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; } }
.v3-favorites-hero { margin: 12px 0 28px; padding: 42px; border-radius: var(--v3-radius); background: linear-gradient(135deg, var(--v3-navy), #34576a); color: #fff; }
.v3-favorites-hero .v3-eyebrow { color: #bcd0ff; }
.v3-favorites-hero h1 { margin: 10px 0; font-family: Georgia, "Songti SC", serif; font-size: clamp(38px, 5vw, 64px); }
.v3-favorites-hero p { margin: 0; color: #d5e1e8; }
.v3-favorites-grid { grid-template-columns: repeat(3, 1fr); }
.v3-favorite-card { position: relative; }
.v3-favorite-card h2 { margin: 8px 0; font-size: 20px; }
.v3-favorite-remove { width: calc(100% - 30px); margin: 0 15px 15px; min-height: 38px; border: 1px solid var(--v3-line); border-radius: 8px; background: var(--v3-surface); color: var(--v3-muted); cursor: pointer; font-weight: 700; }
.v3-favorite-remove:hover { border-color: #c14c4c; color: #b53737; }
.v3-favorite-toggle { width: 100%; margin: 0 0 14px; cursor: pointer; }
.v3-favorite-toggle[data-favorited="1"] { border-color: #c14c4c; background: #fff5f5; color: #b53737; }
.v3-rank-page { padding-top: 44px; }
.v3-rank-hero { padding: 42px; border-radius: var(--v3-radius); background: linear-gradient(135deg, var(--v3-navy), #2f5164); color: #fff; }
.v3-rank-hero h1 { margin: 10px 0; font-family: Georgia, "Songti SC", serif; font-size: clamp(38px, 5vw, 64px); }
.v3-rank-hero p { margin: 0; color: #d5e1e8; }
.v3-rank-tabs { display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0; }
.v3-rank-tabs a { padding: 10px 16px; border: 1px solid var(--v3-line); border-radius: 999px; background: var(--v3-surface); color: var(--v3-muted); font-weight: 750; }
.v3-rank-tabs a.is-active { border-color: var(--v3-blue); background: var(--v3-blue); color: #fff; }
.v3-rank-list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.v3-rank-item { display: grid; grid-template-columns: 50px 1fr; align-items: center; gap: 12px; padding: 12px; border: 1px solid var(--v3-line); border-radius: 14px; background: var(--v3-surface); }
.v3-rank-number { color: var(--v3-blue); font-size: 20px; font-weight: 850; text-align: center; }
.v3-rank-game { display: grid; grid-template-columns: 112px minmax(0, 1fr) auto; align-items: center; gap: 16px; }
.v3-rank-cover { display: block; min-height: 70px; border-radius: 8px; background: #d6e1e3; overflow: hidden; }
.v3-rank-cover img { width: 100%; height: 100%; min-height: 70px; object-fit: cover; }
.v3-rank-game strong, .v3-rank-game small { display: block; }
.v3-rank-game small { margin-top: 6px; color: var(--v3-muted); }
.v3-rank-game b { color: var(--v3-teal); white-space: nowrap; }
.v3-empty { padding: 52px; border: 1px solid var(--v3-line); border-radius: var(--v3-radius); background: var(--v3-surface); text-align: center; }
.v3-empty--guided { display: grid; justify-items: center; gap: 12px; background: linear-gradient(135deg, #f4f8fa, #edf4f2); }
.v3-empty--guided .v3-eyebrow { margin: 0; }
.v3-empty--guided > h1, .v3-empty--guided > h2, .v3-empty--guided > p { margin: 0; }
.v3-empty-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 12px; }
.v3-empty-actions .v3-button { margin: 0; }
.v3-empty[hidden] { display: none; }
@media (max-width: 680px) { .v3-rank-page { padding-top: 22px; } .v3-rank-hero { padding: 28px 22px; } .v3-rank-game { grid-template-columns: 82px minmax(0, 1fr); } .v3-rank-game b { grid-column: 2; } .v3-rank-number { font-size: 16px; } }
/* V3 game library: consumes the public router's games/filter/pagination contract. */
.v3-library-page { padding-top: 44px; }
.v3-library-hero { display: flex; align-items: end; justify-content: space-between; gap: 28px; padding: 44px; border-radius: var(--v3-radius); background: linear-gradient(135deg, var(--v3-navy), #31556a); color: #fff; }
.v3-library-hero h1 { margin: 8px 0; font-family: Georgia, "Songti SC", serif; font-size: clamp(42px, 5vw, 68px); }
.v3-library-hero p { max-width: 590px; margin: 0; color: #d5e1e8; }
.v3-library-count { display: grid; gap: 4px; min-width: 150px; padding: 18px 0 4px 24px; border-left: 1px solid rgba(255,255,255,.25); }
.v3-library-count strong { font-size: 34px; line-height: 1; }
.v3-library-count span { color: #d5e1e8; font-size: 14px; }
.v3-library-filters { display: grid; gap: 12px; margin: 24px 0 20px; padding: 18px; border: 1px solid var(--v3-line); border-radius: 12px; background: var(--v3-surface); }
.v3-filter-group { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.v3-filter-label { width: 44px; color: var(--v3-muted); font-size: 13px; font-weight: 750; }
.v3-filter-group a { padding: 8px 12px; border-radius: 7px; color: #46545f; font-size: 14px; font-weight: 700; }
.v3-filter-group a:hover, .v3-filter-group a.is-active { background: #e7f1f6; color: var(--v3-blue); }
.v3-filter-group a.is-active { box-shadow: inset 0 0 0 1px #a9c8d7; }
.v3-library-intro { display: flex; gap: 6px; align-items: baseline; margin: 24px 0 14px; color: var(--v3-muted); font-size: 14px; }
.v3-library-intro strong { color: var(--v3-navy); font-size: 18px; }
.v3-library-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.v3-library-card { overflow: hidden; border: 1px solid var(--v3-line); border-radius: 12px; background: var(--v3-surface); transition: transform .18s ease, box-shadow .18s ease; }
.v3-library-card:hover { transform: translateY(-4px); box-shadow: var(--v3-shadow); }
.v3-library-card-link { display: block; height: 100%; color: inherit; }
.v3-library-cover { position: relative; aspect-ratio: 16 / 10; background: #d6e1e3; overflow: hidden; }
.v3-library-cover img { width: 100%; height: 100%; object-fit: cover; transition: transform .22s ease; }
.v3-library-card:hover .v3-library-cover img { transform: scale(1.035); }
.v3-library-score { position: absolute; right: 10px; bottom: 10px; padding: 5px 7px; border-radius: 6px; background: rgba(16, 37, 51, .88); color: #fff; font-size: 13px; font-weight: 800; }
.v3-library-card-body { padding: 15px; }
.v3-library-card h2 { margin: 0; font-size: 18px; line-height: 1.35; }
.v3-library-meta, .v3-library-platforms { display: flex; flex-wrap: wrap; gap: 8px; }
.v3-library-meta { margin-top: 9px; color: var(--v3-muted); font-size: 13px; }
.v3-library-meta span + span::before { content: "·"; margin-right: 8px; }
.v3-library-platforms { margin-top: 12px; }
.v3-library-platforms span { padding: 3px 6px; border-radius: 4px; background: #edf3f5; color: #496170; font-size: 12px; }
.v3-library-pagination { display: flex; justify-content: center; margin-top: 34px; }
.v3-library-pagination .pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
.v3-library-pagination a, .v3-library-pagination span { display: inline-flex; min-width: 38px; min-height: 38px; align-items: center; justify-content: center; padding: 0 10px; border: 1px solid var(--v3-line); border-radius: 7px; background: var(--v3-surface); color: var(--v3-muted); font-size: 14px; font-weight: 750; }
.v3-library-pagination .active, .v3-library-pagination a:hover { border-color: var(--v3-blue); background: var(--v3-blue); color: #fff; }
@media (max-width: 900px) { .v3-library-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 680px) { .v3-library-page { padding-top: 22px; } .v3-library-hero { display: grid; padding: 30px 22px; } .v3-library-count { padding: 16px 0 0; border-top: 1px solid rgba(255,255,255,.25); border-left: 0; } .v3-library-grid { grid-template-columns: 1fr; gap: 12px; } .v3-library-card-link { display: grid; grid-template-columns: 132px minmax(0, 1fr); } .v3-library-cover { aspect-ratio: auto; min-height: 116px; } .v3-library-card-body { padding: 13px; } .v3-library-card h2 { font-size: 16px; } .v3-filter-label { width: 100%; } }
/* V3 search: a route-compatible editorial discovery surface. */
.v3-search-page { padding-top: 44px; }
.v3-search-hero { padding: 44px; border-radius: var(--v3-radius); background: linear-gradient(135deg, var(--v3-navy), #31556a); color: #fff; }
.v3-search-hero--compact { padding: 28px 44px; }
.v3-search-hero-copy--hidden { display: none; }
.v3-search-hero h1 { overflow-wrap: anywhere; max-width: 760px; margin: 8px 0; font-family: Georgia, "Songti SC", serif; font-size: clamp(40px, 5vw, 64px); line-height: 1.08; }
.v3-search-hero > p:not(.v3-eyebrow) { margin: 0; color: #d5e1e8; }
.v3-search-form { display: grid; grid-template-columns: 1fr auto; gap: 10px; max-width: 760px; margin-top: 30px; padding: 8px; border: 1px solid rgba(255,255,255,.18); border-radius: 12px; background: #fff; }
.v3-search-form input { min-width: 0; padding: 11px 12px; border: 0; outline: 0; color: var(--v3-ink); font: inherit; }
.v3-search-form button { min-height: 46px; padding: 0 20px; border: 0; border-radius: 8px; background: var(--v3-blue); color: #fff; font: inherit; font-weight: 800; cursor: pointer; }
.v3-search-hot { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 20px; color: #d5e1e8; font-size: 13px; }
.v3-search-hot a { padding: 5px 9px; border: 1px solid rgba(255,255,255,.25); border-radius: 999px; color: #fff; }
.v3-search-results { margin-top: 24px; }
.v3-search-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; padding: 15px 0; border-bottom: 1px solid var(--v3-line); }
.v3-search-toolbar > div:first-child { display: flex; align-items: baseline; gap: 5px; margin-right: auto; }
.v3-search-toolbar strong { color: var(--v3-blue); font-size: 20px; }
.v3-search-toolbar small { padding: 3px 6px; border-radius: 4px; background: #e7f1f6; color: var(--v3-teal); font-size: 11px; }
.v3-search-tabs, .v3-search-sorts { display: flex; flex-wrap: wrap; gap: 6px; }
.v3-search-tabs a, .v3-search-sorts a { padding: 8px 10px; border-radius: 7px; color: var(--v3-muted); font-size: 13px; font-weight: 750; }
.v3-search-tabs a small { margin-left: 4px; }
.v3-search-tabs a.is-active, .v3-search-sorts a.is-active { background: #e7f1f6; color: var(--v3-blue); }
.v3-search-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 22px; }
.v3-search-card { overflow: hidden; border: 1px solid var(--v3-line); border-radius: 12px; background: var(--v3-surface); transition: transform .18s ease, box-shadow .18s ease; }
.v3-search-card:hover { transform: translateY(-4px); box-shadow: var(--v3-shadow); }
.v3-search-card-link { display: block; height: 100%; }
.v3-search-cover { aspect-ratio: 16 / 10; background: #d6e1e3; overflow: hidden; }
.v3-search-cover img { width: 100%; height: 100%; object-fit: cover; }
.v3-search-card-body { padding: 16px; }
.v3-search-kind { display: inline-flex; padding: 3px 6px; border-radius: 4px; background: #e7f1f6; color: var(--v3-blue); font-size: 11px; font-weight: 800; }
.v3-search-kind.is-article { background: #eef1e9; color: var(--v3-teal); }
.v3-search-card h2 { margin: 10px 0 7px; font-size: 18px; line-height: 1.4; }
.v3-search-card h2 mark, .v3-search-card p mark { padding: 0; background: transparent; color: var(--v3-blue); }
.v3-search-card p { display: -webkit-box; overflow: hidden; margin: 0; color: var(--v3-muted); line-height: 1.7; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.v3-search-meta { display: flex; justify-content: space-between; gap: 10px; margin-top: 14px; color: var(--v3-muted); font-size: 12px; }
.v3-search-meta b { color: var(--v3-teal); }
.v3-search-pagination { display: flex; justify-content: center; gap: 6px; margin-top: 30px; }
.v3-search-pagination a { display: inline-flex; min-width: 38px; min-height: 38px; align-items: center; justify-content: center; padding: 0 10px; border: 1px solid var(--v3-line); border-radius: 7px; background: var(--v3-surface); color: var(--v3-muted); font-size: 14px; font-weight: 750; }
.v3-search-pagination a.is-active, .v3-search-pagination a:hover { border-color: var(--v3-blue); background: var(--v3-blue); color: #fff; }
.v3-search-related { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 30px; padding-top: 20px; border-top: 1px solid var(--v3-line); color: var(--v3-muted); font-size: 13px; }
.v3-search-related a { padding: 6px 9px; border-radius: 999px; background: #eaf0f2; color: #496170; font-weight: 700; }
.v3-search-start { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 24px; padding: 30px; border: 1px solid var(--v3-line); border-radius: 12px; background: var(--v3-surface); }
.v3-search-start h2 { margin: 0; font-family: Georgia, "Songti SC", serif; font-size: 28px; }
.v3-search-start p { margin: 8px 0 0; color: var(--v3-muted); }
.v3-search-start .v3-button { margin-top: 0; }
.v3-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
@media (max-width: 900px) { .v3-search-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 680px) { .v3-search-page { padding-top: 22px; } .v3-search-hero { padding: 30px 22px; } .v3-search-form { grid-template-columns: 1fr; } .v3-search-toolbar { align-items: flex-start; } .v3-search-toolbar > div:first-child { width: 100%; } .v3-search-grid { grid-template-columns: 1fr; gap: 12px; } .v3-search-card-link { display: grid; grid-template-columns: 124px minmax(0, 1fr); } .v3-search-cover { min-height: 120px; aspect-ratio: auto; } .v3-search-card-body { padding: 13px; } .v3-search-card p { -webkit-line-clamp: 2; } .v3-search-start { align-items: flex-start; flex-direction: column; } }

.v3-search-cover.is-empty::after { display: grid; height: 100%; place-items: center; content: '游戏资料'; color: #62717b; font-size: 13px; font-weight: 700; }

/* V3 article library and reading surfaces preserve the existing article routing/data contract. */
.v3-article-list-page{padding-top:44px}.v3-article-list-hero{display:flex;align-items:end;justify-content:space-between;gap:28px;padding:44px;border-radius:var(--v3-radius);background:linear-gradient(135deg,var(--v3-navy),#31556a);color:#fff}.v3-article-list-hero h1{margin:8px 0;font-family:Georgia,"Songti SC",serif;font-size:clamp(42px,5vw,68px)}.v3-article-list-hero p{max-width:620px;margin:0;color:#d5e1e8}.v3-article-list-count{display:grid;gap:4px;min-width:150px;padding:18px 0 4px 24px;border-left:1px solid rgba(255,255,255,.25)}.v3-article-list-count strong{font-size:34px;line-height:1}.v3-article-list-count span{color:#d5e1e8;font-size:14px}.v3-article-filters{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.v3-article-filters a{padding:9px 13px;border:1px solid var(--v3-line);border-radius:999px;background:var(--v3-surface);color:var(--v3-muted);font-size:14px;font-weight:750}.v3-article-filters a.is-active,.v3-article-filters a:hover{border-color:var(--v3-blue);background:var(--v3-blue);color:#fff}.v3-article-list-intro{display:flex;gap:6px;align-items:baseline;margin:22px 0 14px;color:var(--v3-muted);font-size:14px}.v3-article-list-intro strong{color:var(--v3-navy);font-size:18px}.v3-article-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.v3-article-list-card{overflow:hidden;border:1px solid var(--v3-line);border-radius:12px;background:var(--v3-surface);transition:transform .18s ease,box-shadow .18s ease}.v3-article-list-card:hover{transform:translateY(-4px);box-shadow:var(--v3-shadow)}.v3-article-list-link{display:block;height:100%}.v3-article-list-cover{aspect-ratio:16/10;background:#d6e1e3;overflow:hidden}.v3-article-list-cover img{width:100%;height:100%;object-fit:cover}.v3-article-list-body{padding:16px}.v3-article-list-category{display:inline-flex;padding:3px 6px;border-radius:4px;background:#e7f1f6;color:var(--v3-blue);font-size:11px;font-weight:800}.v3-article-list-card h2{margin:10px 0 7px;font-size:19px;line-height:1.4}.v3-article-list-card p{display:-webkit-box;overflow:hidden;margin:0;color:var(--v3-muted);line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:3}.v3-article-list-meta{display:flex;justify-content:space-between;gap:10px;margin-top:14px;color:var(--v3-muted);font-size:12px}.v3-article-pagination{display:flex;justify-content:center;margin-top:34px}.v3-article-pagination .pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.v3-article-pagination a,.v3-article-pagination span{display:inline-flex;min-width:38px;min-height:38px;align-items:center;justify-content:center;padding:0 10px;border:1px solid var(--v3-line);border-radius:7px;background:var(--v3-surface);color:var(--v3-muted);font-size:14px;font-weight:750}.v3-article-pagination .active,.v3-article-pagination a:hover{border-color:var(--v3-blue);background:var(--v3-blue);color:#fff}.v3-article-detail-page{max-width:960px}.v3-article-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px;color:var(--v3-muted);font-size:13px}.v3-article-breadcrumb a{color:var(--v3-blue)}.v3-article-detail{padding:clamp(24px,5vw,58px);border:1px solid var(--v3-line);border-radius:var(--v3-radius);background:var(--v3-surface)}.v3-article-detail-head{max-width:760px;margin:0 auto 30px}.v3-article-detail h1{margin:13px 0;font-family:Georgia,"Songti SC",serif;font-size:clamp(34px,5vw,56px);line-height:1.16;letter-spacing:-1px}.v3-article-detail-meta{display:flex;flex-wrap:wrap;gap:8px 15px;color:var(--v3-muted);font-size:13px}.v3-article-detail-cover{overflow:hidden;margin:30px auto;border-radius:10px;background:#d6e1e3}.v3-article-detail-cover img{width:100%;aspect-ratio:16/9;object-fit:cover}.v3-article-prose{max-width:760px;margin:0 auto;color:#26343e;font-size:17px;line-height:1.95}.v3-article-prose h2,.v3-article-prose h3{margin-top:2em;font-family:Georgia,"Songti SC",serif;line-height:1.3}.v3-article-prose img{height:auto;margin:28px auto;border-radius:8px}.v3-article-prose a{color:var(--v3-blue);text-decoration:underline}.v3-article-tags{display:flex;flex-wrap:wrap;gap:8px;max-width:760px;margin:42px auto 0;padding-top:22px;border-top:1px solid var(--v3-line);color:var(--v3-muted);font-size:13px}.v3-article-tags a{padding:5px 9px;border-radius:999px;background:#eaf0f2;color:#496170;font-weight:700}.v3-article-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.v3-article-nav a{min-height:88px;padding:16px;border:1px solid var(--v3-line);border-radius:10px;background:var(--v3-surface)}.v3-article-nav span,.v3-article-nav strong{display:block}.v3-article-nav span{margin-bottom:6px;color:var(--v3-muted);font-size:12px}.v3-article-nav strong{line-height:1.45}.v3-article-related{margin-top:50px}.v3-article-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.v3-article-related-grid a{padding:18px;border:1px solid var(--v3-line);border-radius:10px;background:var(--v3-surface)}.v3-article-related-grid span,.v3-article-related-grid strong,.v3-article-related-grid p{display:block}.v3-article-related-grid span{color:var(--v3-muted);font-size:12px}.v3-article-related-grid strong{margin:9px 0;line-height:1.45}.v3-article-related-grid p{margin:0;color:var(--v3-muted);font-size:13px;line-height:1.65}@media(max-width:900px){.v3-article-list-grid,.v3-article-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.v3-article-list-page{padding-top:22px}.v3-article-list-hero{display:grid;padding:30px 22px}.v3-article-list-count{padding:16px 0 0;border-top:1px solid rgba(255,255,255,.25);border-left:0}.v3-article-list-grid,.v3-article-related-grid{grid-template-columns:1fr;gap:12px}.v3-article-list-link{display:grid;grid-template-columns:124px minmax(0,1fr)}.v3-article-list-cover{min-height:120px;aspect-ratio:auto}.v3-article-list-body{padding:13px}.v3-article-list-card h2{margin-top:7px;font-size:16px}.v3-article-list-card p{-webkit-line-clamp:2}.v3-article-detail-page{padding-top:24px}.v3-article-detail{padding:24px 18px}.v3-article-detail h1{font-size:34px}.v3-article-prose{font-size:16px}.v3-article-nav{grid-template-columns:1fr}}

/* V3 topic surfaces consume the existing curated-topic contract. */
.v3-topic-list-page { padding-top: 44px; }.v3-topic-list-hero { display:flex; align-items:end; justify-content:space-between; gap:28px; padding:44px; border-radius:var(--v3-radius); background:linear-gradient(135deg,var(--v3-navy),#31556a); color:#fff; }.v3-topic-list-hero h1 { margin:8px 0; font-family:Georgia,"Songti SC",serif; font-size:clamp(42px,5vw,68px); }.v3-topic-list-hero p { max-width:620px; margin:0; color:#d5e1e8; }.v3-topic-list-count { display:grid; gap:5px; min-width:170px; padding:18px 0 4px 24px; border-left:1px solid rgba(255,255,255,.25); }.v3-topic-list-count strong { font-size:34px; line-height:1; }.v3-topic-list-count span { color:#d5e1e8; font-size:14px; }.v3-topic-list-count small { color:#bcd0d9; }
.v3-topic-filters { display:flex; flex-wrap:wrap; gap:8px; margin:24px 0; }.v3-topic-filters a { padding:9px 13px; border:1px solid var(--v3-line); border-radius:999px; background:var(--v3-surface); color:var(--v3-muted); font-size:14px; font-weight:750; }.v3-topic-filters a.is-active,.v3-topic-filters a:hover { border-color:var(--v3-blue); background:var(--v3-blue); color:#fff; }.v3-topic-list-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }.v3-topic-list-card { overflow:hidden; border:1px solid var(--v3-line); border-radius:12px; background:var(--v3-surface); transition:transform .18s ease,box-shadow .18s ease; }.v3-topic-list-card:hover { transform:translateY(-4px); box-shadow:var(--v3-shadow); }.v3-topic-list-link { display:block; height:100%; }.v3-topic-list-cover { aspect-ratio:16/9; overflow:hidden; }.v3-topic-list-cover img { width:100%; height:100%; object-fit:cover; }.v3-topic-list-body { padding:17px; }.v3-topic-list-kicker,.v3-topic-list-meta { display:flex; justify-content:space-between; gap:8px; color:var(--v3-muted); font-size:12px; }.v3-topic-list-kicker span:first-child { color:var(--v3-blue); font-weight:800; }.v3-topic-list-card h2 { margin:10px 0 8px; font-size:20px; line-height:1.35; }.v3-topic-list-card p { display:-webkit-box; overflow:hidden; margin:0; color:var(--v3-muted); line-height:1.7; -webkit-box-orient:vertical; -webkit-line-clamp:3; }.v3-topic-list-meta { margin-top:15px; padding-top:13px; border-top:1px solid var(--v3-line); }
.v3-topic-detail-page { max-width:1240px; }.v3-topic-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:24px; color:var(--v3-muted); font-size:13px; }.v3-topic-breadcrumb a { color:var(--v3-blue); }.v3-topic-detail-hero { position:relative; display:flex; align-items:end; min-height:440px; overflow:hidden; border-radius:var(--v3-radius); background:var(--v3-topic-color); color:#fff; }.v3-topic-detail-backdrop { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.32; filter:blur(1px); transform:scale(1.03); }.v3-topic-detail-hero::after { position:absolute; inset:0; content:""; background:linear-gradient(90deg,rgba(14,31,43,.94),rgba(14,31,43,.25)); }.v3-topic-detail-copy { position:relative; z-index:1; max-width:720px; padding:52px; }.v3-topic-detail-copy .v3-eyebrow { color:#bcd0ff; }.v3-topic-detail-copy h1 { margin:10px 0; font-family:Georgia,"Songti SC",serif; font-size:clamp(42px,5vw,70px); line-height:1.05; }.v3-topic-detail-copy > p:not(.v3-eyebrow) { margin:0; color:#d5e1e8; line-height:1.8; }.v3-topic-detail-copy div { display:flex; align-items:center; gap:16px; margin-top:25px; font-size:14px; }.v3-topic-detail-copy a { padding:10px 15px; border-radius:7px; background:#fff; color:var(--v3-navy); font-weight:800; }.v3-topic-games,.v3-topic-story { margin-top:48px; }.v3-topic-games-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }.v3-topic-game-card { overflow:hidden; border:1px solid var(--v3-line); border-radius:11px; background:var(--v3-surface); }.v3-topic-game-card > div { aspect-ratio:16/10; background:#d6e1e3; }.v3-topic-game-card img { width:100%; height:100%; object-fit:cover; }.v3-topic-game-card section { padding:14px; }.v3-topic-game-card h3 { margin:0; font-size:17px; line-height:1.35; }.v3-topic-game-card p { margin:7px 0; color:var(--v3-muted); font-size:13px; }.v3-topic-game-card b { color:var(--v3-teal); font-size:13px; }.v3-topic-story-row { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:46px; padding:38px 0; border-top:1px solid var(--v3-line); }.v3-topic-story-row.is-reversed > :first-child { order:2; }.v3-topic-story-image { overflow:hidden; border-radius:10px; background:#d6e1e3; }.v3-topic-story-image img { width:100%; aspect-ratio:16/10; object-fit:cover; }.v3-topic-story-row h3 { margin:0 0 12px; font-family:Georgia,"Songti SC",serif; font-size:30px; }.v3-topic-story-row p { margin:0; color:var(--v3-muted); line-height:1.85; }
@media(max-width:900px){.v3-topic-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v3-topic-games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.v3-topic-list-page{padding-top:22px}.v3-topic-list-hero{display:grid;padding:30px 22px}.v3-topic-list-count{padding:16px 0 0;border-top:1px solid rgba(255,255,255,.25);border-left:0}.v3-topic-list-grid{grid-template-columns:1fr;gap:12px}.v3-topic-list-link{display:grid;grid-template-columns:124px minmax(0,1fr)}.v3-topic-list-cover{min-height:126px;aspect-ratio:auto}.v3-topic-list-body{padding:13px}.v3-topic-list-card h2{font-size:17px}.v3-topic-list-card p{-webkit-line-clamp:2}.v3-topic-detail-page{padding-top:24px}.v3-topic-detail-hero{min-height:410px}.v3-topic-detail-copy{padding:30px 22px}.v3-topic-detail-copy h1{font-size:42px}.v3-topic-games-grid{grid-template-columns:1fr;gap:12px}.v3-topic-game-card{display:grid;grid-template-columns:120px minmax(0,1fr)}.v3-topic-game-card > div{min-height:110px;aspect-ratio:auto}.v3-topic-story-row,.v3-topic-story-row.is-reversed{grid-template-columns:1fr;gap:20px}.v3-topic-story-row.is-reversed > :first-child{order:0}.v3-topic-story-row h3{font-size:26px}}
/* V3 taxonomy: tag discovery and mixed category collections use router-provided data. */
.v3-tag-page,.v3-category-page{padding-top:36px}.v3-taxonomy-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;color:var(--v3-muted);font-size:13px}.v3-taxonomy-breadcrumb a{color:var(--v3-blue)}.v3-taxonomy-hero{display:flex;align-items:end;justify-content:space-between;gap:28px;padding:44px;border-radius:var(--v3-radius);background:linear-gradient(135deg,var(--v3-navy),#31556a);color:#fff}.v3-taxonomy-hero h1{margin:8px 0;font-family:Georgia,"Songti SC",serif;font-size:clamp(42px,5vw,68px);line-height:1.08}.v3-taxonomy-hero p{max-width:620px;margin:0;color:#d5e1e8;line-height:1.75}.v3-taxonomy-count{display:grid;gap:5px;min-width:170px;padding:18px 0 4px 24px;border-left:1px solid rgba(255,255,255,.25)}.v3-taxonomy-count strong{font-size:34px;line-height:1}.v3-taxonomy-count span{color:#d5e1e8;font-size:14px}.v3-taxonomy-count small{color:#bcd0d9}.v3-tag-cloud{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;padding:28px;border:1px solid var(--v3-line);border-radius:var(--v3-radius);background:var(--v3-surface)}.v3-tag-cloud a{display:flex;align-items:center;gap:9px;padding:10px 13px;border:1px solid #d5e3e8;border-radius:999px;background:#f7fafb;color:#314957;font-size:14px;font-weight:750}.v3-tag-cloud a:hover{border-color:var(--v3-blue);background:#e7f1f6;color:var(--v3-blue)}.v3-tag-cloud small{color:var(--v3-teal);font-weight:800}.v3-taxonomy-section{margin-top:44px}.v3-taxonomy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.v3-taxonomy-card{overflow:hidden;border:1px solid var(--v3-line);border-radius:12px;background:var(--v3-surface);transition:transform .18s ease,box-shadow .18s ease}.v3-taxonomy-card:hover{transform:translateY(-4px);box-shadow:var(--v3-shadow)}.v3-taxonomy-cover{position:relative;aspect-ratio:16/10;background:#d6e1e3}.v3-taxonomy-cover img{width:100%;height:100%;object-fit:cover}.v3-taxonomy-cover b{position:absolute;right:10px;bottom:10px;padding:5px 7px;border-radius:6px;background:rgba(16,37,51,.88);color:#fff;font-size:13px}.v3-taxonomy-card-body{padding:15px}.v3-taxonomy-card-body span,.v3-category-kind{display:inline-flex;padding:3px 6px;border-radius:4px;background:#e7f1f6;color:var(--v3-blue);font-size:11px;font-weight:800}.v3-taxonomy-card h3{margin:10px 0 7px;font-size:18px;line-height:1.4}.v3-taxonomy-card p{margin:0;color:var(--v3-muted);font-size:13px}.v3-taxonomy-articles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.v3-taxonomy-articles>a{padding:20px;border:1px solid var(--v3-line);border-radius:11px;background:var(--v3-surface)}.v3-taxonomy-articles span,.v3-taxonomy-articles strong,.v3-taxonomy-articles p,.v3-taxonomy-articles small{display:block}.v3-taxonomy-articles span{color:var(--v3-blue);font-size:12px;font-weight:800}.v3-taxonomy-articles strong{margin:9px 0;line-height:1.45}.v3-taxonomy-articles p{margin:0;color:var(--v3-muted);font-size:13px;line-height:1.65}.v3-taxonomy-articles small{margin-top:14px;color:var(--v3-muted);font-size:12px}.v3-taxonomy-pagination,.v3-category-pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:30px;color:var(--v3-muted);font-size:14px}.v3-taxonomy-pagination a,.v3-category-pagination a,.v3-category-pagination span{display:inline-flex;min-height:38px;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--v3-line);border-radius:7px;background:var(--v3-surface);font-weight:750}.v3-taxonomy-pagination a:hover,.v3-category-pagination a:hover,.v3-category-pagination .active{border-color:var(--v3-blue);background:var(--v3-blue);color:#fff}.v3-category-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin:24px 0;padding:14px;border:1px solid var(--v3-line);border-radius:12px;background:var(--v3-surface)}.v3-category-tabs,.v3-category-sort{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.v3-category-tabs a,.v3-category-sort a{padding:8px 11px;border-radius:7px;color:var(--v3-muted);font-size:14px;font-weight:750}.v3-category-tabs a:hover,.v3-category-tabs a.is-active,.v3-category-sort a:hover,.v3-category-sort a.is-active{background:#e7f1f6;color:var(--v3-blue)}.v3-category-sort span{color:var(--v3-muted);font-size:13px;font-weight:750}.v3-category-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v3-category-item{overflow:hidden;border:1px solid var(--v3-line);border-radius:12px;background:var(--v3-surface);transition:transform .18s ease,box-shadow .18s ease}.v3-category-item:hover{transform:translateY(-3px);box-shadow:var(--v3-shadow)}.v3-category-item-link{display:grid;grid-template-columns:180px minmax(0,1fr);height:100%}.v3-category-cover{min-height:160px;background:#d6e1e3}.v3-category-cover img{width:100%;height:100%;object-fit:cover}.v3-category-item-body{padding:18px}.v3-category-kind.is-article{background:#eef1e9;color:var(--v3-teal)}.v3-category-item h2{margin:10px 0 8px;font-size:19px;line-height:1.4}.v3-category-item p{display:-webkit-box;overflow:hidden;margin:0;color:var(--v3-muted);font-size:13px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:2}.v3-category-item-body>div{display:flex;justify-content:space-between;gap:10px;margin-top:15px;color:var(--v3-muted);font-size:12px}.v3-category-item-body b{color:var(--v3-teal)}
@media(max-width:900px){.v3-taxonomy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v3-taxonomy-articles{grid-template-columns:repeat(2,minmax(0,1fr))}.v3-category-list{grid-template-columns:1fr}}@media(max-width:680px){.v3-tag-page,.v3-category-page{padding-top:20px}.v3-taxonomy-hero{display:grid;padding:30px 22px}.v3-taxonomy-count{padding:16px 0 0;border-top:1px solid rgba(255,255,255,.25);border-left:0}.v3-tag-cloud{padding:18px;gap:8px}.v3-taxonomy-grid,.v3-taxonomy-articles{grid-template-columns:1fr;gap:12px}.v3-taxonomy-card>a{display:grid;grid-template-columns:124px minmax(0,1fr)}.v3-taxonomy-cover{min-height:116px;aspect-ratio:auto}.v3-taxonomy-card-body{padding:13px}.v3-taxonomy-card h3{margin-top:7px;font-size:16px}.v3-category-controls{align-items:flex-start;flex-direction:column}.v3-category-item-link{grid-template-columns:124px minmax(0,1fr)}.v3-category-cover{min-height:120px}.v3-category-item-body{padding:13px}.v3-category-item h2{margin-top:7px;font-size:16px}.v3-category-item p{-webkit-line-clamp:2}}

/* P6-A: approved V3 editorial portal visual system, fed only by existing CMS data. */
:root { --v3-bg: #f5f1e9; --v3-surface: #fffdfa; --v3-muted: #66717c; --v3-line: #e5ded2; --v3-blue: #c95135; --v3-teal: #35775f; --v3-navy: #182c40; --v3-orange: #f06e4c; }
body { background: var(--v3-bg); }
.v3-brand-mark { display: inline-grid; width: 26px; height: 26px; place-items: center; margin-right: 2px; border-radius: 7px; background: var(--v3-orange); color: #fff; font-size: 15px; }
.v3-nav-link:hover, .v3-nav-link.is-active, .v3-nav-search:hover, .v3-nav-user, .v3-section-link { color: var(--v3-blue); }
.v3-home .v3-hero { display: grid; grid-template-columns: minmax(0, 1.72fr) minmax(260px, .78fr); gap: 16px; }
.v3-home .v3-focus { min-height: 414px; }
.v3-home .v3-focus-copy { padding: 48px; }
.v3-home .v3-focus-visual, .v3-home .v3-focus-visual img { min-height: 414px; }
.v3-home .v3-button { border-color: var(--v3-blue); background: var(--v3-blue); }
.v3-home .v3-button--light { border-color: #fff; background: #fff; color: var(--v3-navy); }
.v3-hero-side { display: grid; grid-template-columns: 1fr; gap: 16px; }
.v3-hero-story { position: relative; min-height: 199px; overflow: hidden; padding: 25px; border-radius: var(--v3-radius); color: #fff; background: linear-gradient(145deg, #364d65, #8192a6); }
.v3-hero-story::after { position: absolute; inset: 0; content: ''; background: linear-gradient(115deg, rgba(24,44,64,.92), rgba(24,44,64,.12)); }
.v3-hero-story > * { position: relative; z-index: 1; }
.v3-hero-story--green { background: linear-gradient(145deg, #2f6658, #91a66e); }
.v3-hero-story .v3-eyebrow { color: #fff1d4; }
.v3-hero-story h2 { margin: 10px 0 7px; font-family: Georgia, "Songti SC", serif; font-size: 25px; line-height: 1.18; }
.v3-hero-story p { margin: 0; color: rgba(255,255,255,.86); font-size: 13px; line-height: 1.65; }
.v3-home .v3-radar-main { background: linear-gradient(135deg, #26384a, #55728d); }
.v3-home .v3-score, .v3-home .v3-rank-row b { color: var(--v3-orange); }
.v3-topic-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.v3-topic-card { position: relative; min-height: 220px; overflow: hidden; border-radius: 14px; color: #fff; background: var(--v3-topic-color, #3a4968); }
.v3-topic-card::after { position: absolute; inset: 0; content: ''; background: linear-gradient(180deg, rgba(24,34,46,.08), rgba(24,34,46,.88)); }
.v3-topic-card > div, .v3-topic-card > section { position: absolute; inset: 0; }
.v3-topic-card img { width: 100%; height: 100%; object-fit: cover; opacity: .45; }
.v3-topic-card section { z-index: 1; display: flex; flex-direction: column; justify-content: end; padding: 22px; }
.v3-topic-card h3 { margin: 0; font-family: Georgia, "Songti SC", serif; font-size: 25px; }
.v3-topic-card p { margin: 7px 0; color: rgba(255,255,255,.88); font-size: 13px; line-height: 1.55; }
.v3-topic-card small { color: #fff1d4; font-weight: 700; }
.v3-home .v3-sidecard { padding: 25px; background: #fff8f0; }
.v3-home .v3-sidecard h3 { margin: 10px 0; font-family: Georgia, "Songti SC", serif; font-size: 28px; }
.v3-home .v3-sidecard p { color: var(--v3-muted); line-height: 1.75; }
.v3-sidecard-action { display: inline-flex; margin-top: 16px; padding: 10px 14px; border-radius: 8px; background: var(--v3-navy); color: #fff; font-weight: 800; }
.v3-ad { border-color: #d3ccc1; background: #ebe6dd; }
@media (max-width: 900px) { .v3-home .v3-hero { grid-template-columns: 1fr; } .v3-hero-side { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 680px) { .v3-home .v3-focus-copy { padding: 28px 22px; } .v3-home .v3-focus-visual, .v3-home .v3-focus-visual img { min-height: 220px; } .v3-hero-side, .v3-topic-grid { grid-template-columns: 1fr; } .v3-hero-story { min-height: 138px; padding: 17px; } .v3-hero-story h2 { font-size: 19px; } }

/* P6-B: real-route search dialog and mobile navigation drawer. */
.v3-nav-search { margin-left: auto; cursor: pointer; }
.v3-nav-toggle { display: none; width: 42px; height: 42px; padding: 10px; border: 1px solid var(--v3-line); border-radius: 8px; background: var(--v3-surface); color: var(--v3-ink); cursor: pointer; }
.v3-nav-toggle span { display: block; height: 2px; margin: 4px 0; border-radius: 2px; background: currentColor; }
.v3-search-dialog { width: min(660px, calc(100vw - 32px)); padding: 0; border: 0; border-radius: 16px; background: var(--v3-surface); color: var(--v3-ink); box-shadow: 0 24px 72px rgba(24,34,46,.28); }
.v3-search-dialog::backdrop { background: rgba(24,34,46,.72); }
.v3-search-dialog-card { position: relative; padding: 32px; }
.v3-search-dialog-card h2 { margin: 0; font-family: Georgia, "Songti SC", serif; font-size: 31px; }
.v3-search-dialog-card p { margin: 10px 0 22px; color: var(--v3-muted); }
.v3-search-dialog-close, .v3-nav-drawer-head button { width: 34px; height: 34px; border: 0; border-radius: 8px; background: #f0ebe3; color: var(--v3-ink); font-size: 24px; line-height: 1; cursor: pointer; }
.v3-search-dialog-close { position: absolute; top: 16px; right: 16px; }
.v3-search-dialog-form { display: grid; grid-template-columns: 1fr auto; gap: 8px; padding: 8px; border: 1px solid var(--v3-line); border-radius: 10px; background: #fff; }
.v3-search-dialog-form input { min-width: 0; padding: 11px 12px; border: 0; outline: 0; color: var(--v3-ink); font: inherit; }
.v3-search-dialog-form button, .v3-nav-drawer-search { min-height: 46px; border: 0; border-radius: 8px; padding: 0 20px; background: var(--v3-orange); color: #fff; font: inherit; font-weight: 800; cursor: pointer; }
.v3-nav-drawer { position: fixed; z-index: 120; inset: 0; background: rgba(24,34,46,.52); }
.v3-nav-drawer-panel { width: min(var(--v3-mobile-drawer-width, 340px), calc(100vw - 34px)); height: 100%; padding: 22px; background: var(--v3-surface); box-shadow: 10px 0 35px rgba(24,34,46,.2); }
.v3-mobile-drawer--right { text-align: right; }
.v3-mobile-drawer--right .v3-nav-drawer-panel { margin-left: auto; box-shadow: -10px 0 35px rgba(24,34,46,.2); }
.v3-nav-drawer-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 20px; border-bottom: 1px solid var(--v3-line); font-family: Georgia, "Songti SC", serif; font-size: 24px; }
.v3-nav-drawer-links { display: grid; margin: 18px 0; }
.v3-nav-drawer-links a { padding: 14px 4px; border-bottom: 1px solid var(--v3-line); font-weight: 750; }
.v3-nav-drawer-links a[aria-current="page"] { color: var(--v3-orange); }
.v3-nav-drawer-search { display: block; width: 100%; text-align: center; }
@media (max-width: 680px) { .v3-nav { min-height: 62px; } .v3-nav-search { display: none; } .v3-nav-toggle { display: inline-block; order: 2; margin-left: auto; } .v3-nav-toggle--grid, .v3-nav-toggle--compass { font-size: 20px; line-height: 1; } .v3-nav-user, .v3-nav-account { order: 3; margin-left: 0; } .v3-nav-links { order: 4; } .v3-mobile-brand--hidden, .v3-mobile-search--hidden, .v3-mobile-favorite--hidden { display: none; } }

/* P7 editorial game-detail hero. Values consume only fields supplied by the detail adapter. */
.v3-detail-breadcrumb { display: flex; align-items: center; gap: 9px; margin: 0 0 16px; color: var(--v3-muted); font-size: 14px; }
.v3-detail-breadcrumb a { color: var(--v3-navy); text-decoration: none; }
.v3-detail-hero { position: relative; box-shadow: 0 18px 36px rgba(30, 46, 62, .14); }
.v3-detail-hero::after { content: ""; position: absolute; z-index: 1; right: 0; bottom: 0; left: 0; height: 46%; pointer-events: none; background: linear-gradient(180deg, rgba(16, 29, 41, 0), rgba(16, 29, 41, .82)); }
.v3-detail-copy { position: relative; z-index: 2; margin-top: -180px; }
.v3-detail-kicker { display: flex; justify-content: flex-end; }
.v3-detail-title { max-width: 760px; margin: 10px 0; font-family: Georgia, "Songti SC", serif; font-size: clamp(34px, 5vw, 54px); line-height: 1.06; letter-spacing: -.03em; }
.v3-detail-copy p { max-width: 680px; margin: 0; color: rgba(255,255,255,.88); font-size: 16px; line-height: 1.75; }
.v3-detail-score { display: inline-flex; align-items: baseline; gap: 4px; color: #f7ca71; font: 700 30px/1 Georgia, "Songti SC", serif; }
.v3-detail-score small { color: rgba(255,255,255,.68); font: 600 12px/1.2 system-ui, sans-serif; letter-spacing: .04em; }
.v3-detail-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px; }
.v3-detail-actions .v3-button { margin: 0; }
.v3-detail-actions .v3-button--line { border-color: rgba(255,255,255,.65); color: #fff; background: rgba(13, 26, 37, .18); }
.v3-detail-decision-points { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 20px 0 0; padding: 0; list-style: none; }
.v3-detail-decision-points li { min-width: 0; padding: 10px 11px; border: 1px solid rgba(255,255,255,.2); border-radius: 8px; background: rgba(13, 26, 37, .25); }
.v3-detail-decision-points span, .v3-detail-decision-points strong { display: block; }
.v3-detail-decision-points span { margin-bottom: 4px; color: rgba(255,255,255,.65); font-size: 11px; font-weight: 800; }
.v3-detail-decision-points strong { overflow-wrap: anywhere; color: #fff; font-size: 13px; line-height: 1.4; }
.v3-detail-facts { margin: 0; }
@media (max-width: 680px) { .v3-detail-breadcrumb { margin-bottom: 12px; font-size: 13px; } .v3-detail-copy { margin-top: -138px; padding: 22px 18px; } .v3-detail-title { font-size: 36px; } .v3-detail-score { font-size: 25px; } .v3-detail-actions { margin-top: 18px; } .v3-detail-actions .v3-button { flex: 1 1 140px; text-align: center; } .v3-detail-decision-points { grid-template-columns: 1fr; } .v3-screens { grid-template-columns: repeat(2, 1fr); } }

/* P8 discovery continuity across library, search, and ranking routes. */
.v3-library-discovery, .v3-rank-explore { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 18px 0 24px; padding: 14px 16px; border: 1px solid var(--v3-line); border-radius: 10px; background: rgba(255,255,255,.58); }
.v3-library-filter-summary, .v3-library-discovery-links { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.v3-library-filter-summary > span { color: var(--v3-muted); font-size: 13px; }
.v3-library-filter-summary strong { padding: 4px 8px; border-radius: 999px; background: #e8efee; color: var(--v3-navy); font-size: 13px; }
.v3-library-clear, .v3-library-discovery-links a, .v3-rank-explore a { color: var(--v3-navy); font-size: 14px; font-weight: 700; text-decoration: none; }
.v3-library-clear, .v3-library-discovery-links { margin-left: auto; }
.v3-rank-explore { justify-content: flex-end; }
.v3-rank-explore > span { margin-right: auto; color: var(--v3-muted); font-size: 13px; }
.v3-search-discovery > div:last-child { display: flex; flex-wrap: wrap; gap: 10px; }
.v3-search-discovery .v3-button { margin: 0; }
@media (max-width: 680px) { .v3-library-discovery, .v3-rank-explore { align-items: flex-start; flex-direction: column; } .v3-library-clear, .v3-library-discovery-links { margin-left: 0; } .v3-rank-explore > span { margin-right: 0; } .v3-search-discovery > div:last-child { width: 100%; } .v3-search-discovery .v3-button { flex: 1 1 145px; text-align: center; } }

.v3-content-discovery{display:flex;align-items:center;gap:14px;margin:24px 0;padding:18px 20px;border:1px solid var(--v3-line);border-radius:12px;background:linear-gradient(110deg,#f5f0e6,#edf4f2)}.v3-content-discovery>div{display:grid;gap:4px;min-width:0;margin-right:auto}.v3-content-discovery span{color:var(--v3-muted);font-size:12px;font-weight:800}.v3-content-discovery strong{color:var(--v3-navy);font-size:15px;line-height:1.45}.v3-content-discovery>a{flex:0 0 auto;padding:9px 12px;border-radius:7px;background:var(--v3-surface);color:var(--v3-navy);font-size:13px;font-weight:800;white-space:nowrap}.v3-content-discovery>a:hover{background:var(--v3-blue);color:#fff}@media(max-width:680px){.v3-content-discovery{display:grid;gap:10px;padding:16px}.v3-content-discovery>a{width:max-content;max-width:100%;white-space:normal}}

.v3-favorites-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.v3-user-summary{display:flex;align-items:center;gap:16px;min-width:0}.v3-user-avatar{display:grid;flex:0 0 auto;width:58px;height:58px;place-items:center;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-family:Georgia,"Songti SC",serif;font-size:28px;font-weight:800}.v3-user-summary h1{margin:7px 0}.v3-user-stats{display:grid;grid-template-columns:repeat(3,minmax(64px,1fr));gap:12px;min-width:250px;margin:0}.v3-user-stats div{padding-left:13px;border-left:1px solid rgba(255,255,255,.3)}.v3-user-stats dt{color:#d5e1e8;font-size:12px}.v3-user-stats dd{margin:4px 0 0;color:#fff;font-size:24px;font-weight:850}.v3-favorite-status{min-height:20px;margin:-16px 0 14px;color:var(--v3-teal);font-size:13px;font-weight:750}.v3-favorite-card .v3-favorite-remove:focus-visible{outline:3px solid rgba(45,117,146,.35);outline-offset:2px}@media(max-width:680px){.v3-favorites-hero{display:grid;align-items:start;padding:28px 22px}.v3-user-summary{align-items:flex-start}.v3-user-avatar{width:48px;height:48px;font-size:23px}.v3-user-summary h1{font-size:34px}.v3-user-stats{width:100%;min-width:0}.v3-user-stats dd{font-size:21px}.v3-favorites-grid{grid-template-columns:1fr}}

/* P15: personal activity is a compact read-only summary of the router-provided data. */
.v3-activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:22px 0 36px}.v3-activity-card{padding:22px;border:1px solid var(--v3-line);border-radius:12px;background:var(--v3-surface)}.v3-activity-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:15px;border-bottom:1px solid var(--v3-line)}.v3-activity-head h2{margin:6px 0 0;font-family:Georgia,"Songti SC",serif;font-size:23px}.v3-activity-head>span{color:var(--v3-teal);font-size:13px;font-weight:800;white-space:nowrap}.v3-activity-list{display:grid;gap:0}.v3-activity-list article{padding:14px 0;border-bottom:1px solid var(--v3-line)}.v3-activity-list article:last-child{border-bottom:0;padding-bottom:0}.v3-activity-list a,.v3-activity-list strong{display:block;color:var(--v3-ink);font-size:15px;font-weight:800}.v3-activity-list a:hover{color:var(--v3-blue)}.v3-activity-list p{margin:7px 0;color:var(--v3-muted);font-size:14px;line-height:1.55}.v3-activity-list small{color:var(--v3-muted);font-size:12px}.v3-activity-rating-row{display:flex;align-items:center;gap:12px}.v3-activity-rating-row>*:first-child{min-width:0;margin-right:auto}.v3-activity-rating-row b{flex:0 0 auto;color:var(--v3-teal);font-size:17px}.v3-activity-empty{padding:22px 0 4px;color:var(--v3-muted);font-size:14px;line-height:1.6}.v3-activity-empty p{margin:0 0 12px}.v3-activity-empty a{color:var(--v3-blue);font-weight:800}@media(max-width:680px){.v3-activity-grid{grid-template-columns:1fr;margin-bottom:28px}.v3-activity-card{padding:18px}.v3-activity-head h2{font-size:21px}}

.v3-account-actions{margin:0 0 36px;padding:24px;border:1px solid var(--v3-line);border-radius:12px;background:var(--v3-surface)}.v3-account-actions-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding-bottom:18px;border-bottom:1px solid var(--v3-line)}.v3-account-actions-heading h2{margin:6px 0 0;font-family:Georgia,"Songti SC",serif;font-size:25px}.v3-account-actions-heading p{max-width:390px;margin:0;color:var(--v3-muted);font-size:14px;line-height:1.6}.v3-account-actions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:18px}.v3-account-action{display:grid;gap:6px;min-height:112px;padding:18px;border:1px solid var(--v3-line);border-radius:10px;background:#fff;color:var(--v3-ink);text-decoration:none}.v3-account-action:hover{border-color:var(--v3-blue);box-shadow:0 8px 18px rgba(19,54,74,.08)}.v3-account-action span{color:var(--v3-teal);font-size:12px;font-weight:800}.v3-account-action strong{font-size:17px}.v3-account-action small{color:var(--v3-muted);font-size:13px;line-height:1.45}@media(max-width:680px){.v3-account-actions{margin-bottom:28px;padding:18px}.v3-account-actions-heading{display:block}.v3-account-actions-heading h2{font-size:22px}.v3-account-actions-heading p{margin-top:10px}.v3-account-actions-grid{grid-template-columns:1fr}.v3-account-action{min-height:0}}

.v3-page { max-width: var(--v3-page-width, 1240px); }
.v3-density--compact .v3-page { padding-top: 22px; padding-bottom: 44px; }
.v3-density--compact .v3-card, .v3-density--compact .v3-library-card, .v3-density--compact .v3-article-list-card, .v3-density--compact .v3-search-card { border-radius: var(--v3-card-radius, 12px); }
.v3-surface--contrast { --v3-bg: #edf2f5; --v3-surface: #ffffff; --v3-line: #c9d5dc; }
.v3-nav--compact { min-height: 54px; gap: 16px; }
.v3-announcement { padding: 8px 24px; background: var(--v3-secondary, #ef7d32); color: #fff; font-size: 13px; font-weight: 700; text-align: center; }
.v3-announcement a { color: inherit; }
.v3-search-page--compact .v3-search-card-body { padding: 12px; }
/* V3 theme-console Phase 1: fixed presentation variants resolved from bounded theme settings. */
.v3-library--columns-3 .v3-library-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v3-library--columns-5 .v3-library-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.v3-library--ratio-3x2 .v3-library-cover { aspect-ratio: 3 / 2; }
.v3-library--ratio-16x9 .v3-library-cover { aspect-ratio: 16 / 9; }
.v3-library--ratio-1x1 .v3-library-cover { aspect-ratio: 1 / 1; }
.v3-library--list .v3-library-grid { grid-template-columns: 1fr; }
.v3-library--list .v3-library-card-link { display: grid; grid-template-columns: minmax(190px, 30%) minmax(0, 1fr); }
.v3-library--list .v3-library-cover { min-height: 170px; }
.v3-article-list--columns-2 .v3-article-list-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v3-article-list--columns-4 .v3-article-list-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.v3-article-list--ratio-3x2 .v3-article-list-cover { aspect-ratio: 3 / 2; }
.v3-article-list--ratio-16x9 .v3-article-list-cover { aspect-ratio: 16 / 9; }
.v3-article-list--list .v3-article-list-grid { grid-template-columns: 1fr; }
.v3-article-list--list .v3-article-list-link { display: grid; grid-template-columns: minmax(220px, 32%) minmax(0, 1fr); }
.v3-article-detail-page--reading { max-width: 780px; }
.v3-article-detail-page--wide { max-width: 1180px; }
.v3-article-detail-page--reading .v3-article-prose { max-width: 660px; margin-right: auto; margin-left: auto; }
@media (max-width: 900px) { .v3-library--columns-5 .v3-library-grid, .v3-article-list--columns-4 .v3-article-list-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 680px) { .v3-library--columns-3 .v3-library-grid, .v3-library--columns-5 .v3-library-grid, .v3-article-list--columns-2 .v3-article-list-grid, .v3-article-list--columns-4 .v3-article-list-grid { grid-template-columns: 1fr; } .v3-library--list .v3-library-card-link, .v3-article-list--list .v3-article-list-link { grid-template-columns: 124px minmax(0, 1fr); } .v3-library--list .v3-library-cover { min-height: 116px; } }
.v3-brand-logo { display: block; max-width: 168px; max-height: 34px; object-fit: contain; object-position: left center; }
/* V3 theme-console Phase 2: literal display variants from bounded presentation flags. */
.v3-taxonomy--columns-2 .v3-taxonomy-grid, .v3-taxonomy--columns-2 .v3-category-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v3-taxonomy--columns-4 .v3-taxonomy-grid, .v3-taxonomy--columns-4 .v3-category-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.v3-taxonomy--ratio-3x2 .v3-taxonomy-cover, .v3-taxonomy--ratio-3x2 .v3-category-cover { aspect-ratio: 3 / 2; }
.v3-taxonomy--ratio-16x9 .v3-taxonomy-cover, .v3-taxonomy--ratio-16x9 .v3-category-cover { aspect-ratio: 16 / 9; }
.v3-taxonomy--ratio-1x1 .v3-taxonomy-cover, .v3-taxonomy--ratio-1x1 .v3-category-cover { aspect-ratio: 1 / 1; }
.v3-topic-list--columns-2 .v3-topic-list-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v3-topic-list--list .v3-topic-list-grid { grid-template-columns: 1fr; }
.v3-topic-list--list .v3-topic-list-link { display: grid; grid-template-columns: minmax(220px, 34%) minmax(0, 1fr); }
.v3-rank-page--compact .v3-rank-item { padding: 8px; }
.v3-rank-page--compact .v3-rank-game { gap: 11px; }
.v3-rank-page--compact .v3-rank-cover { min-height: 54px; }
.v3-footer--compact { padding: 28px 24px; }\n.v3-footer--compact .v3-footer-inner { gap: 18px; }
.v3-footer--compact .v3-footer a { margin: 5px 0; }\n.v3-rank-game--without-cover { grid-template-columns: minmax(0, 1fr) auto; }
@media (max-width: 900px) { .v3-taxonomy--columns-4 .v3-taxonomy-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 680px) { .v3-taxonomy--columns-2 .v3-taxonomy-grid, .v3-taxonomy--columns-4 .v3-taxonomy-grid, .v3-taxonomy--columns-2 .v3-category-list, .v3-taxonomy--columns-4 .v3-category-list, .v3-topic-list--columns-2 .v3-topic-list-grid { grid-template-columns: 1fr; } .v3-topic-list--list .v3-topic-list-link { grid-template-columns: 124px minmax(0, 1fr); } .v3-rank-page--compact .v3-rank-game { grid-template-columns: 82px minmax(0, 1fr); } }


/* V3 console: safe presentation variants declared by the active theme schema. */
.v3-scheme--dark { --v3-bg: #111827; --v3-surface: #182231; --v3-ink: #edf4fa; --v3-muted: #a7b6c4; --v3-line: #2d3a4a; --v3-navy: #0b1220; --v3-shadow: 0 12px 32px rgba(0, 0, 0, .28); }
.v3-scheme--dark .v3-nav, .v3-scheme--dark .v3-card, .v3-scheme--dark .v3-rank, .v3-scheme--dark .v3-sidecard, .v3-scheme--dark .v3-article, .v3-scheme--dark .v3-context-card, .v3-scheme--dark .v3-footer { background: var(--v3-surface); color: var(--v3-ink); }
.v3-scheme--dark .v3-nav-links, .v3-scheme--dark .v3-nav-logout { color: var(--v3-muted); }
.v3-scheme--dark .v3-radar-list { background: #dce6e4; color: #18222e; }
.v3-scheme--eye_care { --v3-bg: #f4f1e6; --v3-surface: #fffdf5; --v3-ink: #2f332a; --v3-muted: #5c6256; --v3-line: #d9d4c5; --v3-blue: #526b3d; --v3-teal: #3f6b61; --v3-navy: #35402e; --v3-shadow: 0 10px 26px rgba(47, 51, 42, .08); }
.v3-scheme--high_contrast { --v3-bg: #ffffff; --v3-surface: #ffffff; --v3-ink: #000000; --v3-muted: #1a1a1a; --v3-line: #000000; --v3-blue: #0037b8; --v3-teal: #005c4f; --v3-navy: #000000; --v3-shadow: none; }
.v3-scheme--high_contrast .v3-nav, .v3-scheme--high_contrast .v3-card, .v3-scheme--high_contrast .v3-rank, .v3-scheme--high_contrast .v3-sidecard, .v3-scheme--high_contrast .v3-article, .v3-scheme--high_contrast .v3-context-card, .v3-scheme--high_contrast .v3-footer { border: 2px solid #000; box-shadow: none; }
@media (prefers-color-scheme: dark) { .v3-scheme--system { --v3-bg: #111827; --v3-surface: #182231; --v3-ink: #edf4fa; --v3-muted: #a7b6c4; --v3-line: #2d3a4a; --v3-navy: #0b1220; --v3-shadow: 0 12px 32px rgba(0, 0, 0, .28); } .v3-scheme--system .v3-nav, .v3-scheme--system .v3-card, .v3-scheme--system .v3-rank, .v3-scheme--system .v3-sidecard, .v3-scheme--system .v3-article, .v3-scheme--system .v3-context-card, .v3-scheme--system .v3-footer { background: var(--v3-surface); color: var(--v3-ink); } .v3-scheme--system .v3-nav-links, .v3-scheme--system .v3-nav-logout { color: var(--v3-muted); } .v3-scheme--system .v3-radar-list { background: #dce6e4; color: #18222e; } }
.v3-nav--sticky, .v3-nav--compact { position: sticky; top: 0; z-index: 40; }
.v3-nav--compact { min-height: 58px; box-shadow: 0 6px 20px rgba(24, 34, 46, .08); }
.v3-announcement--dark { background: var(--v3-navy); }
.v3-announcement--soft { background: color-mix(in srgb, var(--v3-secondary, #ef7d32) 18%, white); color: var(--v3-ink); }
.v3-hero--immersive .v3-focus { position: relative; display: block; min-height: 460px; background: #172331; }
.v3-hero--immersive .v3-focus-copy { position: relative; z-index: 2; min-height: 460px; max-width: 760px; }
.v3-hero--immersive .v3-focus-visual { position: absolute; inset: 0; min-height: 100%; }
.v3-hero--immersive .v3-focus-visual::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(10,18,29,.88), rgba(10,18,29,.22)); }
.v3-hero--overlay-none .v3-focus-visual::after { opacity: 0; }
.v3-hero--overlay-light .v3-focus-visual::after { opacity: .42; }
.v3-hero--overlay-medium .v3-focus-visual::after { opacity: .72; }
.v3-hero--overlay-strong .v3-focus-visual::after { opacity: 1; }
.v3-hero--immersive .v3-focus-visual img { min-height: 460px; }
@media (max-width: 680px) { .v3-hero--immersive .v3-focus, .v3-hero--immersive .v3-focus-copy, .v3-hero--immersive .v3-focus-visual img { min-height: 360px; } }

/* V3 console: declared mobile presentation values, applied only below the phone breakpoint. */
@media (max-width: 680px) {
  .v3-focus, .v3-focus-visual, .v3-focus-visual img { min-height: var(--v3-mobile-banner-height); }
  .v3-mobile-hero--disabled { display: none; }
  .v3-mobile-hero--ratio-16_9 .v3-focus-visual,
  .v3-mobile-hero--ratio-16_9 .v3-focus-visual img { aspect-ratio: 16 / 9; }
  .v3-mobile-hero--ratio-4_3 .v3-focus-visual,
  .v3-mobile-hero--ratio-4_3 .v3-focus-visual img { aspect-ratio: 4 / 3; }
  .v3-mobile-hero--ratio-1_1 .v3-focus-visual,
  .v3-mobile-hero--ratio-1_1 .v3-focus-visual img { aspect-ratio: 1 / 1; }
  .v3-mobile-hero--ratio-16_9 .v3-focus-visual,
  .v3-mobile-hero--ratio-4_3 .v3-focus-visual,
  .v3-mobile-hero--ratio-1_1 .v3-focus-visual,
  .v3-mobile-hero--ratio-16_9 .v3-focus-visual img,
  .v3-mobile-hero--ratio-4_3 .v3-focus-visual img,
  .v3-mobile-hero--ratio-1_1 .v3-focus-visual img { min-height: 0; height: auto; }
  .v3-mobile-hero--copy-bottom_center .v3-focus-copy { align-items: center; text-align: center; }
  .v3-mobile-hero--copy-bottom_center .v3-focus-copy p { margin-right: auto; margin-left: auto; }
  .v3-mobile-hero--description-hidden .v3-mobile-hero-description,
  .v3-mobile-hero--cta-hidden .v3-mobile-hero-cta,
  .v3-mobile-hero--context-hidden .v3-hero-side { display: none; }
  .v3-page > .v3-section, .v3-layout-row { margin-bottom: var(--v3-mobile-module-spacing); }
  .v3-mobile-games--columns-1 .v3-library-grid { grid-template-columns: 1fr; }
  .v3-mobile-games--columns-2 .v3-library-grid { grid-template-columns: repeat(var(--v3-mobile-game-columns), minmax(0, 1fr)); }
  .v3-mobile-rank--hidden .v3-rank-hero,
  .v3-mobile-rank--hidden .v3-rank-tabs,
  .v3-mobile-rank--hidden .v3-rank-explore,
  .v3-mobile-rank--hidden .v3-rank-list,
  .v3-mobile-rank--hidden .v3-rank-columns { display: none; }
  .v3-mobile-floating-actions { position: fixed; right: 16px; bottom: calc(80px + env(safe-area-inset-bottom)); z-index: 61; }
  .v3-mobile-floating-actions--left_bottom { right: auto; left: 16px; }
  .v3-mobile-floating-actions--right_middle { bottom: 50%; transform: translateY(50%); }
  .v3-mobile-floating-actions a { display: inline-flex; gap: 6px; min-height: 44px; align-items: center; padding: 0 16px; border-radius: 999px; background: var(--v3-blue); box-shadow: var(--v3-shadow); color: #fff; font-weight: 800; }
}


/* V3 console: fixed mobile navigation built from declared system routes only. */
.v3-mobile-tabs { display: none; }
@media (max-width: 680px) {
  body:has(.v3-mobile-tabs) { padding-bottom: 70px; }
  .v3-mobile-tabs { position: fixed; right: 0; bottom: 0; left: 0; z-index: 60; display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; min-height: 64px; border-top: 1px solid var(--v3-line); background: color-mix(in srgb, var(--v3-surface) 94%, transparent); box-shadow: 0 -8px 24px rgba(24, 34, 46, .08); backdrop-filter: blur(12px); }
  .v3-mobile-tab { display: grid; place-content: center; gap: 2px; min-width: 0; padding: 6px 4px; color: var(--v3-muted); text-align: center; }
  .v3-mobile-tab span { font-size: 21px; line-height: 1; }
  .v3-mobile-tab small { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
  .v3-mobile-tab:hover, .v3-mobile-tab:focus-visible { color: var(--v3-blue); }
}


/* V3 console: fixed discovery widgets use published content only. */
.v3-sidebar-widgets { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; max-width: var(--v3-page-width, 1240px); margin: 0 auto; padding: 0 24px 34px; }
.v3-sidebar-widget { overflow: hidden; border: 1px solid var(--v3-line); border-radius: var(--v3-card-radius, 12px); background: var(--v3-surface); }
.v3-sidebar-widget h2 { margin: 0; padding: 16px 17px 12px; border-bottom: 1px solid var(--v3-line); font-family: Georgia, "Songti SC", serif; font-size: 19px; }
.v3-sidebar-widget-list { display: grid; padding: 4px 17px; }
.v3-sidebar-widget-list a { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 11px 0; border-bottom: 1px solid var(--v3-line); }
.v3-sidebar-widget-list a:last-child { border-bottom: 0; }
.v3-sidebar-widget-list span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v3-sidebar-widget-list b, .v3-sidebar-widget-list small { flex: 0 0 auto; margin-left: auto; color: var(--v3-teal); font-size: 12px; }
@media (max-width: 900px) { .v3-sidebar-widgets { grid-template-columns: 1fr; } }
@media (max-width: 680px) { .v3-sidebar-widgets { padding: 0 16px 26px; gap: 12px; } }


/* V3 console: fixed article and game detail regions are sortable only within their declared whitelists. */
.v3-detail-region, .v3-article-detail-region { min-width: 0; }
.v3-prose { display: flex; flex-direction: column; }
.v3-article-detail-regions { display: flex; flex-direction: column; }
.v3-article-detail-regions--after { max-width: 100%; }
.v3-article-detail-meta { padding-bottom: 3px; letter-spacing: .01em; }
.v3-article-prose h2 { padding-top: .25em; border-top: 1px solid var(--v3-line); }
.v3-article-detail-regions > .v3-article-detail-region:not(:first-child) { max-width: 760px; margin-right: auto; margin-left: auto; width: 100%; }


/* Taxonomy controls are limited to the declared V3 presentation variants. */
.v3-taxonomy--columns-2 .v3-taxonomy-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v3-taxonomy--columns-3 .v3-taxonomy-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v3-taxonomy--columns-4 .v3-taxonomy-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.v3-taxonomy--ratio-3x2 .v3-taxonomy-cover { aspect-ratio: 3 / 2; }
.v3-taxonomy--ratio-16x9 .v3-taxonomy-cover { aspect-ratio: 16 / 9; }
.v3-taxonomy--ratio-1x1 .v3-taxonomy-cover { aspect-ratio: 1 / 1; }
.v3-taxonomy--density-compact .v3-taxonomy-card-body { padding: 11px; }
.v3-taxonomy--density-compact .v3-taxonomy-card h3 { margin: 6px 0 4px; font-size: 16px; }
.v3-taxonomy--density-compact .v3-taxonomy-articles > a { padding: 14px; }
.v3-taxonomy--density-compact .v3-category-item-body { padding: 13px; }
@media (max-width: 680px) {
  .v3-taxonomy--columns-2 .v3-taxonomy-grid,
  .v3-taxonomy--columns-3 .v3-taxonomy-grid,
  .v3-taxonomy--columns-4 .v3-taxonomy-grid { grid-template-columns: 1fr; }
}

/* V3 not-found and shared empty-state guidance. */
.v3-not-found { padding-top: 64px; padding-bottom: 64px; }
.v3-not-found-panel { display: grid; justify-items: center; gap: 12px; padding: clamp(40px, 8vw, 84px) 24px; background: linear-gradient(135deg, #f4f8fa, #edf4f2); }
.v3-not-found-panel h1 { margin: 0; font-family: Georgia, "Songti SC", serif; font-size: clamp(28px, 4vw, 44px); }
.v3-not-found-panel > p:not(.v3-eyebrow) { max-width: 540px; margin: 0; color: var(--v3-muted); line-height: 1.7; }
.v3-not-found-code { color: var(--v3-blue); font: 800 clamp(76px, 15vw, 150px)/.82 Georgia, "Songti SC", serif; letter-spacing: -.08em; }
.v3-not-found-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 12px; }
.v3-not-found-actions .v3-button { margin: 0; }
.v3-not-found-recommendations { margin-top: 42px; }
.v3-empty > h1, .v3-empty > h2 { margin-top: 0; font-family: Georgia, "Songti SC", serif; }
.v3-empty > p { max-width: 560px; margin-right: auto; margin-left: auto; color: var(--v3-muted); line-height: 1.7; }
@media (max-width: 680px) { .v3-not-found { padding-top: 32px; padding-bottom: 38px; } .v3-not-found-actions { width: 100%; } .v3-not-found-actions .v3-button { flex: 1 1 150px; text-align: center; } }

/* V3 Phase 2: declared card variants and deterministic media fallbacks. */
.v3-card-media--fallback { display: block; width: 100%; min-height: 100%; background: linear-gradient(135deg, var(--v3-secondary), var(--v3-navy)); }
.v3-library-cover, .v3-article-list-cover, .v3-topic-list-cover, .v3-rank-cover, .v3-card-cover, .v3-article-cover, .v3-topic-card > div, .v3-search-cover, .v3-taxonomy-cover, .v3-category-cover, .v3-topic-game-card > div, .v3-topic-story-image { position: relative; overflow: hidden; }
.v3-media-state--loading::before, .v3-media-state--error::after { position: absolute; z-index: 1; inset: 0; content: ""; pointer-events: none; }
.v3-media-state--loading::before { background: linear-gradient(90deg, rgba(255,255,255,.08) 25%, rgba(255,255,255,.34) 50%, rgba(255,255,255,.08) 75%), linear-gradient(135deg, var(--v3-secondary), var(--v3-navy)); background-size: 200% 100%, 100% 100%; animation: v3-media-skeleton 1.2s ease-in-out infinite; }
.v3-media-state--error img { visibility: hidden; }
.v3-media-state--error::after { background: linear-gradient(135deg, var(--v3-secondary), var(--v3-navy)); }
@keyframes v3-media-skeleton { to { background-position: -200% 0, 0 0; } }
@media (prefers-reduced-motion: reduce) { .v3-media-state--loading::before { animation: none; } }
.v3-card-media--muted { background: linear-gradient(135deg, #d9e1e4, #b8c4ca); }
.v3-card-title--lines-1, .v3-card-title--lines-2, .v3-card-title--lines-3, .v3-card-excerpt--lines-2, .v3-card-excerpt--lines-3 { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; }
.v3-card-title--lines-1 { -webkit-line-clamp: 1; }
.v3-card-title--lines-2, .v3-card-excerpt--lines-2 { -webkit-line-clamp: 2; }
.v3-card-title--lines-3, .v3-card-excerpt--lines-3 { -webkit-line-clamp: 3; }
.v3-card-excerpt--lines-0 { display: none; }
.v3-card--game-score .v3-library-score { box-shadow: 0 4px 14px rgba(24,44,64,.18); }
.v3-card--game-platform .v3-library-platforms { order: -1; }
.v3-card--article-editorial .v3-article-list-body { padding: 18px; }
.v3-card--article-compact .v3-article-list-meta { margin-top: 9px; }
.v3-card--topic-collection .v3-topic-list-kicker span:last-child { color: var(--v3-teal); font-weight: 800; }
.v3-card--topic-story .v3-topic-list-body { background: linear-gradient(180deg, var(--v3-surface), #f7fafb); }
.v3-card--rank-numbered .v3-rank-number { color: var(--v3-blue); font-size: 18px; font-weight: 900; }
.v3-card--rank-metric .v3-rank-game > b { color: var(--v3-blue); font-size: 16px; }
.v3-card--recommendation-featured { border-color: color-mix(in srgb, var(--v3-secondary) 35%, var(--v3-line)); }
.v3-card--recommendation-balanced { box-shadow: none; }
.v3-library-cover > .v3-card-media--fallback, .v3-article-list-cover > .v3-card-media--fallback, .v3-topic-list-cover > .v3-card-media--fallback, .v3-rank-cover > .v3-card-media--fallback, .v3-card-cover > .v3-card-media--fallback, .v3-article-cover > .v3-card-media--fallback, .v3-topic-card > div > .v3-card-media--fallback, .v3-search-cover > .v3-card-media--fallback, .v3-taxonomy-cover > .v3-card-media--fallback, .v3-category-cover > .v3-card-media--fallback, .v3-topic-game-card > div > .v3-card-media--fallback { height: 100%; }
.v3-card:focus-visible, .v3-article-list-link:focus-visible, .v3-topic-list-link:focus-visible, .v3-rank-game:focus-visible, .v3-topic-card:focus-visible, .v3-article:focus-visible { outline: 3px solid var(--v3-secondary); outline-offset: 3px; }
@media (max-width: 680px) { .v3-card--article-editorial .v3-article-list-body, .v3-card--topic-story .v3-topic-list-body { padding: 13px; } }


/* V3 unified state layer: bounded optional-region fallback. */
.v3-content-fallback { display: grid; gap: 10px; padding: clamp(22px, 4vw, 34px); border: 1px solid var(--v3-line); background: var(--v3-surface); color: var(--v3-muted); }
.v3-content-fallback h2, .v3-content-fallback p { margin: 0; }
.v3-content-fallback h2 { color: var(--v3-ink); font-family: Georgia, "Songti SC", serif; font-size: clamp(20px, 2.6vw, 28px); }
.v3-content-fallback .v3-section-link { justify-self: start; }
@media (max-width: 680px) { .v3-content-fallback { padding: 20px; } .v3-content-fallback .v3-section-link { width: 100%; } }

/* V3 Phase 2: gentle error-media icon. */
.v3-media-state--error::after {
  background:
    linear-gradient(90deg, rgba(255,255,255,.48), rgba(255,255,255,.48)) calc(50% - 22px) calc(50% - 16px) / 44px 2px no-repeat,
    linear-gradient(90deg, rgba(255,255,255,.48), rgba(255,255,255,.48)) calc(50% - 22px) calc(50% + 16px) / 44px 2px no-repeat,
    linear-gradient(rgba(255,255,255,.48), rgba(255,255,255,.48)) calc(50% - 22px) 50% / 2px 32px no-repeat,
    linear-gradient(rgba(255,255,255,.48), rgba(255,255,255,.48)) calc(50% + 20px) 50% / 2px 32px no-repeat,
    linear-gradient(135deg, transparent 48%, rgba(255,255,255,.38) 49% 53%, transparent 54%) calc(50% - 16px) calc(50% + 2px) / 25px 16px no-repeat,
    linear-gradient(45deg, transparent 48%, rgba(255,255,255,.38) 49% 53%, transparent 54%) calc(50% + 1px) calc(50% + 2px) / 20px 16px no-repeat,
    linear-gradient(135deg, var(--v3-secondary), var(--v3-navy));
}


/* V3 Phase 2: mobile media preservation. */
@media (max-width: 680px) {
  .v3-library-cover,
  .v3-article-list-cover,
  .v3-search-cover,
  .v3-taxonomy-cover,
  .v3-category-cover,
  .v3-card-cover,
  .v3-article-cover,
  .v3-topic-card > div,
  .v3-topic-game-card > div,
  .v3-topic-story-image {
    min-height: 132px;
  }
  .v3-topic-list-cover {
    min-height: 136px;
  }
  .v3-rank-cover {
    min-height: 78px;
  }
  .v3-library-cover img,
  .v3-article-list-cover img,
  .v3-topic-list-cover img,
  .v3-search-cover img,
  .v3-taxonomy-cover img,
  .v3-category-cover img,
  .v3-rank-cover img,
  .v3-card-cover img,
  .v3-article-cover img,
  .v3-topic-card img,
  .v3-topic-game-card img,
  .v3-topic-story-image img {
    object-fit: cover;
  }
}

/* V3 Phase 2: shared restrained interaction for existing content cards. */
.v3-card,
.v3-library-card,
.v3-search-card,
.v3-article-list-card,
.v3-topic-list-card,
.v3-taxonomy-card,
.v3-category-item,
.v3-rank-game,
.v3-topic-card,
.v3-article,
.v3-rank-row {
  transition: transform .18s ease, box-shadow .18s ease;
}
.v3-card:hover,
.v3-library-card:hover,
.v3-search-card:hover,
.v3-article-list-card:hover,
.v3-topic-list-card:hover,
.v3-taxonomy-card:hover,
.v3-category-item:hover,
.v3-rank-game:hover,
.v3-topic-card:hover,
.v3-article:hover,
.v3-rank-row:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 18px rgba(16, 37, 51, .10);
}
.v3-card:focus-visible,
.v3-library-card-link:focus-visible,
.v3-search-card-link:focus-visible,
.v3-article-list-link:focus-visible,
.v3-topic-list-link:focus-visible,
.v3-taxonomy-card > a:focus-visible,
.v3-category-item-link:focus-visible,
.v3-rank-game:focus-visible,
.v3-topic-card:focus-visible,
.v3-article:focus-visible,
.v3-rank-row:focus-visible {
  outline: 3px solid var(--v3-secondary);
  outline-offset: 3px;
}
.v3-card:active,
.v3-library-card:active,
.v3-search-card:active,
.v3-article-list-card:active,
.v3-topic-list-card:active,
.v3-taxonomy-card:active,
.v3-category-item:active,
.v3-library-card-link:active,
.v3-search-card-link:active,
.v3-article-list-link:active,
.v3-topic-list-link:active,
.v3-taxonomy-card > a:active,
.v3-category-item-link:active,
.v3-rank-game:active,
.v3-topic-card:active,
.v3-article:active,
.v3-rank-row:active {
  transform: translateY(0);
  box-shadow: none;
}
@media (prefers-reduced-motion: reduce) {
  .v3-card,
  .v3-library-card,
  .v3-search-card,
  .v3-article-list-card,
  .v3-topic-list-card,
  .v3-taxonomy-card,
  .v3-category-item,
  .v3-rank-game,
  .v3-topic-card,
  .v3-article,
  .v3-rank-row {
    transition-duration: .01ms !important;
  }
  .v3-card:hover,
  .v3-library-card:hover,
  .v3-search-card:hover,
  .v3-article-list-card:hover,
  .v3-topic-list-card:hover,
  .v3-taxonomy-card:hover,
  .v3-category-item:hover,
  .v3-rank-game:hover,
  .v3-topic-card:hover,
  .v3-article:hover,
  .v3-rank-row:hover,
  .v3-card:active,
  .v3-library-card:active,
  .v3-search-card:active,
  .v3-article-list-card:active,
  .v3-topic-list-card:active,
  .v3-taxonomy-card:active,
  .v3-category-item:active,
  .v3-library-card-link:active,
  .v3-search-card-link:active,
  .v3-article-list-link:active,
  .v3-topic-list-link:active,
  .v3-taxonomy-card > a:active,
  .v3-category-item-link:active,
  .v3-rank-game:active,
  .v3-topic-card:active,
  .v3-article:active,
  .v3-rank-row:active {
    transform: none !important;
  }
}

/* V3 P1: article reading mode is a presentation-only enhancement. */
.v3-reading-mode-toggle { margin-top: 20px; padding: 9px 13px; border: 1px solid var(--v3-line); border-radius: 999px; background: var(--v3-surface); color: var(--v3-ink); font: inherit; font-size: 13px; font-weight: 750; cursor: pointer; }
.v3-reading-mode-toggle:hover { border-color: var(--v3-blue); color: var(--v3-blue); }
.v3-reading-mode-toggle:focus-visible, .v3-reading-action-rail button:focus-visible, .v3-reading-toc a:focus-visible { outline: 3px solid var(--v3-secondary); outline-offset: 3px; }
.v3-reading-shell { position: relative; }
.v3-reading-progress { position: fixed; top: 0; right: 0; left: 0; z-index: 72; height: 3px; background: transparent; }
.v3-reading-progress span { display: block; width: var(--v3-reading-progress, 0%); height: 100%; background: var(--v3-secondary); transition: width .16s linear; }
.v3-reading-action-rail { position: fixed; top: 50%; right: max(18px, calc((100vw - 1320px) / 2)); z-index: 65; display: grid; gap: 8px; width: 112px; transform: translateY(-50%); }
.v3-reading-action-rail button { min-height: 38px; padding: 7px 9px; border: 1px solid var(--v3-line); border-radius: 9px; background: var(--v3-surface); color: var(--v3-ink); font: inherit; font-size: 12px; font-weight: 750; cursor: pointer; box-shadow: 0 8px 22px rgba(16, 37, 51, .12); }
.v3-reading-action-rail button:hover { border-color: var(--v3-blue); color: var(--v3-blue); }
.v3-reading-back-to-top { color: var(--v3-blue) !important; }
.v3-reading-toc { position: fixed; top: calc(50% + 98px); right: max(18px, calc((100vw - 1320px) / 2)); z-index: 64; width: 236px; max-height: 38vh; overflow: auto; padding: 14px; border: 1px solid var(--v3-line); border-radius: 11px; background: var(--v3-surface); box-shadow: 0 14px 32px rgba(16, 37, 51, .16); }
.v3-reading-toc:not(.is-open) { display: none; }
.v3-reading-toc ol { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.v3-reading-toc a { display: block; color: var(--v3-muted); font-size: 13px; line-height: 1.45; }
.v3-reading-toc a:hover { color: var(--v3-blue); }
.v3-reading-toc-level-3 { padding-left: 13px; }
.v3-reading-shell.is-reading .v3-reading-prose-surface { max-width: 760px; margin: 0 auto; padding: clamp(24px, 4vw, 54px); border: 1px solid var(--v3-line); border-radius: 14px; }
.v3-reading-shell.is-reading .v3-article-prose { max-width: 650px; font-size: 18px; line-height: 2; }
.v3-reading-shell.is-reading .v3-article-prose h2, .v3-reading-shell.is-reading .v3-article-prose h3 { scroll-margin-top: 84px; }
.v3-reading-shell.is-reading .v3-article-detail-regions > .v3-article-detail-region:not(:first-child) { max-width: 650px; }
.v3-reading-shell.is-reading .v3-content-discovery, .v3-reading-shell.is-reading .v3-article-nav, .v3-reading-shell.is-reading .v3-article-related { margin-top: 44px; }
.v3-article-detail-page[data-v3-reading-surface="paper"] .v3-reading-shell.is-reading .v3-reading-prose-surface { background: #fbf7ed; color: #2e302e; }
.v3-article-detail-page[data-v3-reading-surface="soft"] .v3-reading-shell.is-reading .v3-reading-prose-surface { background: var(--v3-surface); }
.v3-article-detail-page[data-v3-reading-surface="dark"] .v3-reading-shell.is-reading .v3-reading-prose-surface { background: #182231; color: #edf4fa; border-color: #314154; }
.v3-article-detail-page[data-v3-reading-surface="dark"] .v3-reading-shell.is-reading .v3-article-prose, .v3-article-detail-page[data-v3-reading-surface="dark"] .v3-reading-shell.is-reading .v3-article-tags { color: #d8e2eb; }
.v3-article-detail-page[data-v3-reading-font-scale="large"] .v3-reading-shell.is-reading .v3-article-prose { font-size: 20px; }
.v3-article-detail-page[data-v3-reading-line-height="spacious"] .v3-reading-shell.is-reading .v3-article-prose { line-height: 2.18; }
.v3-reading-mode-active .v3-article-breadcrumb, .v3-reading-mode-active .v3-article-detail-head, .v3-reading-mode-active .v3-article-detail-cover { opacity: .62; }
@media (max-width: 900px) { .v3-reading-action-rail { right: 14px; width: 98px; } .v3-reading-toc { right: 14px; } }
@media (max-width: 680px) { .v3-reading-shell.is-reading .v3-reading-prose-surface { padding: 24px 18px 88px; border-radius: 0; border-right: 0; border-left: 0; } .v3-reading-shell.is-reading .v3-article-prose { font-size: 17px; line-height: 1.95; } .v3-article-detail-page[data-v3-reading-font-scale="large"] .v3-reading-shell.is-reading .v3-article-prose { font-size: 18px; } .v3-reading-action-rail { top: auto; right: 0; bottom: 0; left: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; width: auto; transform: none; border-top: 1px solid var(--v3-line); background: color-mix(in srgb, var(--v3-surface) 94%, transparent); box-shadow: 0 -8px 24px rgba(16, 37, 51, .12); backdrop-filter: blur(10px); } .v3-reading-action-rail button { min-height: 58px; border: 0; border-radius: 0; background: transparent; box-shadow: none; } .v3-reading-toc { top: auto; right: 12px; bottom: 68px; left: 12px; width: auto; max-height: 45vh; } }
@media (prefers-reduced-motion: reduce) { .v3-reading-progress span { transition: none; } }

/* Administrator preview-only accessibility diagnostic; public theme preferences are unchanged. */
body.v3-preview-a11y { --v3-bg: #ffffff; --v3-surface: #ffffff; --v3-ink: #000000; --v3-muted: #1a1a1a; --v3-line: #000000; --v3-blue: #0037b8; --v3-secondary: #000000; --v3-preview-focus-ring: 3px; }
body.v3-preview-a11y *, body.v3-preview-a11y *::before, body.v3-preview-a11y *::after { animation-name: none !important; transition: none !important; scroll-behavior: auto !important; }
body.v3-preview-a11y a:focus-visible, body.v3-preview-a11y button:focus-visible, body.v3-preview-a11y summary:focus-visible, body.v3-preview-a11y input:focus-visible { outline: 3px solid #000 !important; outline-offset: 3px; }
body.v3-preview-a11y .v3-focus, body.v3-preview-a11y .v3-radar, body.v3-preview-a11y .v3-footer { background: #ffffff; color: #000000; border: 2px solid #000000; }
body.v3-preview-a11y .v3-focus p, body.v3-preview-a11y .v3-radar p, body.v3-preview-a11y .v3-footer, body.v3-preview-a11y .v3-footer a { color: #000000; }


/* Request-scoped visual previews. These rules are presentation-only and never change CMS data. */
.v3-visual-switcher { position: sticky; z-index: 80; top: 0; display: flex; align-items: center; gap: 13px; min-height: 42px; padding: 7px 24px; border-bottom: 1px solid var(--v3-line); background: color-mix(in srgb, var(--v3-surface) 92%, transparent); color: var(--v3-muted); font-size: 12px; backdrop-filter: blur(12px); }
.v3-visual-switcher > span { color: var(--v3-ink); font-weight: 850; }
.v3-visual-switcher > div { display: flex; flex: 1; gap: 7px; overflow-x: auto; }
.v3-visual-switcher a { flex: 0 0 auto; padding: 4px 9px; border: 1px solid var(--v3-line); border-radius: 999px; color: inherit; }
.v3-visual-switcher a:hover, .v3-visual-switcher a:focus-visible, .v3-visual-switcher a.is-active { border-color: var(--v3-blue); color: var(--v3-blue); }
.v3-visual-switcher-exit { margin-left: auto; font-weight: 750; }
.v3-visual-preview .v3-nav { box-shadow: 0 10px 24px color-mix(in srgb, var(--v3-navy) 10%, transparent); }
.v3-visual-preview .v3-focus, .v3-visual-preview .v3-library-hero, .v3-visual-preview .v3-article-list-hero, .v3-visual-preview .v3-search-hero, .v3-visual-preview .v3-rank-hero, .v3-visual-preview .v3-topic-list-hero, .v3-visual-preview .v3-taxonomy-hero, .v3-visual-preview .v3-favorites-hero { border-radius: calc(var(--v3-card-radius) + 6px); }

/* 1. Editorial media: editorial hierarchy, warm dark surfaces and magazine headlines. */
.v3-visual-preview--editorial { --v3-bg: #101722; --v3-surface: #182333; --v3-ink: #f5efe6; --v3-muted: #aab7c8; --v3-line: #2e4157; --v3-blue: #ff8d5b; --v3-secondary: #f2c16d; --v3-navy: #0a1018; --v3-shadow: 0 18px 46px rgba(0,0,0,.28); }
.v3-visual-preview--editorial .v3-nav, .v3-visual-preview--editorial .v3-card, .v3-visual-preview--editorial .v3-rank, .v3-visual-preview--editorial .v3-article, .v3-visual-preview--editorial .v3-footer, .v3-visual-preview--editorial .v3-context-card, .v3-visual-preview--editorial .v3-sidebar-widget { background: var(--v3-surface); color: var(--v3-ink); }
.v3-visual-preview--editorial .v3-focus { background: linear-gradient(135deg,#14253a 0%,#1e3149 45%,#6b4034 100%); }
.v3-visual-preview--editorial h1, .v3-visual-preview--editorial h2, .v3-visual-preview--editorial h3 { font-family: Georgia,"Songti SC",serif; letter-spacing: -.025em; }
.v3-visual-preview--editorial .v3-section-head { border-bottom: 1px solid var(--v3-line); padding-bottom: 14px; }

/* 2. Guide library: quiet paper, clear borders and information-dense controls. */
.v3-visual-preview--guide { --v3-bg: #f2f5f8; --v3-surface: #ffffff; --v3-ink: #1c2938; --v3-muted: #64748b; --v3-line: #d9e2ec; --v3-blue: #1769aa; --v3-secondary: #319c8e; --v3-navy: #17324a; --v3-shadow: 0 8px 22px rgba(28,41,56,.08); }
.v3-visual-preview--guide .v3-nav { border-bottom-width: 2px; }
.v3-visual-preview--guide .v3-library-hero, .v3-visual-preview--guide .v3-article-list-hero, .v3-visual-preview--guide .v3-search-hero, .v3-visual-preview--guide .v3-rank-hero, .v3-visual-preview--guide .v3-topic-list-hero, .v3-visual-preview--guide .v3-taxonomy-hero, .v3-visual-preview--guide .v3-favorites-hero { background: linear-gradient(135deg,#e3f1f4,#fdfefe); color: var(--v3-ink); border: 1px solid #cbdce4; }
.v3-visual-preview--guide .v3-focus { background: linear-gradient(135deg,#1d455d,#327f93); }
.v3-visual-preview--guide .v3-card, .v3-visual-preview--guide .v3-article-list-card, .v3-visual-preview--guide .v3-search-card, .v3-visual-preview--guide .v3-taxonomy-card, .v3-visual-preview--guide .v3-topic-list-card { border-radius: 10px; box-shadow: none; }
.v3-visual-preview--guide .v3-library-filters, .v3-visual-preview--guide .v3-article-filters, .v3-visual-preview--guide .v3-search-toolbar { padding: 14px; border: 1px solid var(--v3-line); background: var(--v3-surface); }

/* 3. Radar: electric dark dashboard for news velocity, ranks and download calls to action. */
.v3-visual-preview--radar { --v3-bg: #07111f; --v3-surface: #0d1a2c; --v3-ink: #e9fbff; --v3-muted: #98b2c7; --v3-line: #1e4260; --v3-blue: #3ab5ff; --v3-secondary: #62efca; --v3-navy: #050b15; --v3-shadow: 0 18px 44px rgba(0,0,0,.4); }
.v3-visual-preview--radar .v3-nav, .v3-visual-preview--radar .v3-card, .v3-visual-preview--radar .v3-rank, .v3-visual-preview--radar .v3-article, .v3-visual-preview--radar .v3-footer, .v3-visual-preview--radar .v3-context-card, .v3-visual-preview--radar .v3-sidebar-widget { background: var(--v3-surface); color: var(--v3-ink); }
.v3-visual-preview--radar .v3-focus, .v3-visual-preview--radar .v3-library-hero, .v3-visual-preview--radar .v3-article-list-hero, .v3-visual-preview--radar .v3-search-hero, .v3-visual-preview--radar .v3-rank-hero, .v3-visual-preview--radar .v3-topic-list-hero, .v3-visual-preview--radar .v3-taxonomy-hero, .v3-visual-preview--radar .v3-favorites-hero { background: radial-gradient(circle at 80% 0,#1f668b 0,transparent 34%),linear-gradient(135deg,#0c1b31,#102b42); }
.v3-visual-preview--radar .v3-rank-number, .v3-visual-preview--radar .v3-score, .v3-visual-preview--radar .v3-detail-score { color: var(--v3-secondary); }
.v3-visual-preview--radar .v3-button { border-radius: 8px; background: var(--v3-secondary); color: #052119; }
.v3-visual-preview--radar .v3-card, .v3-visual-preview--radar .v3-rank { box-shadow: inset 0 1px 0 rgba(98,239,202,.14),var(--v3-shadow); }

/* 4. Living room: cinematic large-cover browsing with soft contrast. */
.v3-visual-preview--living-room { --v3-bg: #151619; --v3-surface: #23252a; --v3-ink: #f7f7f4; --v3-muted: #b7b9bf; --v3-line: #3a3d45; --v3-blue: #b8d7ff; --v3-secondary: #f5c66d; --v3-navy: #0d0e10; --v3-shadow: 0 22px 50px rgba(0,0,0,.35); }
.v3-visual-preview--living-room .v3-nav, .v3-visual-preview--living-room .v3-card, .v3-visual-preview--living-room .v3-rank, .v3-visual-preview--living-room .v3-article, .v3-visual-preview--living-room .v3-footer, .v3-visual-preview--living-room .v3-context-card, .v3-visual-preview--living-room .v3-sidebar-widget { background: var(--v3-surface); color: var(--v3-ink); }
.v3-visual-preview--living-room .v3-focus { grid-template-columns: 1fr; min-height: 520px; background: linear-gradient(90deg,rgba(9,10,12,.96),rgba(9,10,12,.24)),var(--v3-navy); }
.v3-visual-preview--living-room .v3-focus-copy { z-index: 2; max-width: 56%; background: transparent; }
.v3-visual-preview--living-room .v3-focus-visual { grid-row: 1; grid-column: 1; }
.v3-visual-preview--living-room .v3-focus-visual img { opacity: .78; }
.v3-visual-preview--living-room .v3-grid, .v3-visual-preview--living-room .v3-library-grid { gap: 22px; }
.v3-visual-preview--living-room .v3-card, .v3-visual-preview--living-room .v3-library-card { border-radius: 18px; overflow: hidden; }
@media (max-width: 680px) { .v3-visual-switcher { top: 0; padding: 7px 14px; } .v3-visual-switcher > span { display: none; } .v3-visual-switcher-exit { font-size: 11px; } .v3-visual-preview--living-room .v3-focus { min-height: 430px; } .v3-visual-preview--living-room .v3-focus-copy { max-width: 100%; background: linear-gradient(0deg,rgba(9,10,12,.98),rgba(9,10,12,.25)); } }


/* Four request-scoped layout systems. They rearrange existing public regions only. */
.v3-visual-preview { --v3-preview-gap: clamp(16px, 2.2vw, 30px); }
.v3-visual-preview .v3-page { max-width: min(1440px, calc(100vw - 48px)); }
.v3-visual-preview .v3-section, .v3-visual-preview .v3-taxonomy-section { margin-top: var(--v3-preview-gap); margin-bottom: var(--v3-preview-gap); }

/* Editorial: magazine front page, feature wells, and a generous reading column. */
.v3-preview-layout--editorial .v3-home { display: grid; gap: var(--v3-preview-gap); }
.v3-preview-layout--editorial .v3-home .v3-layout-row--hero { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(300px, .8fr); gap: var(--v3-preview-gap); }
.v3-preview-layout--editorial .v3-home .v3-layout-row--hero .v3-layout-slot--full { display: contents; }
.v3-preview-layout--editorial .v3-home .v3-hero { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr); min-height: 520px; }
.v3-preview-layout--editorial .v3-home .v3-focus { min-height: 520px; border-radius: 0; }
.v3-preview-layout--editorial .v3-home .v3-hero-side { display: grid; grid-template-columns: 1fr; align-items: stretch; gap: var(--v3-preview-gap); }
.v3-preview-layout--editorial .v3-home .v3-hero-story { min-height: 0; }
.v3-preview-layout--editorial .v3-home .v3-layout-row--main_sidebar { grid-template-columns: minmax(0, 1.8fr) minmax(260px, .7fr); align-items: start; }
.v3-preview-layout--editorial .v3-home .v3-layout-row--two_column { grid-template-columns: minmax(0, 1.45fr) minmax(300px, 1fr); align-items: start; }
.v3-preview-layout--editorial .v3-home .v3-discovery .v3-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v3-preview-layout--editorial .v3-home .v3-rank-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v3-preview-layout--editorial .v3-home .v3-topic-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v3-preview-layout--editorial .v3-article-list-page { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .36fr); gap: var(--v3-preview-gap); align-items: start; }
.v3-preview-layout--editorial .v3-article-list-hero, .v3-preview-layout--editorial .v3-article-filters, .v3-preview-layout--editorial .v3-article-list-grid, .v3-preview-layout--editorial .v3-article-pagination { grid-column: 1; }
.v3-preview-layout--editorial .v3-article-discovery { grid-column: 2; grid-row: 1 / span 4; position: sticky; top: 92px; }
.v3-preview-layout--editorial .v3-article-list-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v3-preview-layout--editorial .v3-article-detail { display: grid; grid-template-columns: minmax(0, 760px) minmax(250px, 320px); gap: clamp(28px, 5vw, 86px); align-items: start; }
.v3-preview-layout--editorial .v3-article-detail-head, .v3-preview-layout--editorial .v3-reading-shell { grid-column: 1; }
.v3-preview-layout--editorial .v3-article-detail > .v3-article-discovery { grid-column: 2; grid-row: 1 / span 2; position: sticky; top: 92px; }
.v3-preview-layout--editorial .v3-article-detail-cover { grid-column: 1 / -1; }
.v3-preview-layout--editorial .v3-topic-detail-page .v3-topic-detail-hero { min-height: 500px; border-radius: 0; }
.v3-preview-layout--editorial .v3-not-found { display: grid; grid-template-columns: minmax(0, .9fr) minmax(360px, 1.1fr); align-items: center; min-height: 58vh; }
.v3-preview-layout--editorial .v3-not-found-panel { text-align: left; }
.v3-preview-layout--editorial .v3-not-found-recommendations { margin: 0; }

/* Guide: explicit side navigation/filter rail and compact, information-forward result fields. */
.v3-preview-layout--guide .v3-library-page, .v3-preview-layout--guide .v3-article-list-page, .v3-preview-layout--guide .v3-search-page, .v3-preview-layout--guide .v3-category-page, .v3-preview-layout--guide .v3-tag-page, .v3-preview-layout--guide .v3-topic-list-page { display: grid; grid-template-columns: minmax(190px, .33fr) minmax(0, 1fr); gap: var(--v3-preview-gap); align-items: start; }
.v3-preview-layout--guide .v3-library-hero, .v3-preview-layout--guide .v3-article-list-hero, .v3-preview-layout--guide .v3-search-hero, .v3-preview-layout--guide .v3-taxonomy-hero, .v3-preview-layout--guide .v3-topic-list-hero { grid-column: 1 / -1; border-radius: 12px; }
.v3-preview-layout--guide .v3-library-filters, .v3-preview-layout--guide .v3-article-filters, .v3-preview-layout--guide .v3-search-tabs, .v3-preview-layout--guide .v3-category-controls, .v3-preview-layout--guide .v3-tag-cloud, .v3-preview-layout--guide .v3-topic-filters { grid-column: 1; position: sticky; top: 92px; display: grid; gap: 8px; padding: 14px; border: 1px solid var(--v3-line); border-radius: 12px; background: var(--v3-surface); }
.v3-preview-layout--guide .v3-library-filter-summary, .v3-preview-layout--guide .v3-library-grid, .v3-preview-layout--guide .v3-library-pagination, .v3-preview-layout--guide .v3-library-discovery, .v3-preview-layout--guide .v3-article-list-grid, .v3-preview-layout--guide .v3-article-pagination, .v3-preview-layout--guide .v3-article-discovery, .v3-preview-layout--guide .v3-search-toolbar, .v3-preview-layout--guide .v3-search-results, .v3-preview-layout--guide .v3-search-pagination, .v3-preview-layout--guide .v3-search-related, .v3-preview-layout--guide .v3-category-list, .v3-preview-layout--guide .v3-category-pagination, .v3-preview-layout--guide .v3-taxonomy-section, .v3-preview-layout--guide .v3-topic-list-grid, .v3-preview-layout--guide .v3-topic-discovery { grid-column: 2; }
.v3-preview-layout--guide .v3-library-grid, .v3-preview-layout--guide .v3-article-list-grid, .v3-preview-layout--guide .v3-search-grid, .v3-preview-layout--guide .v3-category-list, .v3-preview-layout--guide .v3-taxonomy-grid, .v3-preview-layout--guide .v3-topic-list-grid { grid-template-columns: 1fr; }
.v3-preview-layout--guide .v3-library-card-link, .v3-preview-layout--guide .v3-article-list-link, .v3-preview-layout--guide .v3-search-card-link, .v3-preview-layout--guide .v3-category-item-link, .v3-preview-layout--guide .v3-topic-list-link { display: grid; grid-template-columns: 180px minmax(0, 1fr); min-height: 130px; }
.v3-preview-layout--guide .v3-library-cover, .v3-preview-layout--guide .v3-article-list-cover, .v3-preview-layout--guide .v3-search-cover, .v3-preview-layout--guide .v3-category-cover, .v3-preview-layout--guide .v3-topic-list-cover { aspect-ratio: auto; min-height: 100%; }
.v3-preview-layout--guide .v3-detail-layout { grid-template-columns: minmax(0, 1fr) minmax(280px, .36fr); align-items: start; }
.v3-preview-layout--guide .v3-detail-layout > div { display: contents; }
.v3-preview-layout--guide .v3-detail-hero { grid-column: 1; display: grid; grid-template-columns: 240px minmax(0, 1fr); }
.v3-preview-layout--guide .v3-prose { grid-column: 1; max-width: 820px; }
.v3-preview-layout--guide .v3-facts-panel { grid-column: 2; grid-row: 1 / span 3; position: sticky; top: 92px; }
.v3-preview-layout--guide .v3-article-detail-page { max-width: 1180px; }
.v3-preview-layout--guide .v3-article-detail { display: grid; grid-template-columns: 210px minmax(0, 760px); gap: var(--v3-preview-gap); }
.v3-preview-layout--guide .v3-article-detail-head, .v3-preview-layout--guide .v3-reading-shell { grid-column: 2; }
.v3-preview-layout--guide .v3-article-detail > .v3-article-discovery { grid-column: 1; grid-row: 1 / span 2; position: sticky; top: 92px; }
.v3-preview-layout--guide .v3-article-detail-cover { grid-column: 2; }
.v3-preview-layout--guide .v3-favorites-page { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: var(--v3-preview-gap); }
.v3-preview-layout--guide .v3-favorites-hero, .v3-preview-layout--guide .v3-activity-grid, .v3-preview-layout--guide .v3-account-actions { grid-column: 1; }
.v3-preview-layout--guide .v3-favorites-grid, .v3-preview-layout--guide .v3-favorites-page > .v3-empty { grid-column: 2; grid-row: 1 / span 4; }

/* Radar: dashboard hierarchy, telemetry side panels and dense live-data list formatting. */
.v3-preview-layout--radar .v3-home { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(300px, .7fr); gap: var(--v3-preview-gap); }
.v3-preview-layout--radar .v3-home .v3-layout-row--hero, .v3-preview-layout--radar .v3-home .v3-layout-row--main_sidebar, .v3-preview-layout--radar .v3-home .v3-layout-row--two_column, .v3-preview-layout--radar .v3-home .v3-layout-row--full { display: contents; }
.v3-preview-layout--radar .v3-home .v3-hero { grid-column: 1; }
.v3-preview-layout--radar .v3-home .v3-radar { grid-column: 2; grid-row: 1 / span 2; min-height: 100%; display: grid; grid-template-columns: 1fr; }
.v3-preview-layout--radar .v3-home .v3-discovery, .v3-preview-layout--radar .v3-home .v3-rank-columns, .v3-preview-layout--radar .v3-home .v3-topic-grid, .v3-preview-layout--radar .v3-home .v3-columns { grid-column: 1 / -1; }
.v3-preview-layout--radar .v3-home .v3-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.v3-preview-layout--radar .v3-rank-page { display: grid; grid-template-columns: minmax(0, 1fr) minmax(270px, .35fr); gap: var(--v3-preview-gap); }
.v3-preview-layout--radar .v3-rank-hero, .v3-preview-layout--radar .v3-rank-tabs, .v3-preview-layout--radar .v3-rank-list { grid-column: 1; }
.v3-preview-layout--radar .v3-rank-explore { grid-column: 2; grid-row: 1 / span 3; position: sticky; top: 92px; display: grid; align-items: start; gap: 13px; }
.v3-preview-layout--radar .v3-rank-game { grid-template-columns: 62px 100px minmax(0, 1fr) auto; }
.v3-preview-layout--radar .v3-rank-number { align-self: center; font-size: 30px; }
.v3-preview-layout--radar .v3-detail-layout { grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr); gap: var(--v3-preview-gap); }
.v3-preview-layout--radar .v3-detail-layout > div { display: contents; }
.v3-preview-layout--radar .v3-detail-hero { grid-column: 1; min-height: 100%; }
.v3-preview-layout--radar .v3-facts-panel { grid-column: 2; grid-row: 1; }
.v3-preview-layout--radar .v3-prose { grid-column: 1; }
.v3-preview-layout--radar .v3-topic-detail-page { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); gap: var(--v3-preview-gap); }
.v3-preview-layout--radar .v3-topic-detail-hero, .v3-preview-layout--radar .v3-topic-games, .v3-preview-layout--radar .v3-topic-story { grid-column: 1; }
.v3-preview-layout--radar .v3-topic-discovery { grid-column: 2; grid-row: 1 / span 3; position: sticky; top: 92px; align-self: start; }
.v3-preview-layout--radar .v3-search-page { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: var(--v3-preview-gap); }
.v3-preview-layout--radar .v3-search-hero, .v3-preview-layout--radar .v3-search-tabs, .v3-preview-layout--radar .v3-search-toolbar, .v3-preview-layout--radar .v3-search-results { grid-column: 1; }
.v3-preview-layout--radar .v3-search-related { grid-column: 2; grid-row: 1 / span 4; position: sticky; top: 92px; }
.v3-preview-layout--radar .v3-search-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* Living room: cinematic lead image plus horizontal browse rails instead of vertical catalog grids. */
.v3-preview-layout--living-room .v3-home { max-width: none; padding-right: 0; padding-left: 0; }
.v3-preview-layout--living-room .v3-home .v3-layout-row { padding-right: max(24px, calc((100vw - var(--v3-page-width)) / 2)); padding-left: max(24px, calc((100vw - var(--v3-page-width)) / 2)); }
.v3-preview-layout--living-room .v3-home .v3-layout-row--hero { padding-right: 0; padding-left: 0; }
.v3-preview-layout--living-room .v3-home .v3-hero { min-height: min(72vh, 720px); border-radius: 0; }
.v3-preview-layout--living-room .v3-home .v3-focus { min-height: min(72vh, 720px); }
.v3-preview-layout--living-room .v3-home .v3-focus-copy { align-self: end; padding-bottom: clamp(44px, 8vw, 108px); }
.v3-preview-layout--living-room .v3-home .v3-hero-side { position: absolute; z-index: 3; right: max(24px, calc((100vw - var(--v3-page-width)) / 2)); bottom: 32px; width: min(340px, 28vw); }
.v3-preview-layout--living-room .v3-home .v3-layout-row--main_sidebar, .v3-preview-layout--living-room .v3-home .v3-layout-row--two_column { display: block; }
.v3-preview-layout--living-room .v3-home .v3-radar { margin-top: var(--v3-preview-gap); }
.v3-preview-layout--living-room .v3-grid, .v3-preview-layout--living-room .v3-library-grid, .v3-preview-layout--living-room .v3-article-list-grid, .v3-preview-layout--living-room .v3-topic-list-grid, .v3-preview-layout--living-room .v3-taxonomy-grid, .v3-preview-layout--living-room .v3-topic-games-grid, .v3-preview-layout--living-room .v3-favorites-grid { display: flex; gap: 18px; overflow-x: auto; padding: 4px 2px 20px; scroll-snap-type: x mandatory; }
.v3-preview-layout--living-room .v3-card, .v3-preview-layout--living-room .v3-library-card, .v3-preview-layout--living-room .v3-article-list-card, .v3-preview-layout--living-room .v3-topic-list-card, .v3-preview-layout--living-room .v3-taxonomy-card, .v3-preview-layout--living-room .v3-topic-game-card, .v3-preview-layout--living-room .v3-favorite-card { flex: 0 0 clamp(240px, 23vw, 330px); scroll-snap-align: start; }
.v3-preview-layout--living-room .v3-library-page, .v3-preview-layout--living-room .v3-article-list-page, .v3-preview-layout--living-room .v3-search-page, .v3-preview-layout--living-room .v3-topic-list-page, .v3-preview-layout--living-room .v3-category-page, .v3-preview-layout--living-room .v3-tag-page { max-width: none; padding-right: max(24px, calc((100vw - var(--v3-page-width)) / 2)); padding-left: max(24px, calc((100vw - var(--v3-page-width)) / 2)); }
.v3-preview-layout--living-room .v3-library-hero, .v3-preview-layout--living-room .v3-article-list-hero, .v3-preview-layout--living-room .v3-search-hero, .v3-preview-layout--living-room .v3-topic-list-hero, .v3-preview-layout--living-room .v3-taxonomy-hero { min-height: 320px; display: grid; align-items: end; }
.v3-preview-layout--living-room .v3-library-filters, .v3-preview-layout--living-room .v3-article-filters, .v3-preview-layout--living-room .v3-search-tabs, .v3-preview-layout--living-room .v3-topic-filters, .v3-preview-layout--living-room .v3-category-controls { display: flex; gap: 8px; overflow-x: auto; white-space: nowrap; }
.v3-preview-layout--living-room .v3-detail-layout { display: block; max-width: none; }
.v3-preview-layout--living-room .v3-detail-hero { min-height: min(72vh, 720px); border-radius: 0; grid-template-columns: 1fr; }
.v3-preview-layout--living-room .v3-detail-primary { grid-row: 1; grid-column: 1; }
.v3-preview-layout--living-room .v3-detail-copy { z-index: 2; grid-row: 1; grid-column: 1; align-self: end; max-width: min(760px, 78vw); margin: 0; background: linear-gradient(0deg,rgba(0,0,0,.9),rgba(0,0,0,.08)); }
.v3-preview-layout--living-room .v3-prose, .v3-preview-layout--living-room .v3-facts-panel { max-width: var(--v3-page-width); margin-right: auto; margin-left: auto; }
.v3-preview-layout--living-room .v3-facts-panel { position: static; display: grid; grid-template-columns: repeat(auto-fit,minmax(160px,1fr)); gap: 12px; }
.v3-preview-layout--living-room .v3-article-detail-page { max-width: none; padding-right: 0; padding-left: 0; }
.v3-preview-layout--living-room .v3-article-detail-head, .v3-preview-layout--living-room .v3-reading-shell, .v3-preview-layout--living-room .v3-article-detail > .v3-article-discovery { max-width: 820px; margin-right: auto; margin-left: auto; }
.v3-preview-layout--living-room .v3-article-detail-cover { max-width: none; max-height: 62vh; overflow: hidden; }
.v3-preview-layout--living-room .v3-topic-detail-page { max-width: none; padding-right: 0; padding-left: 0; }
.v3-preview-layout--living-room .v3-topic-detail-hero { min-height: min(72vh, 720px); border-radius: 0; }
.v3-preview-layout--living-room .v3-topic-games, .v3-preview-layout--living-room .v3-topic-story, .v3-preview-layout--living-room .v3-topic-discovery { max-width: var(--v3-page-width); margin-right: auto; margin-left: auto; }
.v3-preview-layout--living-room .v3-not-found { max-width: none; min-height: 76vh; display: grid; place-items: center; background: radial-gradient(circle at center,#30343b,#151619 62%); }
.v3-preview-layout--living-room .v3-not-found-panel { max-width: 640px; background: transparent; color: #fff; text-align: center; }
.v3-preview-layout--living-room .v3-not-found-recommendations { max-width: var(--v3-page-width); margin: 0 auto; padding: 48px 24px; }

@media (max-width: 680px) { .v3-preview-layout--guide .v3-library-page, .v3-preview-layout--guide .v3-article-list-page, .v3-preview-layout--guide .v3-search-page, .v3-preview-layout--guide .v3-category-page, .v3-preview-layout--guide .v3-tag-page, .v3-preview-layout--guide .v3-topic-list-page, .v3-preview-layout--radar .v3-home, .v3-preview-layout--radar .v3-rank-page, .v3-preview-layout--radar .v3-topic-detail-page, .v3-preview-layout--radar .v3-search-page, .v3-preview-layout--editorial .v3-article-list-page, .v3-preview-layout--editorial .v3-article-detail, .v3-preview-layout--editorial .v3-not-found, .v3-preview-layout--guide .v3-article-detail, .v3-preview-layout--guide .v3-favorites-page { display: block; } .v3-preview-layout--guide .v3-library-filters, .v3-preview-layout--guide .v3-article-filters, .v3-preview-layout--guide .v3-search-tabs, .v3-preview-layout--guide .v3-category-controls, .v3-preview-layout--guide .v3-tag-cloud, .v3-preview-layout--guide .v3-topic-filters, .v3-preview-layout--editorial .v3-article-discovery, .v3-preview-layout--editorial .v3-article-detail > .v3-article-discovery, .v3-preview-layout--guide .v3-article-detail > .v3-article-discovery, .v3-preview-layout--radar .v3-rank-explore, .v3-preview-layout--radar .v3-topic-discovery, .v3-preview-layout--radar .v3-search-related { position: static; margin-top: 16px; } .v3-preview-layout--guide .v3-library-card-link, .v3-preview-layout--guide .v3-article-list-link, .v3-preview-layout--guide .v3-search-card-link, .v3-preview-layout--guide .v3-category-item-link, .v3-preview-layout--guide .v3-topic-list-link { grid-template-columns: 124px minmax(0,1fr); } .v3-preview-layout--editorial .v3-home .v3-layout-row--hero, .v3-preview-layout--editorial .v3-home .v3-hero, .v3-preview-layout--editorial .v3-home .v3-layout-row--main_sidebar, .v3-preview-layout--editorial .v3-home .v3-layout-row--two_column { display: block; } .v3-preview-layout--editorial .v3-home .v3-focus { min-height: 0; } .v3-preview-layout--editorial .v3-home .v3-hero-side { display: grid; margin-top: 14px; } .v3-preview-layout--living-room .v3-home .v3-hero-side { position: static; width: auto; margin: 16px 14px; } .v3-preview-layout--living-room .v3-home .v3-focus-copy { max-width: 100%; } .v3-preview-layout--living-room .v3-detail-copy { max-width: 100%; } .v3-preview-layout--living-room .v3-card, .v3-preview-layout--living-room .v3-library-card, .v3-preview-layout--living-room .v3-article-list-card, .v3-preview-layout--living-room .v3-topic-list-card, .v3-preview-layout--living-room .v3-taxonomy-card, .v3-preview-layout--living-room .v3-topic-game-card, .v3-preview-layout--living-room .v3-favorite-card { flex-basis: 78vw; } }


/* Remaining page-family differences keep every public route structurally distinct in every preview. */
.v3-preview-layout--editorial .v3-library-page, .v3-preview-layout--editorial .v3-search-page, .v3-preview-layout--editorial .v3-topic-list-page, .v3-preview-layout--editorial .v3-category-page, .v3-preview-layout--editorial .v3-tag-page { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, .34fr); gap: var(--v3-preview-gap); align-items: start; }
.v3-preview-layout--editorial .v3-library-hero, .v3-preview-layout--editorial .v3-search-hero, .v3-preview-layout--editorial .v3-topic-list-hero, .v3-preview-layout--editorial .v3-taxonomy-hero, .v3-preview-layout--editorial .v3-library-filters, .v3-preview-layout--editorial .v3-search-tabs, .v3-preview-layout--editorial .v3-topic-filters, .v3-preview-layout--editorial .v3-category-controls, .v3-preview-layout--editorial .v3-tag-cloud { grid-column: 1; }
.v3-preview-layout--editorial .v3-library-discovery, .v3-preview-layout--editorial .v3-search-related, .v3-preview-layout--editorial .v3-topic-discovery, .v3-preview-layout--editorial .v3-taxonomy-section:last-child { grid-column: 2; grid-row: 1 / span 5; position: sticky; top: 92px; align-self: start; }
.v3-preview-layout--editorial .v3-library-grid, .v3-preview-layout--editorial .v3-search-results, .v3-preview-layout--editorial .v3-topic-list-grid, .v3-preview-layout--editorial .v3-category-list, .v3-preview-layout--editorial .v3-taxonomy-section:first-of-type { grid-column: 1; }
.v3-preview-layout--editorial .v3-library-grid, .v3-preview-layout--editorial .v3-search-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v3-preview-layout--editorial .v3-rank-page { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: var(--v3-preview-gap); }
.v3-preview-layout--editorial .v3-rank-hero, .v3-preview-layout--editorial .v3-rank-tabs, .v3-preview-layout--editorial .v3-rank-explore { grid-column: 1 / -1; }
.v3-preview-layout--editorial .v3-rank-list { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.v3-preview-layout--editorial .v3-favorites-page { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: var(--v3-preview-gap); }
.v3-preview-layout--editorial .v3-favorites-hero, .v3-preview-layout--editorial .v3-favorites-grid, .v3-preview-layout--editorial .v3-favorites-page > .v3-empty { grid-column: 1; }
.v3-preview-layout--editorial .v3-activity-grid, .v3-preview-layout--editorial .v3-account-actions { grid-column: 2; }
.v3-preview-layout--editorial .v3-topic-detail-page { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(280px,.7fr); gap: var(--v3-preview-gap); }
.v3-preview-layout--editorial .v3-topic-detail-hero, .v3-preview-layout--editorial .v3-topic-games, .v3-preview-layout--editorial .v3-topic-story { grid-column: 1; }
.v3-preview-layout--editorial .v3-topic-discovery { grid-column: 2; grid-row: 1 / span 3; position: sticky; top:92px; }

.v3-preview-layout--guide .v3-home { display:grid; grid-template-columns: 240px minmax(0,1fr); gap:var(--v3-preview-gap); }
.v3-preview-layout--guide .v3-home .v3-layout-row--hero, .v3-preview-layout--guide .v3-home .v3-layout-row--main_sidebar, .v3-preview-layout--guide .v3-home .v3-layout-row--two_column, .v3-preview-layout--guide .v3-home .v3-layout-row--full { display:contents; }
.v3-preview-layout--guide .v3-home .v3-hero { grid-column:2; }
.v3-preview-layout--guide .v3-home .v3-radar { grid-column:1; grid-row:1 / span 3; position:sticky; top:92px; display:grid; grid-template-columns:1fr; }
.v3-preview-layout--guide .v3-home .v3-discovery, .v3-preview-layout--guide .v3-home .v3-rank-columns, .v3-preview-layout--guide .v3-home .v3-topic-grid, .v3-preview-layout--guide .v3-home .v3-columns { grid-column:2; }
.v3-preview-layout--guide .v3-rank-page { display:grid; grid-template-columns:220px minmax(0,1fr); gap:var(--v3-preview-gap); }
.v3-preview-layout--guide .v3-rank-tabs { grid-column:1; position:sticky; top:92px; display:grid; align-items:start; }
.v3-preview-layout--guide .v3-rank-hero, .v3-preview-layout--guide .v3-rank-list, .v3-preview-layout--guide .v3-rank-explore { grid-column:2; }
.v3-preview-layout--guide .v3-topic-detail-page { display:grid; grid-template-columns:220px minmax(0,1fr); gap:var(--v3-preview-gap); }
.v3-preview-layout--guide .v3-topic-discovery { grid-column:1; grid-row:1 / span 3; position:sticky; top:92px; }
.v3-preview-layout--guide .v3-topic-detail-hero, .v3-preview-layout--guide .v3-topic-games, .v3-preview-layout--guide .v3-topic-story { grid-column:2; }
.v3-preview-layout--guide .v3-not-found { display:grid; grid-template-columns:240px minmax(0,1fr); gap:var(--v3-preview-gap); align-items:start; }
.v3-preview-layout--guide .v3-not-found-panel { grid-column:1; text-align:left; }
.v3-preview-layout--guide .v3-not-found-recommendations { grid-column:2; }

.v3-preview-layout--radar .v3-library-page, .v3-preview-layout--radar .v3-article-list-page, .v3-preview-layout--radar .v3-category-page, .v3-preview-layout--radar .v3-tag-page, .v3-preview-layout--radar .v3-topic-list-page { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:var(--v3-preview-gap); }
.v3-preview-layout--radar .v3-library-hero, .v3-preview-layout--radar .v3-article-list-hero, .v3-preview-layout--radar .v3-taxonomy-hero, .v3-preview-layout--radar .v3-topic-list-hero, .v3-preview-layout--radar .v3-library-filters, .v3-preview-layout--radar .v3-article-filters, .v3-preview-layout--radar .v3-category-controls, .v3-preview-layout--radar .v3-tag-cloud, .v3-preview-layout--radar .v3-topic-filters, .v3-preview-layout--radar .v3-library-grid, .v3-preview-layout--radar .v3-article-list-grid, .v3-preview-layout--radar .v3-category-list, .v3-preview-layout--radar .v3-taxonomy-section, .v3-preview-layout--radar .v3-topic-list-grid { grid-column:1; }
.v3-preview-layout--radar .v3-library-discovery, .v3-preview-layout--radar .v3-article-discovery, .v3-preview-layout--radar .v3-topic-discovery, .v3-preview-layout--radar .v3-taxonomy-section:last-child { grid-column:2; grid-row:1 / span 5; position:sticky; top:92px; align-self:start; }
.v3-preview-layout--radar .v3-library-grid, .v3-preview-layout--radar .v3-article-list-grid, .v3-preview-layout--radar .v3-topic-list-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.v3-preview-layout--radar .v3-favorites-page { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:var(--v3-preview-gap); }
.v3-preview-layout--radar .v3-favorites-hero, .v3-preview-layout--radar .v3-favorites-grid, .v3-preview-layout--radar .v3-favorites-page > .v3-empty { grid-column:1; }
.v3-preview-layout--radar .v3-activity-grid, .v3-preview-layout--radar .v3-account-actions { grid-column:2; }
.v3-preview-layout--radar .v3-article-detail { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:var(--v3-preview-gap); }
.v3-preview-layout--radar .v3-article-detail-head, .v3-preview-layout--radar .v3-reading-shell, .v3-preview-layout--radar .v3-article-detail-cover { grid-column:1; }
.v3-preview-layout--radar .v3-article-detail > .v3-article-discovery { grid-column:2; grid-row:1 / span 3; position:sticky; top:92px; }
.v3-preview-layout--radar .v3-not-found { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:var(--v3-preview-gap); }
.v3-preview-layout--radar .v3-not-found-panel { grid-column:1; }
.v3-preview-layout--radar .v3-not-found-recommendations { grid-column:2; margin:0; }

.v3-preview-layout--living-room .v3-rank-page, .v3-preview-layout--living-room .v3-search-page, .v3-preview-layout--living-room .v3-favorites-page { max-width:none; padding-right:max(24px,calc((100vw - var(--v3-page-width))/2)); padding-left:max(24px,calc((100vw - var(--v3-page-width))/2)); }
.v3-preview-layout--living-room .v3-rank-hero, .v3-preview-layout--living-room .v3-search-hero, .v3-preview-layout--living-room .v3-favorites-hero { min-height:280px; display:grid; align-items:end; }
.v3-preview-layout--living-room .v3-rank-list { display:flex; gap:16px; overflow-x:auto; padding-bottom:20px; scroll-snap-type:x mandatory; }
.v3-preview-layout--living-room .v3-rank-item { flex:0 0 min(440px,80vw); scroll-snap-align:start; }
.v3-preview-layout--living-room .v3-search-results { display:block; }
.v3-preview-layout--living-room .v3-search-grid { display:flex; gap:16px; overflow-x:auto; padding-bottom:20px; scroll-snap-type:x mandatory; }
.v3-preview-layout--living-room .v3-search-card { flex:0 0 min(360px,80vw); scroll-snap-align:start; }
.v3-preview-layout--living-room .v3-detail-layout { margin-right:auto; margin-left:auto; }
.v3-preview-layout--living-room .v3-favorites-grid { display:flex; }
@media (max-width:680px) { .v3-preview-layout--living-room .v3-not-found { display:block; } .v3-preview-layout--living-room .v3-not-found { min-height:auto; } .v3-preview-layout--living-room .v3-not-found-panel { width:100%; max-width:100%; } .v3-preview-layout--living-room .v3-not-found-recommendations { width:100%; max-width:100%; box-sizing:border-box; margin-top:24px; padding:32px 0 0; } }

@media (max-width:680px) { .v3-preview-layout--editorial .v3-rank-list { grid-template-columns:1fr; } }

@media (max-width:680px) { .v3-preview-layout--editorial .v3-library-page, .v3-preview-layout--editorial .v3-search-page, .v3-preview-layout--editorial .v3-topic-list-page, .v3-preview-layout--editorial .v3-category-page, .v3-preview-layout--editorial .v3-tag-page, .v3-preview-layout--editorial .v3-rank-page, .v3-preview-layout--editorial .v3-favorites-page, .v3-preview-layout--editorial .v3-topic-detail-page, .v3-preview-layout--guide .v3-home, .v3-preview-layout--guide .v3-rank-page, .v3-preview-layout--guide .v3-topic-detail-page, .v3-preview-layout--guide .v3-not-found, .v3-preview-layout--radar .v3-library-page, .v3-preview-layout--radar .v3-article-list-page, .v3-preview-layout--radar .v3-category-page, .v3-preview-layout--radar .v3-tag-page, .v3-preview-layout--radar .v3-topic-list-page, .v3-preview-layout--radar .v3-favorites-page, .v3-preview-layout--radar .v3-article-detail, .v3-preview-layout--radar .v3-not-found { display:block; } .v3-preview-layout--editorial .v3-library-discovery, .v3-preview-layout--editorial .v3-search-related, .v3-preview-layout--editorial .v3-topic-discovery, .v3-preview-layout--editorial .v3-taxonomy-section:last-child, .v3-preview-layout--guide .v3-home .v3-radar, .v3-preview-layout--guide .v3-rank-tabs, .v3-preview-layout--guide .v3-topic-discovery, .v3-preview-layout--radar .v3-library-discovery, .v3-preview-layout--radar .v3-article-discovery, .v3-preview-layout--radar .v3-topic-discovery, .v3-preview-layout--radar .v3-taxonomy-section:last-child, .v3-preview-layout--radar .v3-article-detail > .v3-article-discovery { position:static; margin-top:16px; } }

/* Legacy-route shells keep retained URLs inside the V3 visual system. */
.v3-legacy-page { display: grid; gap: 26px; }
.v3-legacy-hero { padding: clamp(30px, 6vw, 72px); border: 1px solid var(--v3-line); border-radius: var(--v3-card-radius, 18px); background: linear-gradient(135deg, #173d75, #2f6fed 62%, #7fb0ff); color: #fff; box-shadow: var(--v3-shadow); }
.v3-legacy-hero .v3-eyebrow { color: rgba(255,255,255,.76); }
.v3-legacy-hero h1 { max-width: 760px; margin: 8px 0 12px; font-size: clamp(32px, 5vw, 58px); line-height: 1.08; }
.v3-legacy-hero p { max-width: 680px; margin: 0; color: rgba(255,255,255,.88); line-height: 1.75; }
.v3-compare-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 16px; }
.v3-compare-card, .v3-author-article, .v3-info-grid > section, .v3-policy-content > section { overflow: hidden; border: 1px solid var(--v3-line); border-radius: var(--v3-card-radius, 18px); background: var(--v3-surface); box-shadow: var(--v3-shadow); }
.v3-compare-card-link { display: block; color: inherit; text-decoration: none; }
.v3-compare-cover { aspect-ratio: 16 / 9; overflow: hidden; background: var(--v3-bg); }
.v3-compare-cover img, .v3-author-article-cover img { display: block; width: 100%; height: 100%; object-fit: cover; }
.v3-compare-card-body { padding: 16px 16px 4px; }
.v3-compare-card-body h2 { margin: 0; font-size: 20px; }
.v3-compare-card-body p { margin: 7px 0 0; color: var(--v3-muted); }
.v3-compare-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 16px 0 0; border-top: 1px solid var(--v3-line); background: var(--v3-line); }
.v3-compare-facts > div { min-width: 0; padding: 12px 14px; background: var(--v3-surface); }
.v3-compare-facts dt { color: var(--v3-muted); font-size: 12px; }
.v3-compare-facts dd { margin: 5px 0 0; overflow: hidden; color: var(--v3-ink); font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.v3-author-articles, .v3-policy-content { display: grid; gap: 14px; }
.v3-author-directory { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.v3-author-directory-card { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; gap: 14px; min-height: 100px; padding: 18px; border: 1px solid var(--v3-line); border-radius: var(--v3-card-radius, 18px); background: var(--v3-surface); box-shadow: var(--v3-shadow); color: inherit; text-decoration: none; }
.v3-author-directory-card:hover { border-color: var(--v3-blue); }
.v3-author-directory-card b, .v3-author-directory-card small { display: block; }
.v3-author-directory-card small { margin-top: 5px; color: var(--v3-muted); }
.v3-author-directory-mark { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 50%; background: var(--v3-blue); color: #fff; font-weight: 800; font-size: 21px; }
.v3-author-article > a { display: grid; grid-template-columns: minmax(0, 1fr) 180px; min-height: 152px; color: inherit; text-decoration: none; }
.v3-author-article-body { padding: 20px; }
.v3-author-article-body > span { color: var(--v3-blue); font-size: 13px; font-weight: 700; }
.v3-author-article-body h2 { margin: 8px 0; font-size: clamp(19px, 2vw, 25px); }
.v3-author-article-body p { display: -webkit-box; margin: 0; overflow: hidden; color: var(--v3-muted); line-height: 1.7; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.v3-author-article-body small { display: block; margin-top: 10px; color: var(--v3-muted); }
.v3-author-article-cover { min-height: 100%; background: var(--v3-bg); }
.v3-info-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.v3-info-grid > section, .v3-policy-content > section { padding: clamp(20px, 3vw, 32px); }
.v3-info-grid h2, .v3-policy-content h2 { margin: 0 0 12px; font-size: 21px; }
.v3-info-grid p, .v3-policy-content p { margin: 0; color: var(--v3-muted); line-height: 1.85; }
.v3-info-grid a, .v3-policy-content a { color: var(--v3-blue); font-weight: 700; }
.v3-policy-content { max-width: 860px; }
@media (max-width: 680px) { .v3-legacy-hero { border-radius: 14px; } .v3-author-article > a { grid-template-columns: minmax(0, 1fr) 112px; min-height: 130px; } .v3-author-article-body { padding: 16px; } .v3-author-article-body p { -webkit-line-clamp: 2; } .v3-info-grid { grid-template-columns: 1fr; } }
/* V3 sitemap: editorial navigation desk. */
.v3-sitemap-page { display: grid; gap: 26px; padding-top: 44px; overflow-x: hidden; }
.v3-sitemap-hero { padding: clamp(30px, 6vw, 66px); border: 1px solid var(--v3-line); border-radius: var(--v3-card-radius, 18px); background: linear-gradient(135deg, #132c57, #2864be 62%, #78a9ff); box-shadow: var(--v3-shadow); color: #fff; }
.v3-sitemap-hero .v3-eyebrow { color: rgba(255,255,255,.72); }
.v3-sitemap-hero h1 { margin: 8px 0 12px; font-size: clamp(36px, 6vw, 62px); line-height: 1.04; }
.v3-sitemap-hero > p:not(.v3-eyebrow) { max-width: 650px; margin: 0; color: rgba(255,255,255,.88); line-height: 1.75; }
.v3-sitemap-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 28px 0; }
.v3-sitemap-stats > div { min-width: 0; padding: 14px; border: 1px solid rgba(255,255,255,.2); border-radius: 12px; background: rgba(12,33,69,.22); }
.v3-sitemap-stats dt { font-size: clamp(21px, 3vw, 30px); font-weight: 800; }
.v3-sitemap-stats dd { margin: 4px 0 0; color: rgba(255,255,255,.72); font-size: 13px; }
.v3-sitemap-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; max-width: 620px; overflow: hidden; border-radius: 12px; background: #fff; }
.v3-sitemap-search input { min-width: 0; padding: 14px 16px; border: 0; color: var(--v3-ink); font: inherit; }
.v3-sitemap-search button { padding: 0 20px; border: 0; background: var(--v3-navy); color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.v3-sitemap-index, .v3-sitemap-route-list, .v3-sitemap-tags, .v3-sitemap-system-links { display: flex; flex-wrap: wrap; gap: 10px; }
.v3-sitemap-index { padding: 4px 0; }
.v3-sitemap-index a, .v3-sitemap-tags a, .v3-sitemap-system-links a { padding: 8px 11px; border: 1px solid var(--v3-line); border-radius: 999px; color: var(--v3-ink); background: var(--v3-surface); font-size: 14px; font-weight: 700; text-decoration: none; }
.v3-sitemap-desk { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 16px; }
.v3-sitemap-panel { min-width: 0; padding: clamp(20px, 3vw, 30px); border: 1px solid var(--v3-line); border-radius: var(--v3-card-radius, 18px); background: var(--v3-surface); box-shadow: var(--v3-shadow); }
.v3-sitemap-panel h2, .v3-sitemap-shelf h2 { margin: 5px 0 17px; font-size: clamp(23px, 3vw, 31px); }
.v3-sitemap-route-list a { min-width: calc(50% - 5px); padding: 13px; border: 1px solid var(--v3-line); border-radius: 10px; color: var(--v3-ink); background: var(--v3-bg); font-weight: 700; text-decoration: none; }
.v3-sitemap-taxonomy { display: grid; gap: 12px; }
.v3-sitemap-taxonomy > div { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.v3-sitemap-taxonomy a { color: var(--v3-ink); font-weight: 800; text-decoration: none; }
.v3-sitemap-taxonomy .v3-sitemap-child { padding-left: 10px; color: var(--v3-muted); font-size: 14px; font-weight: 600; }
.v3-sitemap-tags { margin-top: 17px; }
.v3-sitemap-note { margin: 0; color: var(--v3-muted); line-height: 1.7; }
.v3-sitemap-shelf { min-width: 0; }
.v3-sitemap-shelf-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.v3-sitemap-card { min-width: 0; overflow: hidden; border: 1px solid var(--v3-line); border-radius: var(--v3-card-radius, 18px); background: var(--v3-surface); box-shadow: var(--v3-shadow); }
.v3-sitemap-card a { display: block; height: 100%; color: inherit; text-decoration: none; }
.v3-sitemap-card-cover { aspect-ratio: 16 / 10; overflow: hidden; background: var(--v3-bg); }
.v3-sitemap-card-cover img, .v3-sitemap-card-cover .v3-card-media--fallback { display: block; width: 100%; height: 100%; object-fit: cover; }
.v3-sitemap-card-body { padding: 14px; }
.v3-sitemap-card-body > span { color: var(--v3-blue); font-size: 12px; font-weight: 800; }
.v3-sitemap-card-body h3 { display: -webkit-box; margin: 7px 0 9px; overflow: hidden; font-size: 17px; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.v3-sitemap-card-body small { color: var(--v3-muted); }
.v3-sitemap-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 16px; color: var(--v3-muted); font-size: 14px; }
.v3-sitemap-pagination a { padding: 8px 12px; border: 1px solid var(--v3-line); border-radius: 9px; color: var(--v3-ink); background: var(--v3-surface); font-weight: 700; text-decoration: none; }
.v3-sitemap-page a:focus-visible, .v3-sitemap-page button:focus-visible, .v3-sitemap-page input:focus-visible { outline: 3px solid #f1c45c; outline-offset: 3px; }
.v3-sitemap-index a:hover, .v3-sitemap-tags a:hover, .v3-sitemap-route-list a:hover, .v3-sitemap-pagination a:hover, .v3-sitemap-system-links a:hover { border-color: var(--v3-blue); color: var(--v3-blue); }
@media (max-width: 680px) { .v3-sitemap-page { gap: 20px; padding-top: 22px; } .v3-sitemap-hero { padding: 28px 20px; border-radius: 14px; } .v3-sitemap-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } .v3-sitemap-stats > div:last-child { grid-column: 1 / -1; } .v3-sitemap-search { grid-template-columns: 1fr; } .v3-sitemap-search button { min-height: 48px; } .v3-sitemap-desk, .v3-sitemap-shelf-grid { grid-template-columns: 1fr; } .v3-sitemap-route-list a { min-width: 100%; } }
/* Shared editorial recovery state for unavailable detail pages. */
.v3-recovery-card { display: grid; justify-items: center; gap: 12px; padding: clamp(42px, 8vw, 84px) 24px; border: 1px solid var(--v3-line); border-radius: var(--v3-card-radius, 18px); background: linear-gradient(135deg, #f4f8fa, #edf4f2); text-align: center; }
.v3-recovery-card > h1, .v3-recovery-card > h2 { margin: 0; font-family: Georgia, "Songti SC", serif; font-size: clamp(28px, 4vw, 44px); }
.v3-recovery-card > p:not(.v3-eyebrow) { max-width: 540px; margin: 0; color: var(--v3-muted); line-height: 1.75; }
.v3-recovery-kicker { margin: 0; }
.v3-recovery-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 12px; }
.v3-recovery-actions .v3-button { margin: 0; }
@media (max-width: 680px) { .v3-recovery-card { padding: 38px 18px; border-radius: 14px; } .v3-recovery-actions { width: 100%; } .v3-recovery-actions .v3-button { flex: 1 1 150px; text-align: center; } }
/* V3 guide-first detail pages: presentation-only editorial and aid columns. */
.v3-page .v3-detail-guide-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .34fr); gap: clamp(20px, 4vw, 46px); align-items: start; }
.v3-detail-guide-layout > .v3-detail-primary-column { min-width: 0; }
.v3-detail-guide-layout > .v3-detail-secondary-column { grid-column: 2; grid-row: 1; position: sticky; top: 92px; align-self: start; }
.v3-article-detail-page.v3-article-detail-page--reading { max-width: 1180px; }
.v3-article-guide-layout { display: grid; grid-template-columns: minmax(0, 760px) minmax(240px, 300px); justify-content: center; gap: clamp(24px, 5vw, 72px); align-items: start; }
.v3-article-guide-layout > .v3-article-primary-column { min-width: 0; }
.v3-article-guide-layout > .v3-article-secondary-column { position: sticky; top: 92px; display: grid; gap: 14px; align-self: start; }
.v3-article-guide-aid, .v3-article-guide-links { padding: 18px; border: 1px solid var(--v3-line); border-radius: 12px; background: var(--v3-surface); box-shadow: var(--v3-shadow); }
.v3-article-guide-aid .v3-eyebrow { margin: 0 0 10px; }
.v3-article-guide-aid .v3-muted { margin: 0; font-size: 14px; line-height: 1.65; }
.v3-article-guide-toc ol { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.v3-article-guide-toc a { display: block; color: var(--v3-ink); font-size: 14px; font-weight: 700; line-height: 1.5; text-decoration: none; }
.v3-article-guide-toc a:hover { color: var(--v3-blue); }
.v3-article-guide-toc a:focus-visible, .v3-article-guide-links a:focus-visible { outline: 3px solid var(--v3-secondary); outline-offset: 3px; }
.v3-article-guide-toc-level-3 { padding-left: 14px; }
.v3-article-guide-links { display: grid; gap: 9px; }
.v3-article-guide-links a { color: var(--v3-blue); font-size: 14px; font-weight: 800; text-decoration: none; }
.v3-reading-mode-active .v3-article-secondary-column { opacity: .62; }
@media (max-width: 680px) {
  .v3-page .v3-detail-guide-layout, .v3-article-guide-layout { display: block; }
  .v3-detail-guide-layout > .v3-detail-secondary-column, .v3-article-guide-layout > .v3-article-secondary-column { position: static; margin-top: 18px; }
  .v3-article-detail-page.v3-article-detail-page--reading { max-width: 780px; }
  .v3-article-guide-aid, .v3-article-guide-links { padding: 16px; }
}
/* Preserve the native hidden contract until reading mode explicitly activates these controls. */
.v3-reading-action-rail[hidden], .v3-reading-toc[hidden] { display: none !important; }
/* V3 editorial workbench listing layout. */
.v3-editorial-workbench { display: grid; grid-template-columns: minmax(0, 1fr) minmax(240px, 300px); gap: 32px; align-items: start; margin-top: 24px; }
.v3-editorial-workbench--single { grid-template-columns: minmax(0, 1fr); }
.v3-editorial-primary { min-width: 0; }
.v3-editorial-rail { min-width: 0; position: sticky; top: 92px; align-self: start; }
.v3-editorial-workbench .v3-search-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v3-editorial-workbench .v3-search-related { display: grid; gap: 9px; align-items: stretch; margin: 0; padding: 18px; border: 1px solid var(--v3-line); border-radius: 12px; background: var(--v3-surface); }
.v3-editorial-workbench .v3-search-related > span { color: var(--v3-muted); font-size: 12px; font-weight: 800; }
.v3-editorial-workbench .v3-search-related a { width: max-content; max-width: 100%; overflow-wrap: anywhere; }

.v3-article-workbench .v3-editorial-lead .v3-article-list-link { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); height: auto; }
.v3-article-workbench .v3-editorial-lead .v3-article-list-cover { min-height: 100%; }
.v3-editorial-stream { display: grid; grid-template-columns: 1fr; gap: 16px; margin-top: 18px; }
.v3-editorial-stream .v3-article-list-link { display: grid; grid-template-columns: 168px minmax(0, 1fr); height: auto; min-height: 132px; }
.v3-editorial-stream .v3-article-list-cover { min-height: 132px; aspect-ratio: auto; }
.v3-article-list--grid .v3-article-workbench .v3-editorial-stream { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v3-article-list--grid .v3-article-workbench .v3-editorial-stream .v3-article-list-link { display: block; min-height: 0; }
.v3-article-list--grid .v3-article-workbench .v3-editorial-stream .v3-article-list-cover { min-height: 0; aspect-ratio: 16 / 10; }
.v3-article-list--list .v3-article-workbench .v3-editorial-stream { grid-template-columns: 1fr; }
.v3-article-list--columns-2.v3-article-list--grid .v3-article-workbench .v3-editorial-stream { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.v3-article-list--columns-3.v3-article-list--grid .v3-article-workbench .v3-editorial-stream { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.v3-article-list--columns-4.v3-article-list--grid .v3-article-workbench .v3-editorial-stream { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.v3-article-list--ratio-3x2 .v3-article-workbench .v3-editorial-lead .v3-article-list-cover,
.v3-article-list--ratio-3x2 .v3-article-workbench .v3-editorial-stream .v3-article-list-cover { aspect-ratio: 3 / 2; }
.v3-article-list--ratio-16x9 .v3-article-workbench .v3-editorial-lead .v3-article-list-cover,
.v3-article-list--ratio-16x9 .v3-article-workbench .v3-editorial-stream .v3-article-list-cover { aspect-ratio: 16 / 9; }

@media (max-width: 900px) {
  .v3-editorial-workbench { grid-template-columns: minmax(0, 1fr) 240px; gap: 22px; }
  .v3-article-list--columns-4.v3-article-list--grid .v3-article-workbench .v3-editorial-stream { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .v3-editorial-workbench { display: block; }
  .v3-editorial-rail { position: static; margin-top: 18px; }
  .v3-editorial-workbench .v3-search-grid { grid-template-columns: 1fr; }
  .v3-article-workbench .v3-editorial-lead .v3-article-list-link,
  .v3-editorial-stream .v3-article-list-link { grid-template-columns: 1fr; min-height: 0; }
  .v3-article-workbench .v3-editorial-lead .v3-article-list-cover,
  .v3-editorial-stream .v3-article-list-cover { min-height: 0; aspect-ratio: 16 / 9; }
  .v3-article-list--grid .v3-article-workbench .v3-editorial-stream,
  .v3-article-list--columns-2.v3-article-list--grid .v3-article-workbench .v3-editorial-stream,
  .v3-article-list--columns-3.v3-article-list--grid .v3-article-workbench .v3-editorial-stream,
  .v3-article-list--columns-4.v3-article-list--grid .v3-article-workbench .v3-editorial-stream { grid-template-columns: 1fr; }
  .v3-article-list--grid .v3-article-workbench .v3-editorial-stream .v3-article-list-link { display: grid; min-height: 0; }
  .v3-article-list--grid .v3-article-workbench .v3-editorial-stream .v3-article-list-cover { min-height: 0; aspect-ratio: 16 / 9; }
}
/* Category pages inherit the article-list display style for every present and future category. */
.v3-category-page--style-grid .v3-category-list--style-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.v3-category-page.v3-category-page--style-grid .v3-category-item-link { display:block; height:100%; }
.v3-category-page.v3-category-page--style-grid .v3-category-cover { min-height:0; aspect-ratio:16 / 10; }
.v3-category-page.v3-category-page--style-grid .v3-category-item-body { display:block; padding:18px; }
.v3-category-page.v3-category-page--style-grid .v3-category-item-body > * { margin-left:0; margin-right:0; }
.v3-category-page.v3-taxonomy--columns-2.v3-category-page--style-grid .v3-category-list--style-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.v3-category-page.v3-taxonomy--columns-4.v3-category-page--style-grid .v3-category-list--style-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.v3-category-list--style-focus { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr); gap:20px; align-items:start; }
.v3-category-focus-lead .v3-category-item-link { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr); min-height:100%; }
.v3-category-focus-lead .v3-category-cover { min-height:300px; }
.v3-category-focus-lead .v3-category-item-body { display:grid; place-content:center; gap:10px; padding:clamp(22px,3vw,38px); }
.v3-category-focus-lead .v3-category-item-body > * { margin:0; }
.v3-category-focus-stream { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.v3-category-focus-stream .v3-category-item-link { display:block; }
.v3-category-focus-stream .v3-category-cover { min-height:0; aspect-ratio:16 / 10; }
.v3-category-list--style-compact { display:grid; gap:12px; }
.v3-category-page.v3-category-page--style-compact .v3-category-item-link { display:grid; grid-template-columns:200px minmax(0,1fr); min-height:142px; }
.v3-category-page.v3-category-page--style-compact .v3-category-cover { min-height:100%; }
.v3-category-page.v3-category-page--style-compact .v3-category-item-body { display:grid; align-content:center; }
.v3-category-page.v3-category-page--style-compact .v3-category-item-body > * { margin-left:0; margin-right:0; }
.v3-category-page.v3-category-page--style-compact .v3-category-item-body h2 { margin-top:8px; }
@media (max-width:900px) {
  .v3-category-page--style-grid .v3-category-list--style-grid, .v3-category-page.v3-taxonomy--columns-4.v3-category-page--style-grid .v3-category-list--style-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .v3-category-list--style-focus { grid-template-columns:1fr; }
  .v3-category-focus-stream { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
  .v3-category-page--style-grid .v3-category-list--style-grid, .v3-category-page.v3-taxonomy--columns-2.v3-category-page--style-grid .v3-category-list--style-grid, .v3-category-page.v3-taxonomy--columns-3.v3-category-page--style-grid .v3-category-list--style-grid, .v3-category-page.v3-taxonomy--columns-4.v3-category-page--style-grid .v3-category-list--style-grid, .v3-category-focus-stream { grid-template-columns:1fr; }
  .v3-category-focus-lead .v3-category-item-link, .v3-category-page.v3-category-page--style-compact .v3-category-item-link { grid-template-columns:124px minmax(0,1fr); min-height:116px; }
  .v3-category-focus-lead .v3-category-cover, .v3-category-page.v3-category-page--style-compact .v3-category-cover { min-height:116px; }
  .v3-category-focus-lead .v3-category-item-body, .v3-category-page.v3-category-page--style-compact .v3-category-item-body { display:block; padding:13px; }
  .v3-category-focus-lead .v3-eyebrow, .v3-category-page.v3-category-page--style-compact .v3-category-item-body p { display:none; }
}

/* V3 article-list display styles: focus, uniform grid, and compact scanning. */
.v3-article-list-toolbar { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:24px 0 18px; }
.v3-article-list-toolbar .v3-article-list-intro, .v3-article-list-toolbar .v3-article-filters { margin:0; }
.v3-article-style { min-width:0; }
.v3-article-list--style-grid .v3-article-list-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.v3-article-list--style-grid .v3-article-list-link { display:block; min-height:0; }
.v3-article-list--style-grid .v3-article-list-cover { min-height:0; aspect-ratio:16 / 10; }
.v3-article-list--style-focus { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr); gap:20px; align-items:start; }
.v3-article-focus-lead .v3-article-list-link { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr); min-height:100%; }
.v3-article-focus-lead .v3-article-list-cover { min-height:300px; aspect-ratio:auto; }
.v3-article-focus-lead .v3-article-list-body { display:grid; place-content:center; gap:10px; padding:clamp(22px,3vw,38px); }
.v3-article-focus-lead .v3-article-list-body > * { margin:0; }
.v3-article-focus-stream { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.v3-article-focus-stream .v3-article-list-link { display:block; min-height:0; }
.v3-article-focus-stream .v3-article-list-cover { min-height:0; aspect-ratio:16 / 10; }
.v3-article-compact-stream { display:grid; gap:12px; }
.v3-article-list--style-compact .v3-article-list-link { display:grid; grid-template-columns:200px minmax(0,1fr); min-height:142px; }
.v3-article-list--style-compact .v3-article-list-cover { min-height:100%; aspect-ratio:auto; }
.v3-article-list--style-compact .v3-article-list-body { display:grid; align-content:center; }
.v3-article-list--style-compact .v3-article-list-body > * { margin-left:0; margin-right:0; }
.v3-article-list--style-compact .v3-article-list-body h2 { margin-top:8px; }
.v3-article-list--style-compact .v3-article-list-body p { -webkit-line-clamp:2; }
.v3-article-list--columns-2.v3-article-list--style-grid .v3-article-list-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.v3-article-list--columns-4.v3-article-list--style-grid .v3-article-list-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.v3-article-list--ratio-3x2 .v3-article-style .v3-article-list-cover { aspect-ratio:3 / 2; }
.v3-article-list--ratio-16x9 .v3-article-style .v3-article-list-cover { aspect-ratio:16 / 9; }
@media (max-width:900px) {
  .v3-article-list--style-grid .v3-article-list-grid, .v3-article-list--columns-4.v3-article-list--style-grid .v3-article-list-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .v3-article-list--style-focus { grid-template-columns:1fr; }
  .v3-article-focus-stream { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
  .v3-article-list-toolbar { display:block; }
  .v3-article-list-toolbar .v3-article-filters { margin-top:12px; }
  .v3-article-list--style-grid .v3-article-list-grid, .v3-article-list--columns-2.v3-article-list--style-grid .v3-article-list-grid, .v3-article-list--columns-3.v3-article-list--style-grid .v3-article-list-grid, .v3-article-list--columns-4.v3-article-list--style-grid .v3-article-list-grid, .v3-article-focus-stream { grid-template-columns:1fr; }
  .v3-article-focus-lead .v3-article-list-link, .v3-article-list--style-compact .v3-article-list-link { grid-template-columns:124px minmax(0,1fr); min-height:116px; }
  .v3-article-focus-lead .v3-article-list-cover, .v3-article-list--style-compact .v3-article-list-cover { min-height:116px; aspect-ratio:auto; }
  .v3-article-focus-lead .v3-article-list-body, .v3-article-list--style-compact .v3-article-list-body { display:block; padding:13px; }
  .v3-article-focus-lead .v3-article-list-body h2, .v3-article-list--style-compact .v3-article-list-body h2 { margin-top:7px; font-size:16px; }
  .v3-article-focus-lead .v3-eyebrow, .v3-article-list--style-compact .v3-article-list-body p { display:none; }
}

/* Article uniform grid hardening: all card content stays below its cover. */
.v3-article-list-page.v3-article-list--style-grid .v3-article-list-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.v3-article-list-page.v3-article-list--style-grid .v3-article-list-card { min-width:0; }
.v3-article-list-page.v3-article-list--style-grid .v3-article-list-link { display:block; height:100%; min-height:0; }
.v3-article-list-page.v3-article-list--style-grid .v3-article-list-cover { min-height:0; aspect-ratio:16 / 10; }
.v3-article-list-page.v3-article-list--style-grid .v3-article-list-body { display:block; padding:16px; }
.v3-article-list-page.v3-article-list--style-grid .v3-article-list-body > * { margin-left:0; margin-right:0; }
.v3-article-list-page.v3-article-list--columns-2.v3-article-list--style-grid .v3-article-list-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.v3-article-list-page.v3-article-list--columns-4.v3-article-list--style-grid .v3-article-list-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
@media (max-width:900px) { .v3-article-list-page.v3-article-list--style-grid .v3-article-list-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:680px) { .v3-article-list-page.v3-article-list--style-grid .v3-article-list-grid { grid-template-columns:1fr; } }

/* V3 game-library editorial discovery. */
.v3-library-editorial { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr); gap:20px; align-items:start; }
.v3-library-lead { min-width:0; }
.v3-library-stream { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; min-width:0; }
.v3-library-lead .v3-library-card-link { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr); min-height:100%; }
.v3-library-lead .v3-library-cover { min-height:300px; aspect-ratio:auto; }
.v3-library-lead .v3-library-card-body { display:grid; place-content:center; gap:12px; padding:clamp(22px,3vw,38px); }
@media (max-width:900px) { .v3-library-editorial { grid-template-columns:1fr; } }
@media (max-width:680px) { .v3-library-editorial, .v3-library-stream { grid-template-columns:1fr; } .v3-library-lead .v3-library-card-link { grid-template-columns:124px minmax(0,1fr); } .v3-library-lead .v3-library-cover { min-height:116px; } .v3-library-lead .v3-library-card-body { display:block; padding:13px; } }

/* Mobile hardening: keep user-managed labels and fixed controls inside the viewport. */
@media (max-width: 680px) {
  .v3-nav-links,
  .v3-library-filters,
  .v3-article-filters,
  .v3-search-tabs,
  .v3-search-sorts,
  .v3-topic-filters,
  .v3-category-tabs,
  .v3-category-sort,
  .v3-rank-tabs { -webkit-overflow-scrolling: touch; scroll-snap-type: x proximity; scrollbar-width: thin; }
  .v3-nav-drawer { min-height: 100dvh; }
  .v3-nav-drawer-panel { min-height: 100dvh; padding-bottom: calc(22px + env(safe-area-inset-bottom)); overflow-y: auto; }
  .v3-mobile-tabs { padding-bottom: env(safe-area-inset-bottom); }
  body:has(.v3-mobile-tabs) { padding-bottom: calc(70px + env(safe-area-inset-bottom)); }
  body:has(.v3-mobile-tabs) .v3-mobile-cta { bottom: calc(64px + env(safe-area-inset-bottom)); }
  body:has(.v3-mobile-tabs) .mobile-cta-spacer { height: calc(140px + env(safe-area-inset-bottom)); }
  .v3-mobile-cta .v3-button,
  .v3-mobile-tabs .v3-mobile-tab,
  .v3-nav-drawer-links a,
  .v3-library-filters a,
  .v3-article-filters a,
  .v3-search-tabs a,
  .v3-search-sorts a,
  .v3-topic-filters a,
  .v3-category-tabs a,
  .v3-category-sort a,
  .v3-rank-tabs a { min-width: 0; overflow-wrap: anywhere; }
}
/* Compact the radar only when it occupies the narrow homepage sidebar. */
.v3-layout-slot--sidebar .v3-radar { display: flex; flex-direction: column; }
.v3-layout-slot--sidebar .v3-radar-main { padding: 20px 20px 16px; }
.v3-layout-slot--sidebar .v3-radar-main h2 { font-size: 24px; }
.v3-layout-slot--sidebar .v3-radar-main p { margin-bottom: 0; line-height: 1.6; }
.v3-layout-slot--sidebar .v3-radar-list { flex: 1; display: flex; flex-direction: column; padding: 8px 18px 12px; }
.v3-layout-slot--sidebar .v3-radar-list h3 { margin: 6px 0 2px; }
.v3-layout-slot--sidebar .v3-radar-item { flex: 1; align-items: center; gap: 10px; padding: 10px 0; line-height: 1.45; }
.v3-layout-slot--sidebar .v3-radar-date { min-width: 42px; }
/* Keep the sidebar radar card aligned with the full discovery row on desktop. */
@media (min-width: 681px) {
  .v3-layout-row--main_sidebar { align-items: stretch; }
  .v3-layout-row--main_sidebar > .v3-layout-slot--sidebar { display: flex; }
  .v3-layout-row--main_sidebar > .v3-layout-slot--sidebar .v3-radar { flex: 1; }
}

/* Homepage rankings: compact competition cards with clear rank hierarchy. */
.v3-home .v3-rank-columns { gap: 18px; }
.v3-home .v3-rank { --v3-rank-accent: var(--v3-blue); position: relative; overflow: hidden; padding: 0 18px 14px; border: 1px solid var(--v3-line); border-top: 4px solid var(--v3-rank-accent); background: linear-gradient(180deg, #fff 0%, #fbfdff 100%); box-shadow: 0 8px 20px rgba(24,34,46,.04); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.v3-home .v3-rank:nth-child(2) { --v3-rank-accent: #e05a3f; }
.v3-home .v3-rank:nth-child(3) { --v3-rank-accent: var(--v3-teal); }
.v3-home .v3-rank:nth-child(4) { --v3-rank-accent: #7558c9; }
.v3-home .v3-rank h3 { margin: 0; padding: 14px 0 12px; color: var(--v3-ink); font-size: 17px; background: linear-gradient(90deg, color-mix(in srgb, var(--v3-rank-accent) 11%, transparent), transparent 76%); }
.v3-home .v3-rank-row { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; gap: 10px; align-items: center; min-height: 48px; padding: 10px 0; border-top: 1px solid var(--v3-line); line-height: 1.35; transition: background-color .16s ease, transform .16s ease; }
.v3-home .v3-rank h3 + .v3-rank-row { margin: 0 -10px 2px; padding: 12px 10px; border: 0; border-radius: 9px; background-color: color-mix(in srgb, var(--v3-rank-accent) 8%, #fff); }
.v3-home .v3-rank-row b { color: var(--v3-rank-accent); font-size: 13px; font-variant-numeric: tabular-nums; }
.v3-home .v3-rank-row span { min-width: 0; overflow-wrap: anywhere; font-weight: 700; }
.v3-home .v3-rank-row small { margin-left: 0; color: var(--v3-teal); font-size: 12px; font-variant-numeric: tabular-nums; }
.v3-home .v3-rank-row:hover { margin-right: -6px; margin-left: -6px; padding-right: 6px; padding-left: 6px; border-radius: 8px; background-color: color-mix(in srgb, var(--v3-rank-accent) 7%, #fff); transform: translateX(2px); }
.v3-home .v3-rank-row:focus-visible { z-index: 1; outline: 3px solid color-mix(in srgb, var(--v3-rank-accent) 42%, white); outline-offset: 2px; border-radius: 8px; }
@media (hover: hover) and (pointer: fine) {
  .v3-home .v3-rank:hover { transform: translateY(-4px); border-color: color-mix(in srgb, var(--v3-rank-accent) 42%, var(--v3-line)); box-shadow: 0 18px 30px rgba(24,34,46,.12); }
}
@media (max-width: 680px) {
  .v3-home .v3-rank { padding-right: 16px; padding-left: 16px; }
  .v3-home .v3-rank h3 { font-size: 16px; }
}


/* Homepage articles: a compact reading list after the editorial sidebar is hidden. */
.v3-home .v3-article { grid-template-columns: 220px minmax(0, 1fr); align-items: center; min-height: 156px; gap: 20px; margin-bottom: 16px; padding: 12px; overflow: hidden; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.v3-home .v3-article-cover { min-height: 132px; height: 132px; border-radius: 9px; overflow: hidden; background: linear-gradient(135deg, #dfe8ec, #b7cbd3); }
.v3-home .v3-article-cover img { transition: transform .22s ease; }
.v3-home .v3-article .v3-eyebrow { color: var(--v3-blue); font-size: 11px; letter-spacing: .06em; }
.v3-home .v3-article h3 { margin: 7px 0 8px; font-size: 19px; line-height: 1.35; }
.v3-home .v3-article p { display: -webkit-box; overflow: hidden; margin: 0; color: var(--v3-muted); line-height: 1.65; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.v3-home .v3-article:focus-visible { outline: 3px solid color-mix(in srgb, var(--v3-blue) 42%, white); outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) {
  .v3-home .v3-article:hover { transform: translateY(-3px); border-color: color-mix(in srgb, var(--v3-blue) 35%, var(--v3-line)); box-shadow: 0 16px 28px rgba(24,34,46,.10); }
  .v3-home .v3-article:hover .v3-article-cover img { transform: scale(1.04); }
}
@media (max-width: 680px) {
  .v3-home .v3-article { display: block; min-height: 0; padding: 12px; }
  .v3-home .v3-article-cover { width: 100%; height: auto; min-height: 0; aspect-ratio: 16 / 10; margin-bottom: 13px; }
  .v3-home .v3-article h3 { font-size: 18px; }
}/* Homepage hero: strengthen the featured game and turn context links into balanced editorial cards. */
.v3-home .v3-hero { gap: 18px; align-items: stretch; }
.v3-home .v3-focus { position: relative; isolation: isolate; min-height: 420px; border: 1px solid rgba(255,255,255,.13); box-shadow: 0 18px 42px rgba(18,35,51,.18); transition: transform .2s ease, box-shadow .2s ease; }
.v3-home .v3-focus-copy { position: relative; z-index: 1; padding: clamp(36px, 4vw, 58px); background: linear-gradient(135deg, rgba(10,24,40,.98), rgba(17,42,61,.94)); }
.v3-home .v3-focus .v3-eyebrow { display: inline-flex; align-items: center; width: fit-content; margin-bottom: 4px; padding: 6px 10px; border: 1px solid rgba(188,208,255,.24); border-radius: 999px; background: rgba(255,255,255,.06); color: #d8e5ff; font-size: 11px; letter-spacing: .08em; }
.v3-home .v3-focus h1 { max-width: 9ch; margin: 16px 0 14px; font-size: clamp(40px, 4.4vw, 64px); line-height: 1.07; letter-spacing: -.045em; text-wrap: balance; }
.v3-home .v3-focus p { display: -webkit-box; max-width: 32em; overflow: hidden; color: #d5e1e8; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.v3-home .v3-focus .v3-button { width: fit-content; margin-top: 24px; box-shadow: 0 8px 18px rgba(7,17,28,.22); }
.v3-home .v3-focus-visual { overflow: hidden; }
.v3-home .v3-focus-visual img { transition: transform .45s ease; }
.v3-home .v3-hero-side { gap: 18px; }
.v3-home .v3-hero-story { display: flex; flex-direction: column; justify-content: center; min-height: 0; padding: clamp(22px, 2.3vw, 30px); border: 1px solid rgba(255,255,255,.16); box-shadow: 0 10px 24px rgba(18,35,51,.12); transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.v3-home .v3-hero-story::before { position: absolute; z-index: 1; top: 22px; bottom: 22px; left: 0; width: 4px; border-radius: 0 4px 4px 0; background: #74b9ff; content: ''; }
.v3-home .v3-hero-story--green::before { background: #a7d27c; }
.v3-home .v3-hero-story > * { z-index: 2; }
.v3-home .v3-hero-story .v3-eyebrow { width: fit-content; margin: 0; padding: 5px 8px; border: 1px solid rgba(255,241,212,.28); border-radius: 999px; background: rgba(255,255,255,.08); font-size: 11px; letter-spacing: .07em; }
.v3-home .v3-hero-story h2 { display: -webkit-box; overflow: hidden; margin: 13px 0 9px; font-size: clamp(21px, 1.8vw, 28px); line-height: 1.24; -webkit-box-orient: vertical; -webkit-line-clamp: 2; text-wrap: balance; }
.v3-home .v3-hero-story p { display: -webkit-box; overflow: hidden; margin: 0; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.v3-home .v3-focus:focus-within, .v3-home .v3-hero-story:focus-visible { outline: 3px solid rgba(116,185,255,.82); outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) {
  .v3-home .v3-focus:hover { transform: translateY(-3px); box-shadow: 0 24px 46px rgba(18,35,51,.24); }
  .v3-home .v3-focus:hover .v3-focus-visual img { transform: scale(1.035); }
  .v3-home .v3-hero-story:hover { transform: translateY(-3px); border-color: rgba(255,255,255,.38); box-shadow: 0 18px 30px rgba(18,35,51,.22); }
}
@media (min-width: 901px) {
  .v3-home .v3-hero-side { grid-template-rows: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 681px) and (max-width: 900px) {
  .v3-home .v3-hero-story { min-height: 184px; }
}
@media (max-width: 680px) {
  .v3-home .v3-hero { gap: 14px; }
  .v3-home .v3-focus { min-height: 0; }
  .v3-home .v3-focus-copy { padding: 30px 22px; }
  .v3-home .v3-focus .v3-eyebrow { padding: 5px 8px; }
  .v3-home .v3-focus h1 { max-width: none; margin: 14px 0 12px; font-size: clamp(34px, 10vw, 46px); }
  .v3-home .v3-focus p { -webkit-line-clamp: 2; }
  .v3-home .v3-focus .v3-button { margin-top: 20px; }
  .v3-home .v3-hero-side { gap: 12px; }
  .v3-home .v3-hero-story { min-height: 148px; padding: 19px 20px 19px 23px; }
  .v3-home .v3-hero-story::before { top: 18px; bottom: 18px; width: 3px; }
  .v3-home .v3-hero-story h2 { margin: 11px 0 7px; font-size: 20px; }
}

/* Homepage ticker: a compact, scan-friendly rail that keeps full titles available on click. */
.v3-home .v3-ticker { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 14px; min-height: 56px; padding: 7px 13px 7px 8px; overflow: hidden; border: 1px solid #dce5ec; border-radius: 12px; background: linear-gradient(90deg, #f7fafc, #ffffff); box-shadow: 0 8px 20px rgba(24,34,46,.045); }
.v3-home .v3-ticker-label { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 0 12px; border-radius: 8px; background: var(--v3-navy); color: #fff; font-size: 12px; letter-spacing: .08em; white-space: nowrap; }
.v3-home .v3-ticker-track { display: flex; min-width: 0; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.v3-home .v3-ticker-track::-webkit-scrollbar { display: none; }
.v3-home .v3-ticker-story { display: flex; flex: 0 0 100%; align-items: center; min-width: 0; gap: 12px; padding: 6px 0; color: var(--v3-ink); font-size: 14px; font-weight: 750; line-height: 1.45; scroll-snap-align: start; text-decoration: none; transition: color .16s ease; }
.v3-home .v3-ticker-story span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.v3-home .v3-ticker-story b { flex: 0 0 auto; color: var(--v3-blue); font-size: 17px; font-weight: 700; transition: transform .16s ease; }
.v3-home .v3-ticker-story:hover { color: var(--v3-blue); }
.v3-home .v3-ticker-story:hover b { transform: translateX(3px); }
.v3-home .v3-ticker-story:focus-visible { outline: 3px solid color-mix(in srgb, var(--v3-blue) 40%, white); outline-offset: -2px; border-radius: 7px; }
@media (max-width: 680px) {
  .v3-home .v3-ticker { gap: 10px; min-height: 52px; padding: 7px 10px 7px 7px; border-radius: 10px; }
  .v3-home .v3-ticker-label { min-height: 34px; padding: 0 9px; font-size: 11px; }
  .v3-home .v3-ticker-story { gap: 8px; font-size: 13px; }
  .v3-home .v3-ticker-story b { font-size: 15px; }
}

/* Navigation polish: align the brand, routes and utility actions into one compact editorial bar. */
.v3-nav { position: relative; gap: clamp(16px, 2vw, 28px); min-height: 72px; padding: 0 max(24px, calc((100vw - var(--v3-page-width, 1240px)) / 2)); border-bottom-color: #dfe6eb; background: rgba(255,255,255,.96); box-shadow: 0 7px 20px rgba(24,34,46,.045); }
.v3-nav::after { position: absolute; right: 0; bottom: -1px; left: 0; height: 1px; background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--v3-blue) 24%, transparent), transparent); content: ''; }
.v3-brand { display: inline-flex; flex: 0 0 auto; align-items: center; min-width: 0; }
.v3-brand-logo { height: 30px; max-width: 156px; }
.v3-nav-links { align-self: stretch; align-items: stretch; gap: 4px; color: #4c5a66; font-size: 15px; font-weight: 700; }
.v3-nav-link { position: relative; display: inline-flex; align-items: center; padding: 0 11px; white-space: nowrap; transition: color .16s ease, background-color .16s ease; }
.v3-nav-link::after { position: absolute; right: 11px; bottom: 0; left: 11px; height: 3px; border-radius: 3px 3px 0 0; background: var(--v3-blue); content: ''; opacity: 0; transform: scaleX(.45); transition: opacity .16s ease, transform .16s ease; }
.v3-nav-link:hover { color: var(--v3-blue); background: color-mix(in srgb, var(--v3-blue) 6%, transparent); }
.v3-nav-link:hover::after, .v3-nav-link.is-active::after { opacity: 1; transform: scaleX(1); }
.v3-nav-link.is-active { color: var(--v3-blue); font-weight: 800; }
.v3-nav-search { display: inline-flex; align-items: center; gap: 7px; min-height: 36px; margin-left: auto; padding: 0 12px; border: 1px solid #dce5eb; border-radius: 9px; background: #f8fafc; color: #687782; font-size: 13px; line-height: 1; transition: border-color .16s ease, color .16s ease, background-color .16s ease, box-shadow .16s ease; }
.v3-nav-search::before { width: 12px; height: 12px; border: 1.8px solid currentColor; border-radius: 50%; box-sizing: border-box; content: ''; }
.v3-nav-search::after { width: 6px; height: 1.8px; margin-left: -10px; margin-top: 10px; border-radius: 2px; background: currentColor; content: ''; transform: rotate(45deg); }
.v3-nav-search:hover { border-color: color-mix(in srgb, var(--v3-blue) 40%, #dce5eb); background: #fff; color: var(--v3-blue); box-shadow: 0 5px 14px rgba(47,111,237,.10); }
.v3-nav-user { display: inline-flex; align-items: center; min-height: 36px; padding: 0 12px; border: 1px solid color-mix(in srgb, var(--v3-blue) 18%, #dce5eb); border-radius: 9px; background: color-mix(in srgb, var(--v3-blue) 7%, #fff); color: var(--v3-blue); font-size: 13px; font-weight: 800; line-height: 1; transition: background-color .16s ease, border-color .16s ease, transform .16s ease; }
.v3-nav-user:hover { border-color: var(--v3-blue); background: var(--v3-blue); color: #fff; transform: translateY(-1px); }
.v3-nav-link:focus-visible, .v3-nav-search:focus-visible, .v3-nav-user:focus-visible { z-index: 1; outline: 3px solid color-mix(in srgb, var(--v3-blue) 42%, white); outline-offset: 3px; border-radius: 8px; }
@media (max-width: 900px) and (min-width: 681px) {
  .v3-nav { gap: 13px; padding-right: 20px; padding-left: 20px; }
  .v3-nav-links { gap: 0; }
  .v3-nav-link { padding-right: 8px; padding-left: 8px; font-size: 14px; }
  .v3-nav-link::after { right: 8px; left: 8px; }
  .v3-nav-search { max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}
@media (max-width: 680px) {
  .v3-nav { min-height: 62px; gap: 10px; padding-right: 14px; padding-left: 14px; box-shadow: 0 5px 14px rgba(24,34,46,.04); }
  .v3-nav::after { display: none; }
  .v3-brand-logo { height: 26px; max-width: 130px; }
  .v3-nav-links { align-self: auto; gap: 12px; padding: 2px 0 11px; }
  .v3-nav-link { min-height: 34px; padding: 0; }
  .v3-nav-link::after { right: 0; left: 0; height: 2px; }
  .v3-nav-user { min-height: 34px; padding: 0 10px; font-size: 12px; }
}
/* Keep the mobile header compact: search remains available from the drawer instead of forcing a third row. */
@media (max-width: 680px) {
  .v3-nav-search { display: none; }
}
/* Primary navigation submenu: inherit the route alignment and expose child categories in a clear popover. */
.v3-nav-menu { position: relative; display: inline-flex; align-self: stretch; flex: 0 0 auto; }
.v3-nav-menu > summary { display: inline-flex; align-items: center; gap: 7px; height: 100%; padding: 0 11px; color: #4c5a66; cursor: pointer; font-size: 15px; font-weight: 700; line-height: 1; list-style: none; outline: none; transition: color .16s ease, background-color .16s ease; }
.v3-nav-menu > summary::-webkit-details-marker { display: none; }
.v3-nav-menu > summary::after { width: 0; height: 0; border-top: 5px solid currentColor; border-right: 4px solid transparent; border-left: 4px solid transparent; content: ''; opacity: .7; transition: transform .18s ease, opacity .18s ease; }
.v3-nav-menu > summary:hover, .v3-nav-menu[open] > summary { color: var(--v3-blue); background: color-mix(in srgb, var(--v3-blue) 6%, transparent); }
.v3-nav-menu[open] > summary::after { opacity: 1; transform: rotate(180deg); }
.v3-nav-menu > summary:focus-visible { z-index: 1; outline: 3px solid color-mix(in srgb, var(--v3-blue) 42%, white); outline-offset: -3px; }
.v3-nav-menu > span { position: absolute; z-index: 60; top: calc(100% + 9px); left: 50%; display: grid; min-width: 178px; padding: 7px; border: 1px solid #dce5eb; border-radius: 12px; background: rgba(255,255,255,.98); box-shadow: 0 16px 34px rgba(24,34,46,.16); opacity: 0; pointer-events: none; transform: translate(-50%, -7px); transition: opacity .16s ease, transform .16s ease; }
.v3-nav-menu > span::before { position: absolute; top: -6px; left: 50%; width: 10px; height: 10px; border-top: 1px solid #dce5eb; border-left: 1px solid #dce5eb; background: #fff; content: ''; transform: translateX(-50%) rotate(45deg); }
.v3-nav-menu[open] > span { opacity: 1; pointer-events: auto; transform: translate(-50%, 0); }
.v3-nav-menu > span a { position: relative; display: flex; align-items: center; min-height: 42px; padding: 0 12px; border-radius: 8px; color: var(--v3-ink); font-size: 14px; font-weight: 700; line-height: 1.35; transition: color .15s ease, background-color .15s ease, transform .15s ease; }
.v3-nav-menu > span a::after { margin-left: auto; color: var(--v3-blue); content: '→'; opacity: 0; transform: translateX(-4px); transition: opacity .15s ease, transform .15s ease; }
.v3-nav-menu > span a:hover { background: color-mix(in srgb, var(--v3-blue) 8%, #fff); color: var(--v3-blue); transform: translateX(2px); }
.v3-nav-menu > span a:hover::after { opacity: 1; transform: translateX(0); }
.v3-nav-menu > span a:focus-visible { outline: 3px solid color-mix(in srgb, var(--v3-blue) 42%, white); outline-offset: -2px; }
@media (max-width: 900px) and (min-width: 681px) {
  .v3-nav-menu > summary { padding-right: 8px; padding-left: 8px; font-size: 14px; }
}
@media (max-width: 680px) {
  .v3-nav-menu { align-self: auto; }
  .v3-nav-menu > summary { min-height: 34px; padding: 0; font-size: 14px; }
  .v3-nav-menu > span { top: calc(100% + 6px); left: 0; min-width: 164px; transform: translate(0, -7px); }
  .v3-nav-menu > span::before { left: 20px; }
  .v3-nav-menu[open] > span { transform: translate(0, 0); }
  .v3-nav-drawer-child { padding-left: 20px !important; color: var(--v3-muted); font-size: 14px; }
}
/* Footer polish: give the brand and navigation groups a deliberate editorial rhythm. */
.v3-footer { position: relative; overflow: hidden; padding: clamp(42px, 5vw, 64px) 24px; background: linear-gradient(135deg, #142a40 0%, var(--v3-navy) 58%, #182f45 100%); }
.v3-footer::before { position: absolute; top: 0; right: max(24px, calc((100vw - var(--v3-page-width, 1240px)) / 2)); left: max(24px, calc((100vw - var(--v3-page-width, 1240px)) / 2)); height: 1px; background: linear-gradient(90deg, transparent, rgba(205,225,239,.42), transparent); content: ''; }
.v3-footer-inner { grid-template-columns: minmax(260px, 1.35fr) repeat(3, minmax(130px, .72fr)); gap: clamp(24px, 4vw, 58px); align-items: start; max-width: var(--v3-page-width, 1240px); }
.v3-footer-inner > :first-child { position: relative; min-width: 0; padding-right: clamp(22px, 3vw, 46px); }
.v3-footer-inner > :first-child::after { position: absolute; top: 2px; right: 0; bottom: 2px; width: 1px; background: linear-gradient(180deg, transparent, rgba(202,222,234,.38) 15%, rgba(202,222,234,.38) 85%, transparent); content: ''; }
.v3-footer .v3-brand { display: inline-flex; align-items: center; font-size: clamp(26px, 2.1vw, 31px); color: #fff; }
.v3-footer .v3-brand-mark { width: 29px; height: 29px; margin-right: 6px; border-radius: 9px; background: var(--v3-secondary, #ef7d32); box-shadow: 0 6px 15px rgba(239,125,50,.24); font-size: 16px; }
.v3-footer-inner > :first-child > p { max-width: 28em; margin: 18px 0 0; color: #c5d5df; font-size: 15px; line-height: 1.75; }
.v3-footer h3 { position: relative; margin: 3px 0 15px; padding-bottom: 10px; color: #fff; font-size: 14px; font-weight: 800; letter-spacing: .08em; }
.v3-footer h3::after { position: absolute; bottom: 0; left: 0; width: 24px; height: 2px; border-radius: 2px; background: var(--v3-secondary, #ef7d32); content: ''; }
.v3-footer a { display: flex; align-items: center; width: fit-content; max-width: 100%; min-height: 28px; margin: 4px 0; color: #c9d8e1; font-size: 14px; font-weight: 600; line-height: 1.45; transition: color .16s ease, transform .16s ease; }
.v3-footer a::before { width: 0; height: 1px; margin-right: 0; background: var(--v3-secondary, #ef7d32); content: ''; transition: width .16s ease, margin-right .16s ease; }
.v3-footer a:hover { color: #fff; transform: translateX(3px); }
.v3-footer a:hover::before { width: 10px; margin-right: 7px; }
.v3-footer a:focus-visible { outline: 3px solid color-mix(in srgb, var(--v3-secondary, #ef7d32) 55%, white); outline-offset: 3px; border-radius: 4px; }
.v3-footer-child-link { padding-left: 12px; color: #aebfcb !important; font-size: 13px !important; }
@media (max-width: 900px) {
  .v3-footer-inner { grid-template-columns: minmax(220px, 1.15fr) repeat(3, minmax(116px, 1fr)); gap: 24px; }
}
@media (max-width: 680px) {
  .v3-footer { padding: 36px 18px calc(36px + env(safe-area-inset-bottom)); }
  .v3-footer::before { right: 18px; left: 18px; }
  .v3-footer-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 22px; }
  .v3-footer-inner > :first-child { grid-column: 1 / -1; padding: 0 0 23px; border-bottom: 1px solid rgba(202,222,234,.22); }
  .v3-footer-inner > :first-child::after { display: none; }
  .v3-footer-inner > :first-child > p { margin-top: 13px; font-size: 14px; }
  .v3-footer h3 { margin-bottom: 11px; font-size: 13px; }
  .v3-footer a { min-height: 30px; margin: 2px 0; font-size: 14px; }
}

/* P11 approved bright information-card game-detail hero. */
.v3-page--detail .v3-detail-hero { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); align-items: stretch; overflow: hidden; border: 1px solid #cbdde5; border-radius: 16px; background: #fff; box-shadow: 0 18px 38px rgba(35, 68, 84, .14); color: var(--v3-ink); }
.v3-page--detail .v3-detail-hero::after { display: none; }
.v3-page--detail .v3-detail-primary { min-height: 500px; aspect-ratio: auto; background: #d7e5e9; }
.v3-page--detail .v3-detail-primary img { height: 100%; object-fit: cover; }
.v3-page--detail .v3-detail-copy { display: flex; flex-direction: column; justify-content: center; margin-top: 0; padding: clamp(30px, 4vw, 56px); background: #fff; color: var(--v3-ink); }
.v3-page--detail .v3-detail-kicker { align-items: center; justify-content: space-between; gap: 18px; }
.v3-page--detail .v3-detail-kicker .v3-eyebrow { color: #607b89; letter-spacing: .08em; }
.v3-page--detail .v3-detail-title { margin: 14px 0 16px; color: #173343; font-size: clamp(36px, 4.1vw, 56px); letter-spacing: -.025em; }
.v3-page--detail .v3-detail-copy p { color: #607783; font-size: 16px; line-height: 1.82; }
.v3-page--detail .v3-detail-score { flex: 0 0 auto; color: #d89631; font-size: 34px; }
.v3-page--detail .v3-detail-score small { color: #718691; }
.v3-page--detail .v3-detail-decision-points { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 24px; }
.v3-page--detail .v3-detail-decision-points li { min-height: 78px; padding: 13px; border-color: #cbdce4; border-radius: 10px; background: #fafdfe; }
.v3-page--detail .v3-detail-decision-points span { color: #748b96; font-size: 12px; }
.v3-page--detail .v3-detail-decision-points strong { color: #193542; font-size: 14px; }
.v3-page--detail .v3-detail-actions { gap: 12px; margin-top: 24px; }
.v3-page--detail .v3-detail-actions .v3-button { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 22px; border-radius: 9px; }
.v3-page--detail .v3-detail-actions .v3-button:first-child { background: #2d78ee; box-shadow: 0 8px 18px rgba(45, 120, 238, .22); }
.v3-page--detail .v3-detail-actions .v3-button--line { border-color: #a8bec8; background: #fff; color: #284756; }
.v3-page--detail .v3-detail-actions .v3-button--line:hover { border-color: #2d78ee; background: #f4f9ff; color: #1f63ce; }
@media (max-width: 960px) { .v3-page--detail .v3-detail-hero { grid-template-columns: minmax(260px, .82fr) minmax(0, 1fr); } .v3-page--detail .v3-detail-primary { min-height: 440px; } .v3-page--detail .v3-detail-copy { padding: 32px; } .v3-page--detail .v3-detail-decision-points { grid-template-columns: 1fr 1fr; } }
@media (max-width: 680px) { .v3-page--detail .v3-detail-hero { grid-template-columns: 1fr; border-radius: 13px; } .v3-page--detail .v3-detail-primary { min-height: 250px; } .v3-page--detail .v3-detail-copy { padding: 28px 22px 26px; } .v3-page--detail .v3-detail-kicker { align-items: flex-start; } .v3-page--detail .v3-detail-title { margin: 12px 0; font-size: 38px; } .v3-page--detail .v3-detail-decision-points { grid-template-columns: 1fr; margin-top: 20px; } .v3-page--detail .v3-detail-decision-points li { min-height: 0; } .v3-page--detail .v3-detail-actions .v3-button { flex: 1 1 100%; } }

/* P12 compact game detail and horizontal screenshot rail. */
.v3-page--detail .v3-detail-hero { min-height: 380px; }
.v3-page--detail .v3-detail-primary { min-height: 380px; }
.v3-page--detail .v3-detail-copy { padding: clamp(24px, 3vw, 38px); }
.v3-page--detail .v3-detail-title { margin: 8px 0 10px; font-size: clamp(34px, 3.5vw, 48px); }
.v3-page--detail .v3-detail-copy p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; font-size: 15px; line-height: 1.68; }
.v3-page--detail .v3-detail-decision-points { gap: 8px; margin-top: 16px; }
.v3-page--detail .v3-detail-decision-points li { min-height: 64px; padding: 9px 11px; }
.v3-page--detail .v3-detail-decision-points span { margin-bottom: 3px; }
.v3-page--detail .v3-detail-actions { gap: 10px; margin-top: 16px; }
.v3-page--detail .v3-detail-actions .v3-button { min-height: 46px; padding: 0 18px; }
.v3-page--detail .v3-detail-actions .v3-button--line { width: auto; }
.v3-page--detail .v3-screens { display: block; margin-top: 18px; padding: 0; background: transparent; }
.v3-page--detail .v3-screens-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 10px; }
.v3-page--detail .v3-screens h2 { margin: 0; color: #173343; font-family: Georgia, "Songti SC", serif; font-size: 24px; }
.v3-page--detail .v3-screens-controls { display: flex; gap: 8px; }
.v3-page--detail .v3-screens-control { display: grid; width: 34px; height: 34px; padding: 0; place-items: center; border: 1px solid #b8cbd3; border-radius: 50%; background: #fff; color: #1d4253; font-size: 25px; line-height: 1; cursor: pointer; }
.v3-page--detail .v3-screens-control:hover, .v3-page--detail .v3-screens-control:focus-visible { border-color: #2d78ee; background: #f2f8ff; color: #1f63ce; outline: none; }
.v3-page--detail .v3-screens-rail { display: flex; gap: 12px; overflow-x: auto; padding: 2px 1px 12px; scroll-snap-type: x mandatory; scrollbar-color: #a9c0cb transparent; scrollbar-width: thin; }
.v3-page--detail .v3-screens-rail > figure { flex: 0 0 calc((100% - 24px) / 3.3); margin: 0; overflow: hidden; border-radius: 10px; background: #d7e5e9; scroll-snap-align: start; }
.v3-page--detail .v3-screens-rail img { display: block; width: 100%; aspect-ratio: 16 / 9; border-radius: 0; object-fit: cover; transition: transform .24s ease; }
.v3-page--detail .v3-screens-rail > figure:hover img { transform: scale(1.03); }
.v3-page--detail .v3-screens-rail:focus-visible { outline: 3px solid rgba(45, 120, 238, .3); outline-offset: 3px; }
@media (max-width: 960px) { .v3-page--detail .v3-detail-hero, .v3-page--detail .v3-detail-primary { min-height: 350px; } .v3-page--detail .v3-detail-copy { padding: 26px; } .v3-page--detail .v3-detail-decision-points li { min-height: 60px; } .v3-page--detail .v3-screens-rail > figure { flex-basis: calc((100% - 12px) / 2.2); } }
@media (max-width: 680px) { .v3-page--detail .v3-detail-primary { min-height: 220px; } .v3-page--detail .v3-detail-copy { padding: 22px 20px 20px; } .v3-page--detail .v3-detail-copy p { -webkit-line-clamp: 3; } .v3-page--detail .v3-detail-actions { flex-wrap: nowrap; } .v3-page--detail .v3-detail-actions .v3-button { flex: 1 1 0; min-width: 0; padding: 0 12px; font-size: 14px; } .v3-page--detail .v3-detail-actions .v3-button--line { width: auto; } .v3-page--detail .v3-screens { margin-top: 16px; } .v3-page--detail .v3-screens h2 { font-size: 21px; } .v3-page--detail .v3-screens-rail { gap: 10px; padding-bottom: 10px; } .v3-page--detail .v3-screens-rail > figure { flex-basis: 84%; } }


/* Detail-card downloads prioritize the first valid entry while retaining every published link. */
.v3-facts-panel .v3-download-actions { margin-top: 28px; padding: 18px; border: 1px solid #dce7fb; border-radius: 12px; background: linear-gradient(145deg, #f8fbff, #f2f6ff); }
.v3-facts-panel .v3-download-actions__heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 13px; }
.v3-facts-panel .v3-download-actions h3 { margin: 0; color: var(--v3-ink); font-size: 18px; line-height: 1.25; }
.v3-facts-panel .v3-download-actions__help { margin: 0; color: var(--v3-muted); font-size: 12px; line-height: 1.5; text-align: right; }
.v3-facts-panel .v3-download-actions__button { display: flex; width: 100%; min-height: 50px; margin: 10px 0 0; border-radius: 10px; font-size: 16px; text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease; }
.v3-facts-panel .v3-download-actions__button--primary { margin-top: 0; box-shadow: 0 8px 18px rgba(45, 120, 238, .22); }
.v3-facts-panel .v3-download-actions__button--primary:hover { transform: translateY(-1px); box-shadow: 0 11px 22px rgba(45, 120, 238, .28); }
.v3-facts-panel .v3-download-actions__button--secondary { border-color: #bfd2f8; background: #fff; color: #285fc5; }
.v3-facts-panel .v3-download-actions__button--secondary:hover { background: #edf4ff; }
@media (max-width: 680px) { .v3-facts-panel .v3-download-actions { margin-top: 22px; padding: 16px; } .v3-facts-panel .v3-download-actions__button { min-height: 52px; } }
/* Related guides are an editorial reading path; recommendation data remains theme-controlled. */
.v3-page--detail .v3-related-guides { margin-top: 40px; }
.v3-page--detail .v3-related-guides__head { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 10px; }
.v3-page--detail .v3-related-guides__head .v3-eyebrow { margin: 0 0 5px; color: #3674df; font-size: 11px; font-weight: 800; letter-spacing: .09em; }
.v3-page--detail .v3-related-guides h2 { margin: 0; color: #173343; font-family: Georgia, "Songti SC", serif; font-size: clamp(25px, 2.4vw, 31px); }
.v3-page--detail .v3-related-guides__all { display: inline-flex; align-items: center; gap: 6px; color: #2867d4; font-size: 14px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.v3-page--detail .v3-related-guides__all:hover { color: #174fae; }
.v3-page--detail .v3-related-guides__intro { margin: 0 0 16px; color: #687b86; font-size: 14px; line-height: 1.65; }
.v3-page--detail .v3-related-guides__list { display: grid; gap: 12px; }
.v3-page--detail .v3-related-guide { display: grid; grid-template-columns: 178px minmax(0, 1fr); gap: 17px; min-width: 0; padding: 12px; border: 1px solid #dde6e9; border-radius: 13px; background: #fff; box-shadow: 0 7px 16px rgba(35, 60, 74, .045); color: inherit; text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.v3-page--detail .v3-related-guide:hover { transform: translateY(-2px); border-color: #a9c9f2; box-shadow: 0 12px 25px rgba(41, 96, 173, .12); }
.v3-page--detail .v3-related-guide:focus-visible { outline: 3px solid rgba(45, 120, 238, .35); outline-offset: 3px; }
.v3-page--detail .v3-related-guide__cover { position: relative; min-height: 116px; overflow: hidden; border-radius: 9px; background: linear-gradient(135deg, #d9e5e9, #afc6cf); }
.v3-page--detail .v3-related-guide__cover img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .22s ease; }
.v3-page--detail .v3-related-guide:hover .v3-related-guide__cover img { transform: scale(1.04); }
.v3-page--detail .v3-related-guide__tag { position: absolute; bottom: 8px; left: 8px; padding: 4px 7px; border-radius: 5px; background: rgba(13, 36, 56, .78); color: #fff; font-size: 11px; font-weight: 800; line-height: 1; }
.v3-page--detail .v3-related-guide__body { display: flex; flex-direction: column; min-width: 0; padding: 2px 2px 1px 0; }
.v3-page--detail .v3-related-guide h3 { display: -webkit-box; overflow: hidden; margin: 0; color: #193542; font-size: 18px; line-height: 1.42; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.v3-page--detail .v3-related-guide__summary { display: -webkit-box; overflow: hidden; margin: 7px 0 0; color: #687b86; font-size: 14px; line-height: 1.65; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.v3-page--detail .v3-related-guide__continue { margin-top: auto; padding-top: 9px; color: #2d70df; font-size: 13px; font-weight: 800; }
.v3-page--detail .v3-related-guide__continue span { display: inline-block; transition: transform .18s ease; }
.v3-page--detail .v3-related-guide:hover .v3-related-guide__continue span { transform: translateX(3px); }
@media (max-width: 680px) { .v3-page--detail .v3-related-guides { margin-top: 32px; } .v3-page--detail .v3-related-guides__head { align-items: start; } .v3-page--detail .v3-related-guides h2 { font-size: 24px; } .v3-page--detail .v3-related-guides__all { padding-top: 6px; font-size: 13px; } .v3-page--detail .v3-related-guides__intro { margin-bottom: 13px; } .v3-page--detail .v3-related-guide { grid-template-columns: 108px minmax(0, 1fr); gap: 12px; padding: 10px; } .v3-page--detail .v3-related-guide__cover { min-height: 86px; } .v3-page--detail .v3-related-guide h3 { font-size: 15px; } .v3-page--detail .v3-related-guide__summary { display: none; } .v3-page--detail .v3-related-guide__continue { padding-top: 7px; font-size: 12px; } }
/* Related games surface existing rating and platform data without changing recommendation selection. */
.v3-page--detail .v3-related-games { margin-top: 40px; }
.v3-page--detail .v3-related-games__head { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 10px; }
.v3-page--detail .v3-related-games__head .v3-eyebrow { margin: 0 0 5px; color: #3674df; font-size: 11px; font-weight: 800; letter-spacing: .09em; }
.v3-page--detail .v3-related-games h2 { margin: 0; color: #173343; font-family: Georgia, "Songti SC", serif; font-size: clamp(25px, 2.4vw, 31px); }
.v3-page--detail .v3-related-games__all { display: inline-flex; align-items: center; gap: 6px; color: #2867d4; font-size: 14px; font-weight: 800; text-decoration: none; white-space: nowrap; }
.v3-page--detail .v3-related-games__all:hover { color: #174fae; }
.v3-page--detail .v3-related-games__intro { margin: 0 0 16px; color: #687b86; font-size: 14px; line-height: 1.65; }
.v3-page--detail .v3-related-games__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.v3-page--detail .v3-related-game { display: grid; grid-template-columns: 124px minmax(0, 1fr); gap: 12px; min-width: 0; padding: 10px; border: 1px solid #dde6e9; border-radius: 12px; background: #fff; box-shadow: 0 7px 16px rgba(35, 60, 74, .045); color: inherit; text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.v3-page--detail .v3-related-game:hover { transform: translateY(-2px); border-color: #a9c9f2; box-shadow: 0 12px 25px rgba(41, 96, 173, .12); }
.v3-page--detail .v3-related-game:focus-visible { outline: 3px solid rgba(45, 120, 238, .35); outline-offset: 3px; }
.v3-page--detail .v3-related-game__cover { position: relative; min-height: 94px; overflow: hidden; border-radius: 8px; background: linear-gradient(135deg, #d9e5e9, #afc6cf); }
.v3-page--detail .v3-related-game__cover img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .22s ease; }
.v3-page--detail .v3-related-game:hover .v3-related-game__cover img { transform: scale(1.04); }
.v3-page--detail .v3-related-game__rating { position: absolute; right: 7px; bottom: 7px; padding: 4px 6px; border-radius: 5px; background: rgba(255,255,255,.94); color: #a25d00; font-size: 11px; font-weight: 900; line-height: 1; box-shadow: 0 2px 7px rgba(21,35,49,.18); }
.v3-page--detail .v3-related-game__body { display: flex; flex-direction: column; min-width: 0; padding: 2px 1px; }
.v3-page--detail .v3-related-game h3 { display: -webkit-box; overflow: hidden; margin: 0; color: #193542; font-size: 16px; line-height: 1.42; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.v3-page--detail .v3-related-game__platforms { display: -webkit-box; overflow: hidden; margin: 6px 0 0; color: #687b86; font-size: 12px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
.v3-page--detail .v3-related-game__continue { margin-top: auto; padding-top: 8px; color: #2d70df; font-size: 12px; font-weight: 800; }
.v3-page--detail .v3-related-game__continue span { display: inline-block; transition: transform .18s ease; }
.v3-page--detail .v3-related-game:hover .v3-related-game__continue span { transform: translateX(3px); }
@media (max-width: 680px) { .v3-page--detail .v3-related-games { margin-top: 32px; } .v3-page--detail .v3-related-games__head { align-items: start; } .v3-page--detail .v3-related-games h2 { font-size: 24px; } .v3-page--detail .v3-related-games__all { padding-top: 6px; font-size: 13px; } .v3-page--detail .v3-related-games__intro { margin-bottom: 13px; } .v3-page--detail .v3-related-games__list { grid-template-columns: 1fr; gap: 10px; } .v3-page--detail .v3-related-game { grid-template-columns: 108px minmax(0, 1fr); gap: 12px; } .v3-page--detail .v3-related-game__cover { min-height: 82px; } .v3-page--detail .v3-related-game h3 { font-size: 15px; } }
.v3-comments { background: var(--v3-card, #fff); border: 1px solid color-mix(in srgb, var(--v3-blue) 14%, #d9e1ec); border-radius: var(--v3-card-radius); box-shadow: 0 12px 32px rgba(23, 43, 77, .06); padding: clamp(20px, 4vw, 32px); }
.v3-comments__head { align-items: end; display: flex; gap: 20px; justify-content: space-between; margin-bottom: 20px; }
.v3-comments__head h2 { margin: 4px 0 0; }
.v3-comments__head h2 span { color: var(--v3-blue); font-size: .72em; }
.v3-comments__head > p { color: var(--v3-muted, #6d7890); margin: 0; }
.v3-comments__list { border-bottom: 1px solid #e8edf4; margin-bottom: 20px; max-height: 520px; overflow-y: auto; }
.v3-comments__status, .v3-comments__empty { color: var(--v3-muted, #6d7890); margin: 0 0 20px; text-align: center; }
.v3-comments__status--error { color: #bc3c3c; }
.v3-comment { border-top: 1px solid #edf1f6; padding: 16px 0; }
.v3-comment:first-child { border-top: 0; }
.v3-comment header { align-items: center; display: flex; gap: 12px; justify-content: space-between; }
.v3-comment time { color: var(--v3-muted, #6d7890); font-size: .82rem; }
.v3-comment p { line-height: 1.75; margin: 9px 0 0; overflow-wrap: anywhere; }
.v3-comments__form { display: grid; gap: 10px; }
.v3-comments__form > label { font-weight: 700; }
.v3-comments textarea, .v3-comments__captcha input { background: #f8faff; border: 1px solid #d8e0ec; border-radius: 10px; box-sizing: border-box; color: inherit; font: inherit; width: 100%; }
.v3-comments textarea { min-height: 112px; padding: 12px 14px; resize: vertical; }
.v3-comments textarea:focus-visible, .v3-comments__captcha input:focus-visible, .v3-comments__captcha button:focus-visible { outline: 3px solid color-mix(in srgb, var(--v3-blue) 35%, transparent); outline-offset: 2px; }
.v3-comments__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; }
.v3-comments__captcha { align-items: center; display: flex; gap: 8px; }
.v3-comments__captcha input { height: 42px; padding: 0 10px; width: 108px; }
.v3-comments__captcha img { border: 1px solid #d8e0ec; border-radius: 8px; cursor: pointer; height: 40px; width: 96px; }
.v3-comments__captcha button { background: transparent; border: 0; color: var(--v3-blue); cursor: pointer; font: inherit; min-height: 42px; padding: 0 4px; }
.v3-comments__feedback { color: var(--v3-muted, #6d7890); margin: 0; min-height: 1.5em; }
@media (max-width: 680px) { .v3-comments { padding: 20px; } .v3-comments__head { align-items: start; flex-direction: column; gap: 6px; } .v3-comments__actions { align-items: stretch; flex-direction: column; } .v3-comments__captcha { justify-content: space-between; width: 100%; } .v3-comments__captcha input { flex: 1; } .v3-comments__actions .v3-button { width: 100%; } }
/* Switchable V3 game-library display styles. */
.v3-library-grid.v3-library--style-balanced { grid-template-columns:repeat(4,minmax(0,1fr)); }
.v3-library--columns-3 .v3-library-grid.v3-library--style-balanced { grid-template-columns:repeat(3,minmax(0,1fr)); }
.v3-library--columns-5 .v3-library-grid.v3-library--style-balanced { grid-template-columns:repeat(5,minmax(0,1fr)); }
.v3-library--style-featured { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr); gap:20px; align-items:start; }
.v3-library--style-featured .v3-library-stream { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; min-width:0; }
.v3-library--style-compact { display:block; }
.v3-library--style-compact .v3-library-stream { display:grid; gap:12px; grid-template-columns:1fr; }
.v3-library--style-compact .v3-library-card--compact .v3-library-card-link { display:grid; grid-template-columns:176px minmax(0,1fr); min-height:132px; }
.v3-library--style-compact .v3-library-card--compact .v3-library-cover { aspect-ratio:auto; min-height:132px; }
.v3-library--style-compact .v3-library-card--compact .v3-library-card-body { align-content:center; display:grid; gap:8px; padding:17px 20px; }
.v3-library--style-compact .v3-library-card--compact .v3-library-platforms { margin-top:0; }
@media (max-width:680px) { .v3-library--style-balanced, .v3-library--style-featured { display:block; } .v3-library--style-balanced .v3-library-stream, .v3-library--style-featured .v3-library-stream { display:grid; grid-template-columns:1fr; margin-top:12px; } .v3-library--style-balanced .v3-library-lead .v3-library-card-link, .v3-library--style-featured .v3-library-lead .v3-library-card-link, .v3-library--style-compact .v3-library-card--compact .v3-library-card-link { grid-template-columns:124px minmax(0,1fr); min-height:116px; } .v3-library--style-balanced .v3-library-lead .v3-library-cover, .v3-library--style-featured .v3-library-lead .v3-library-cover, .v3-library--style-compact .v3-library-card--compact .v3-library-cover { min-height:116px; } .v3-library--style-compact .v3-library-card--compact .v3-library-card-body { display:block; padding:13px; } }
/* V3 adaptive thumbnail contract. */
.v3-card-cover,
.v3-article-cover,
.v3-article-list-cover,
.v3-library-cover,
.v3-rank-cover,
.v3-search-cover,
.v3-topic-list-cover,
.v3-taxonomy-cover,
.v3-category-cover,
.v3-topic-game-card > div,
.v3-topic-story-image,
.v3-author-article-cover,
.v3-compare-cover,
.v3-sitemap-card-cover,
.v3-related-guide__cover,
.v3-related-game__cover,
.v3-topic-card > div { overflow:hidden; }
.v3-card-cover img,
.v3-article-cover img,
.v3-article-list-cover img,
.v3-library-cover img,
.v3-rank-cover img,
.v3-search-cover img,
.v3-topic-list-cover img,
.v3-taxonomy-cover img,
.v3-category-cover img,
.v3-topic-game-card > div img,
.v3-topic-story-image img,
.v3-author-article-cover img,
.v3-compare-cover img,
.v3-sitemap-card-cover img,
.v3-related-guide__cover img,
.v3-related-game__cover img,
.v3-topic-card > div img { display:block; width:100%; height:100%; max-width:none; object-fit:cover; object-position:center center; }
/* A: equal-card library layout stays a continuous grid at every viewport. */
@media (max-width:680px) { .v3-library-grid.v3-library--style-balanced { display:grid; grid-template-columns:repeat(var(--v3-mobile-game-columns),minmax(0,1fr)); } .v3-library-grid.v3-library--style-balanced .v3-library-card-link { display:block; } }
/* Article thumbnails: an absent or failed image must never reserve a decorative empty frame. */
.v3-related-guide--without-cover, .v3-related-guide.v3-thumbnail--missing { grid-template-columns:1fr; }
.v3-related-guide.v3-thumbnail--missing .v3-related-guide__cover { display:none; }
.v3-article-list-card--without-cover .v3-article-list-cover, .v3-article-list-card.v3-thumbnail--missing .v3-article-list-cover { display:none; }
.v3-article-list-card--without-cover .v3-article-list-link, .v3-article-list-card.v3-thumbnail--missing .v3-article-list-link { display:block; min-height:0; }
.v3-article-list-card--without-cover .v3-article-list-body, .v3-article-list-card.v3-thumbnail--missing .v3-article-list-body { padding:20px; }
.v3-editorial-lead.v3-article-list-card--without-cover .v3-article-list-body, .v3-editorial-lead.v3-article-list-card.v3-thumbnail--missing .v3-article-list-body { min-height:0; }
.v3-article-workbench .v3-editorial-lead.v3-article-list-card--without-cover .v3-article-list-link, .v3-article-workbench .v3-editorial-lead.v3-article-list-card.v3-thumbnail--missing .v3-article-list-link { display:block; }


/* Article-detail related content: selectable card layouts. */
.v3-article-related .v3-article-related-card{display:block;min-width:0;overflow:hidden;border:1px solid var(--v3-line);border-radius:14px;background:var(--v3-surface);color:inherit;text-decoration:none;box-shadow:0 8px 22px rgba(31,59,75,.045);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.v3-article-related .v3-article-related-card:hover{transform:translateY(-3px);border-color:#a9c9f2;box-shadow:0 15px 30px rgba(41,96,173,.14)}.v3-article-related .v3-article-related-card:focus-visible{outline:3px solid rgba(45,120,238,.35);outline-offset:3px}.v3-article-related-card__cover{position:relative;overflow:hidden;background:linear-gradient(135deg,#d9e5e9,#afc6cf)}.v3-article-related--ratio-16x10 .v3-article-related-card__cover{aspect-ratio:16 / 10}.v3-article-related--ratio-3x2 .v3-article-related-card__cover{aspect-ratio:3 / 2}.v3-article-related--ratio-16x9 .v3-article-related-card__cover{aspect-ratio:16 / 9}.v3-article-related-card__cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .24s ease}.v3-article-related-card:hover .v3-article-related-card__cover img{transform:scale(1.045)}.v3-article-related-card__body{display:flex;flex-direction:column;min-height:170px;padding:17px}.v3-article-related-card__meta{color:var(--v3-muted);font-size:12px}.v3-article-related-card h3{display:-webkit-box;overflow:hidden;margin:9px 0 0;color:var(--v3-navy);font-size:18px;line-height:1.42;-webkit-box-orient:vertical;-webkit-line-clamp:2}.v3-article-related-card p{display:-webkit-box;overflow:hidden;margin:8px 0 0;color:var(--v3-muted);font-size:13px;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:2}.v3-article-related-card__continue{margin-top:auto;padding-top:13px;color:var(--v3-blue);font-size:13px;font-weight:800}.v3-article-related-card__continue span{display:inline-block;transition:transform .18s ease}.v3-article-related-card:hover .v3-article-related-card__continue span{transform:translateX(3px)}.v3-article-related--style-grid .v3-article-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.v3-article-related--style-stream .v3-article-related-stream{display:grid;gap:12px}.v3-article-related--style-stream .v3-article-related-card{display:grid;grid-template-columns:210px minmax(0,1fr)}.v3-article-related--style-stream .v3-article-related-card__cover{min-height:148px;height:100%}.v3-article-related--style-stream .v3-article-related-card__body{min-height:148px;padding:16px 18px}.v3-article-related--style-focus .v3-article-related-focus{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(270px,.84fr);gap:16px}.v3-article-related--style-focus .v3-article-related-focus__lead .v3-article-related-card{height:100%}.v3-article-related--style-focus .v3-article-related-focus__lead .v3-article-related-card__cover{min-height:250px}.v3-article-related--style-focus .v3-article-related-focus__lead .v3-article-related-card__body{min-height:190px;padding:22px}.v3-article-related--style-focus .v3-article-related-focus__lead h3{font-size:24px}.v3-article-related--style-focus .v3-article-related-focus__stream{display:grid;gap:12px}.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card{display:grid;grid-template-columns:124px minmax(0,1fr)}.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card__cover{min-height:112px;height:100%}.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card__body{min-height:112px;padding:13px}.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card p,.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card__continue{display:none}@media(max-width:900px){.v3-article-related--style-grid .v3-article-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v3-article-related--style-focus .v3-article-related-focus{grid-template-columns:1fr}.v3-article-related--style-focus .v3-article-related-focus__stream{grid-template-columns:repeat(2,minmax(0,1fr))}.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card{display:block}.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card__cover{min-height:0;height:auto}}@media(max-width:680px){.v3-article-related .v3-section-head{align-items:start}.v3-article-related--style-grid .v3-article-related-grid,.v3-article-related--style-focus .v3-article-related-focus__stream{grid-template-columns:1fr;gap:12px}.v3-article-related--style-stream .v3-article-related-card,.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card{display:grid;grid-template-columns:112px minmax(0,1fr)}.v3-article-related--style-stream .v3-article-related-card__cover,.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card__cover{min-height:96px;height:100%}.v3-article-related--style-stream .v3-article-related-card__body,.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card__body{min-height:96px;padding:12px}.v3-article-related-card__body{min-height:0;padding:15px}.v3-article-related-card h3{font-size:16px}.v3-article-related-card p{-webkit-line-clamp:2}.v3-article-related--style-focus .v3-article-related-focus__lead .v3-article-related-card__cover{min-height:0}.v3-article-related--style-focus .v3-article-related-focus__lead .v3-article-related-card__body{min-height:0;padding:18px}.v3-article-related--style-focus .v3-article-related-focus__lead h3{font-size:21px}}


/* V3 global thumbnail presentation: controlled by the theme console. */
.v3-library-cover,
.v3-article-list-cover,
.v3-search-cover,
.v3-category-cover,
.v3-taxonomy-cover,
.v3-topic-list-cover,
.v3-card-cover,
.v3-article-related-card__cover,
.v3-related-guide__cover,
.v3-related-game__cover,
.v3-rank-cover,
.v3-author-article-cover,
.v3-compare-cover,
.v3-sitemap-card-cover,
.v3-topic-game-card > div,
.v3-topic-story-image {
  aspect-ratio: var(--v3-thumbnail-ratio) !important;
  overflow: hidden;
  background: #eef2f3;
}
.v3-library-cover img,
.v3-article-list-cover img,
.v3-search-cover img,
.v3-category-cover img,
.v3-taxonomy-cover img,
.v3-topic-list-cover img,
.v3-card-cover img,
.v3-article-related-card__cover img,
.v3-related-guide__cover img,
.v3-related-game__cover img,
.v3-rank-cover img,
.v3-author-article-cover img,
.v3-compare-cover img,
.v3-sitemap-card-cover img,
.v3-topic-game-card > div img,
.v3-topic-story-image img {
  width: 100%;
  height: 100%;
  object-fit: var(--v3-thumbnail-fit);
  object-position: center;
}
.v3-library--style-compact .v3-library-card--compact .v3-library-card-link,
.v3-page--detail .v3-related-guide,
.v3-page--detail .v3-related-game,
.v3-article-related--style-stream .v3-article-related-card,
.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card {
  grid-template-columns:var(--v3-thumbnail-landscape-width) minmax(0, 1fr);
  min-width: 0;
  overflow: hidden;
}
.v3-library--style-compact .v3-library-cover,
.v3-page--detail .v3-related-guide__cover,
.v3-page--detail .v3-related-game__cover,
.v3-article-related--style-stream .v3-article-related-card__cover,
.v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card__cover {
  min-width: 0;
  min-height: 0;
  height: auto;
}
.v3-article-related-card__body,
.v3-page--detail .v3-related-guide__body,
.v3-page--detail .v3-related-game__body {
  min-width: 0;
}
@media (max-width: 680px) {
  .v3-library--style-compact .v3-library-card--compact .v3-library-card-link,
  .v3-page--detail .v3-related-guide,
  .v3-page--detail .v3-related-game,
  .v3-article-related--style-stream .v3-article-related-card,
  .v3-article-related--style-focus .v3-article-related-focus__stream .v3-article-related-card {
    grid-template-columns:var(--v3-thumbnail-mobile-width) minmax(0, 1fr);
  }
}


/* V3 horizontal list thumbnails fill the card height. */
.v3-article-list--style-compact .v3-article-list-cover,
.v3-article-list--list .v3-article-list-cover {
  align-self: stretch;
  min-height: 100%;
  height: auto;
  aspect-ratio:auto !important;
}
.v3-article-list--style-compact .v3-article-list-link,
.v3-article-list--list .v3-article-list-link {
  min-width: 0;
  overflow: hidden;
}
@media (max-width: 680px) {
  .v3-article-list--style-compact .v3-article-list-cover,
  .v3-article-list--list .v3-article-list-cover {
    min-height: 100%;
  }
}


/* V3 topic-card backdrops are overlays, not ratio-constrained thumbnails. */
.v3-topic-card > div { position:absolute; inset:0; aspect-ratio:auto !important; }

/* Configurable article-detail sidebar widgets. Empty widgets are not rendered. */
.v3-article-sidebar-widget { display: grid; gap: 12px; padding: 18px; border: 1px solid var(--v3-line); border-radius: 12px; background: var(--v3-surface); box-shadow: var(--v3-shadow); }
.v3-article-sidebar-widget h2 { margin: 0; color: var(--v3-ink); font-size: 16px; line-height: 1.35; }
.v3-article-sidebar-widget p { margin: 0; color: var(--v3-muted); font-size: 14px; line-height: 1.7; }
.v3-article-sidebar-widget__list { display: grid; gap: 10px; }
.v3-article-sidebar-widget__item { display: flex; align-items: center; gap: 10px; min-width: 0; color: inherit; text-decoration: none; }
.v3-article-sidebar-widget__item > span:last-child { display: grid; gap: 4px; min-width: 0; }
.v3-article-sidebar-widget__item strong { overflow: hidden; color: var(--v3-ink); font-size: 14px; line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }
.v3-article-sidebar-widget__item small { color: var(--v3-muted); font-size: 12px; }
.v3-article-sidebar-widget__thumb { flex: 0 0 76px; aspect-ratio: 16 / 10; overflow: hidden; border-radius: 8px; background: var(--v3-soft); }
.v3-article-sidebar-widget__thumb img, .v3-article-sidebar-widget__notice-image { display: block; width: 100%; height: 100%; object-fit: cover; }
.v3-article-sidebar-widget__notice-image { aspect-ratio: 16 / 10; border-radius: 8px; }
.v3-article-sidebar-widget__progress { height: 6px; overflow: hidden; border-radius: 999px; background: var(--v3-soft); }
.v3-article-sidebar-widget__progress span { display: block; width: var(--v3-sidebar-progress, 0%); height: 100%; border-radius: inherit; background: var(--v3-blue); transition: width .18s ease; }
.v3-article-sidebar-widget__html > :first-child { margin-top: 0; }
.v3-article-sidebar-widget__html > :last-child { margin-bottom: 0; }
@media (max-width: 680px) { .v3-article-sidebar-widget { padding: 16px; } }