/* MMODude News (generated by _tools/gen/news.py) */
/* ---------- article ---------- */
.nw-hero .gd-meta a{ color:inherit; text-decoration:underline; text-underline-offset:3px; text-decoration-color:rgba(255,255,255,.25); }
.nw-hero h1{ max-width:860px; font-size:34px; line-height:1.18; }
.nw-hero > p{ max-width:720px; font-size:16.5px; line-height:1.55; color:var(--text); opacity:.86; }
.nw-meta time{ color:var(--text-dim); }
.nw-takeaways{ border:1px solid color-mix(in srgb,var(--amber) 45%,var(--border)); border-radius:12px; padding:18px 20px 8px; margin:0 0 26px;
  background:linear-gradient(180deg,rgba(245,166,35,.08),rgba(245,166,35,.015)); }
.nw-takeaways h2{ margin:0 0 10px !important; font-size:16px !important; letter-spacing:.08em; text-transform:uppercase; color:var(--amber); }
.nw-takeaways ul{ margin:0; padding:0 0 0 18px; } .nw-takeaways li{ margin:0 0 10px; line-height:1.55; } .nw-takeaways li::marker{ color:var(--amber); }
.nw-body h2{ scroll-margin-top:24px; }
.nw-brief li{ margin-bottom:10px; } .nw-brief a{ color:var(--amber); }
.nw-table-wrap{ overflow-x:auto; margin:16px 0; border:1px solid var(--border); border-radius:10px; }
.nw-table{ width:100%; border-collapse:collapse; font-size:14px; min-width:460px; }
.nw-table th, .nw-table td{ padding:10px 12px; text-align:left; border-bottom:1px solid var(--border); }
.nw-table th{ font:600 11.5px/1.2 'Inter',sans-serif; letter-spacing:.06em; text-transform:uppercase; color:var(--text-dimmer); background:rgba(255,255,255,.02); }
.nw-table td:not(:first-child), .nw-table th:not(:first-child){ text-align:right; font-family:'JetBrains Mono',monospace; }
.nw-table tr:last-child td{ border-bottom:0; } .nw-table b{ color:var(--amber); }
.nw-games{ margin:26px 0 8px; } .nw-games-h{ font:600 11.5px/1 'Inter',sans-serif; letter-spacing:.08em; text-transform:uppercase; color:var(--text-dimmer); margin-bottom:10px; }
.nw-gchips{ display:flex; flex-wrap:wrap; gap:8px; }
.nw-gchip{ display:inline-flex; align-items:center; gap:8px; padding:5px 12px 5px 5px; border:1px solid var(--border); border-radius:30px; background:var(--surface);
  font-size:13.5px; font-weight:600; color:var(--text); text-decoration:none !important; transition:border-color .15s ease; }
.nw-gchip:hover{ border-color:var(--amber); } .nw-gchip b{ font:600 11px/1 'JetBrains Mono',monospace; color:#0b0c0f; background:var(--amber); border-radius:10px; padding:3px 6px; }
.nw-gchip-em{ width:28px; height:28px; object-fit:contain; }
.nw-sources{ margin-top:30px; padding-top:6px; border-top:1px solid var(--border); }
.nw-sources ol{ margin:0; padding-left:20px; } .nw-sources li{ margin:0 0 8px; line-height:1.45; }
.nw-sources a{ color:var(--text); text-decoration:underline; text-underline-offset:3px; text-decoration-color:rgba(245,166,35,.5); }
.nw-src-d{ display:inline-block; margin-left:8px; font:500 12px/1 'JetBrains Mono',monospace; color:var(--text-dimmer); }
.nw-note{ font-size:13px; color:var(--text-dimmer); margin-top:12px; }
.nw-side{ margin-top:18px; padding-top:14px; border-top:1px solid var(--border); }
.nw-side-h{ font:600 11px/1 'Inter',sans-serif; letter-spacing:.08em; text-transform:uppercase; color:var(--text-dimmer); margin-bottom:10px; }
.nw-side ul{ list-style:none; margin:0; padding:0; } .nw-side li{ margin:0 0 10px; }
.gd-toc .nw-side a{ display:block; padding:0; border:0; font-size:13px; line-height:1.4; color:var(--text-dim); }
.gd-toc .nw-side a:hover{ color:var(--text); } .nw-sd{ display:block; font:500 11px/1.3 'JetBrains Mono',monospace; color:var(--text-dimmer); }
.gd-toc .nw-side .nw-side-all{ margin-top:4px; color:var(--amber); font-weight:600; }
.gd-toc.gd-toc-js:not(.open) .nw-side{ display:none; }
@media (max-width:700px){ .nw-hero h1{ font-size:24px; } .nw-hero > p{ font-size:15px; } }

/* ---------- hub ---------- */
.nw-hub-hero{ text-align:center; padding:44px 24px 34px; border-bottom:1px solid var(--border); }
.nw-hub-hero h1{ margin:0 0 12px; }
@media (max-width:700px){ .nw-hub-hero{ padding:30px 18px 24px; } }
/* own banner (owner art, _tools/art/hero/news*.webp, copied to /assets/hero/ by fx2.py) */
.hub-own-news{ --hero-img:url(/assets/hero/news-1600.webp); }
@supports (background-image: image-set(url("/x.webp") 1x)){ @media (min-width:761px){
  .hub-own-news{ --hero-img:image-set(url(/assets/hero/news-1600.webp) 1x, url(/assets/hero/news.webp) 2x); } } }
@media (max-width:760px){ .hub-own-news{ background:linear-gradient(180deg,rgba(11,12,15,.55) 0%,rgba(11,12,15,.72) 100%), var(--hero-img) 8% center / cover no-repeat, var(--bg) !important; } }
.nw-hub-hero > p{ max-width:760px; margin-left:auto; margin-right:auto; }
.nw-card, .nw-card-body, .nw-lead-wrap{ min-width:0; }
.nw-hub-kicker{ display:inline-block; font:700 11.5px/1 'Inter',sans-serif; letter-spacing:.16em; text-transform:uppercase; color:var(--amber);
  border:1px solid rgba(245,166,35,.5); border-radius:20px; padding:6px 12px; margin-bottom:14px; background:rgba(11,12,15,.5); }
.nw-hub-meta{ display:flex; justify-content:center; flex-wrap:wrap; gap:8px; font:500 13px/1.4 'JetBrains Mono',monospace; color:var(--text-dim); margin-top:6px; }
.nw-hub-meta a{ color:var(--amber); }
.nw-hub{ padding-top:26px; padding-bottom:30px; }
.nw-filter{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 18px; }
.nw-chip{ font:600 13px/1 'Inter',sans-serif; color:var(--text-dim); background:var(--surface); border:1px solid var(--border); border-radius:30px; padding:9px 14px; cursor:pointer; }
.nw-chip:hover{ color:var(--text); border-color:#3a3e47; } .nw-chip.is-on{ color:#0b0c0f; background:var(--amber); border-color:var(--amber); }
.nw-card{ position:relative; display:flex; flex-direction:column; border:1px solid var(--border); border-radius:14px; overflow:hidden; background:var(--bg-2);
  color:var(--text); text-decoration:none !important; transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.nw-card:hover{ border-color:color-mix(in srgb,var(--gc) 60%,var(--border)); transform:translateY(-2px); box-shadow:0 10px 30px rgba(0,0,0,.35), 0 0 22px color-mix(in srgb,var(--gc) 14%,transparent); }
.nw-card[hidden]{ display:none; }
.nw-card-art{ position:relative; height:120px; display:flex; align-items:center; justify-content:center; gap:4px;
  background:radial-gradient(70% 140% at 50% 0%, color-mix(in srgb,var(--gc) 32%,transparent), transparent 70%),
             radial-gradient(60% 120% at 100% 100%, color-mix(in srgb,var(--gc2) 18%,transparent), transparent 70%), #101216;
  border-bottom:1px solid var(--border); }
.nw-card-art::after{ content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:linear-gradient(90deg,transparent,var(--gc),var(--gc2),transparent); }
.nw-card-em{ width:84px; height:84px; object-fit:contain; filter:drop-shadow(0 6px 14px rgba(0,0,0,.6)) drop-shadow(0 0 18px color-mix(in srgb,var(--gc) 40%,transparent)); }
.nw-card-body{ display:flex; flex-direction:column; gap:8px; padding:16px 18px 18px; flex:1; }
.nw-card-meta{ display:flex; align-items:center; gap:10px; font:500 12px/1 'JetBrains Mono',monospace; color:var(--text-dimmer); }
.nw-cat{ font:700 10.5px/1 'Inter',sans-serif; letter-spacing:.09em; text-transform:uppercase; color:var(--amber); }
.nw-card-title{ margin:0; font:700 19px/1.28 'Oswald',sans-serif; letter-spacing:.005em; color:var(--text); }
.nw-card-dek{ margin:0; font-size:14px; line-height:1.55; color:var(--text-dim); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.nw-card-foot{ margin-top:auto; padding-top:6px; display:flex; justify-content:space-between; gap:10px; font-size:12.5px; color:var(--text-dimmer); }
.nw-card-games{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } .nw-more{ color:var(--amber); font-weight:600; white-space:nowrap; }
.nw-lead-wrap{ margin-bottom:18px; }
.nw-lead{ display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); }
.nw-lead .nw-card-art{ height:auto; min-height:300px; border-bottom:0; border-right:1px solid var(--border); flex-wrap:wrap; padding:20px; }
.nw-lead .nw-card-art::after{ left:auto; top:0; right:-1px; bottom:0; width:2px; height:auto; background:linear-gradient(180deg,transparent,var(--gc),var(--gc2),transparent); }
.nw-lead .nw-card-em{ width:104px; height:104px; } .nw-lead .nw-card-em:nth-child(2){ margin-top:46px; } .nw-lead .nw-card-em:nth-child(4){ margin-top:46px; }
.nw-lead .nw-card-body{ padding:26px 28px; justify-content:center; gap:12px; }
.nw-lead .nw-card-title{ font-size:30px; line-height:1.15; } .nw-lead .nw-card-dek{ font-size:15.5px; -webkit-line-clamp:5; }
.nw-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:18px; }
.nw-empty{ text-align:center; color:var(--text-dim); padding:30px 0; }
.nw-bygame, .nw-about{ margin-top:38px; padding-top:22px; border-top:1px solid var(--border); }
.nw-bygame h2, .nw-about h2{ margin:0 0 8px; font:700 20px/1.2 'Oswald',sans-serif; text-transform:uppercase; letter-spacing:.02em; }
.nw-bygame p, .nw-about p{ margin:0 0 14px; color:var(--text-dim); font-size:14.5px; line-height:1.6; max-width:820px; } .nw-about a{ color:var(--amber); }
@media (max-width:860px){
  .nw-lead{ grid-template-columns:minmax(0,1fr); } .nw-lead .nw-card-art{ min-height:170px; border-right:0; border-bottom:1px solid var(--border); padding:14px; }
  .nw-lead .nw-card-art::after{ top:auto; left:0; right:0; bottom:-1px; width:auto; height:2px; background:linear-gradient(90deg,transparent,var(--gc),var(--gc2),transparent); }
  .nw-lead .nw-card-em{ width:76px; height:76px; } .nw-lead .nw-card-em:nth-child(2), .nw-lead .nw-card-em:nth-child(4){ margin-top:30px; }
  .nw-lead .nw-card-body{ padding:18px; } .nw-lead .nw-card-title{ font-size:23px; }
  .nw-grid{ grid-template-columns:minmax(0,1fr); }
  .nw-hub{ padding-left:16px !important; padding-right:16px !important; }
}

/* ---------- homepage strip + game-page box ---------- */
.nw-strip, .nw-box{ padding-top:30px; padding-bottom:10px; }
.nw-strip-head{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:14px; }
.nw-strip-head h2{ margin:0; font:700 22px/1.2 'Oswald',sans-serif; text-transform:uppercase; letter-spacing:.02em; }
.nw-strip-head a{ font-size:13.5px; font-weight:600; color:var(--amber); white-space:nowrap; }
.nw-strip-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.nw-mini{ display:flex; gap:12px; align-items:flex-start; padding:14px; border:1px solid var(--border); border-radius:12px; background:var(--bg-2);
  color:var(--text); text-decoration:none !important; transition:border-color .2s ease, transform .2s ease; }
.nw-mini:hover{ border-color:color-mix(in srgb,var(--gc) 60%,var(--border)); transform:translateY(-2px); }
.nw-mini-em{ width:52px; height:52px; flex:none; object-fit:contain; filter:drop-shadow(0 4px 10px rgba(0,0,0,.5)); }
.nw-mini-t{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.nw-mini-m{ display:flex; gap:10px; align-items:center; font:500 11.5px/1 'JetBrains Mono',monospace; color:var(--text-dimmer); }
.nw-mini b, .nw-box-list b{ font:600 15px/1.35 'Inter',sans-serif; color:var(--text); }
.nw-box-list{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.nw-box-list a{ display:flex; flex-direction:column; gap:6px; padding:14px 16px; border:1px solid var(--border); border-left:3px solid var(--amber); border-radius:10px;
  background:var(--bg-2); text-decoration:none !important; transition:border-color .2s ease; }
.nw-box-list a:hover{ border-color:var(--amber); }
.nw-box-dek{ font-size:13.5px; line-height:1.5; color:var(--text-dim); }
@media (max-width:860px){ .nw-strip-grid{ grid-template-columns:1fr; } .nw-strip, .nw-box{ padding-left:16px !important; padding-right:16px !important; } }
