/* news page — redesign 2026-09. Scoped under .nw-page, ported from
   docs/redesign-mockups/news-mockup.html. Hard corners, JetBrains Mono via global rules.
   Local tonal tokens (--nw-*) mirror the --rs-*/--px-*/--vx-* pattern each page defines for itself.
   Section wrapper renamed px-ch -> nw-sec, "unknown" span renamed mc-unk -> nw-unk, hero
   right-label renamed mc-lvl -> nw-lvl (all three collided with other pages' own class names —
   see page-news.js header comment for the full list of disclosed deviations). */
body[data-theme=gemini] #view .nw-page {
  --nw-card: var(--paper);
  --nw-inset: var(--paper-3);
  --nw-lift: var(--today-hover);
  --nw-edge: var(--today-rule);
}

body[data-theme=gemini] #view .nw-page .nw-sec { margin-top: 76px; }
body[data-theme=gemini] #view .nw-page .nw-sec.first,
body[data-theme=gemini] #view .nw-page .nw-sec.nw-hero { margin-top: 22px; }

body[data-theme=gemini] #view .nw-page .nw-lvl { display: flex; align-items: baseline; gap: 10px; margin: 0 0 12px; font-size: 9px; letter-spacing: .1em; color: var(--ink3); text-transform: uppercase; }
body[data-theme=gemini] #view .nw-page .nw-lvl::after { content: ""; flex: 1; border-top: 1px solid var(--today-rule); transform: translateY(-3px); }
body[data-theme=gemini] #view .nw-page .nw-lvl b { font-weight: 700; color: var(--ink2); }

body[data-theme=gemini] #view .nw-page .nw-unk { color: var(--ink3); font-style: italic; }

body[data-theme=gemini] #view .nw-page .sx-hd { display: flex; flex-wrap: wrap; gap: 8px 18px; align-items: flex-end; justify-content: space-between; border-bottom: 1px solid var(--today-rule); padding: 0 0 12px; }
body[data-theme=gemini] #view .nw-page .sx-hd > div:first-child { flex: 1 1 420px; min-width: 0; }
body[data-theme=gemini] #view .nw-page .sx-k { margin: 0 0 5px; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; font-weight: 700; color: var(--ink3); }
body[data-theme=gemini] #view .nw-page .sx-hd h2 { margin: 0; text-transform: none; font-size: 16px; line-height: 1.3; font-weight: 700; letter-spacing: -.005em; color: var(--ink1); }
body[data-theme=gemini] #view .nw-page .nw-hero .sx-hd h2 { font-size: 21px; line-height: 1.28; letter-spacing: -.01em; max-width: 52ch; }
body[data-theme=gemini] #view .nw-page .sx-ld { margin: 6px 0 0; font-size: 11px; line-height: 1.55; color: var(--ink2); max-width: 86ch; }
body[data-theme=gemini] #view .nw-page .sx-hr { font-size: 9px; letter-spacing: .06em; color: var(--ink3); }
body[data-theme=gemini] #view .nw-page .sx-kp { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; background: var(--nw-edge); border: 1px solid var(--nw-edge); margin-top: 14px; }
body[data-theme=gemini] #view .nw-page .sx-kp > div { background: var(--nw-inset); padding: 8px 12px 9px; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; min-width: 0; cursor: default; }
body[data-theme=gemini] #view .nw-page .sx-kp small { flex: 1 0 100%; font-size: 9px; letter-spacing: .08em; color: var(--ink3); }
body[data-theme=gemini] #view .nw-page .sx-kp b { font-size: 15px; font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
body[data-theme=gemini] #view .nw-page .sx-kp span { font-size: 9px; line-height: 1.4; color: var(--ink2); min-width: 0; }
body[data-theme=gemini] #view .nw-page .sx-kp > div:focus-visible { outline: 2px solid var(--today-focus); outline-offset: -2px; }

body[data-theme=gemini] #view .nw-page .nw-imp { display: inline-grid; place-items: center; width: 18px; height: 18px; background: var(--c); color: var(--ct); font-size: 10px; font-weight: 700; font-variant-numeric: tabular-nums; }
body[data-theme=gemini] #view .nw-page .l1 { --c: color-mix(in srgb, var(--ink3) 28%, var(--paper)); --ct: var(--ink1); }
body[data-theme=gemini] #view .nw-page .l2 { --c: color-mix(in srgb, var(--ink3) 58%, var(--paper)); --ct: var(--ink1); }
body[data-theme=gemini] #view .nw-page .l3 { --c: var(--ink2); --ct: var(--paper); }
body[data-theme=gemini] #view .nw-page .l4 { --c: var(--accent); --ct: var(--paper); }
body[data-theme=gemini] #view .nw-page .l5 { --c: var(--dn); --ct: var(--paper); }

body[data-theme=gemini] #view .nw-page .nw-flow { margin-top: 18px; }
body[data-theme=gemini] #view .nw-page .nw-flow svg { display: block; width: 100%; height: auto; overflow: visible; }
body[data-theme=gemini] #view .nw-page .nw-flow text { font-family: inherit; font-size: 9px; fill: var(--ink3); }
body[data-theme=gemini] #view .nw-page .nw-flow .grid { stroke: var(--rhair); stroke-width: 1; }
body[data-theme=gemini] #view .nw-page .nw-flow .hit { fill: transparent; }
body[data-theme=gemini] #view .nw-page .nw-flow g[data-tip] { outline: none; }
body[data-theme=gemini] #view .nw-page .nw-flow g[data-tip]:hover .hit,
body[data-theme=gemini] #view .nw-page .nw-flow g[data-tip]:focus .hit { fill: var(--today-hover); }
body[data-theme=gemini] #view .nw-page .nw-flow rect.s { fill: var(--c); }

body[data-theme=gemini] #view .nw-page .nw-key { display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 10px 0 0; font-size: 9px; color: var(--ink3); }
body[data-theme=gemini] #view .nw-page .nw-key span { display: inline-flex; align-items: center; gap: 5px; }
body[data-theme=gemini] #view .nw-page .nw-key i { width: 9px; height: 9px; background: var(--c); }

body[data-theme=gemini] #view .nw-page .nw-top { margin-top: 22px; }
body[data-theme=gemini] #view .nw-page .nw-top .nw-list { margin-top: 4px; }
body[data-theme=gemini] #view .nw-page .nw-sub { display: flex; align-items: baseline; gap: 10px; margin: 0; font-size: 9px; letter-spacing: .1em; color: var(--ink3); text-transform: uppercase; }
body[data-theme=gemini] #view .nw-page .nw-sub b { color: var(--ink2); font-weight: 700; }
body[data-theme=gemini] #view .nw-page .nw-sub::after { content: ""; flex: 1; border-top: 1px solid var(--today-rule); transform: translateY(-3px); }

body[data-theme=gemini] #view .nw-page .nw-scale { margin: 14px 0 0; padding: 0; list-style: none; }
body[data-theme=gemini] #view .nw-page .nw-scale li { display: grid; grid-template-columns: 18px 170px minmax(0, 1fr) 170px; gap: 14px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--today-rule); font-size: 10px; color: var(--ink2); }
body[data-theme=gemini] #view .nw-page .nw-scale li:last-child { border-bottom: 0; }
body[data-theme=gemini] #view .nw-page .nw-scale li b { font-size: 11px; color: var(--ink1); font-weight: 600; }
body[data-theme=gemini] #view .nw-page .nw-scale li b em { display: block; font-style: normal; font-weight: 400; font-size: 9px; color: var(--ink3); letter-spacing: .04em; }
body[data-theme=gemini] #view .nw-page .nw-scale .bar { display: grid; grid-template-columns: minmax(0, 1fr) 72px; gap: 8px; align-items: center; font-variant-numeric: tabular-nums; text-align: end; color: var(--ink2); }
body[data-theme=gemini] #view .nw-page .nw-scale .bar i { display: block; height: 6px; background: color-mix(in srgb, var(--rline) 45%, transparent); position: relative; }
body[data-theme=gemini] #view .nw-page .nw-scale .bar i s { position: absolute; inset: 0 auto 0 0; background: var(--c); }

body[data-theme=gemini] #view .nw-page .nw-fil { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; margin: 16px 0 0; }
body[data-theme=gemini] #view .nw-page .nw-fil label { display: flex; align-items: center; gap: 8px; font-size: 9px; letter-spacing: .08em; color: var(--ink3); text-transform: uppercase; min-width: 0; }
body[data-theme=gemini] #view .nw-page .nw-fil select,
body[data-theme=gemini] #view .nw-page .nw-fil input { font: inherit; font-size: 11px; letter-spacing: 0; text-transform: none; color: var(--ink1); background: var(--nw-inset); border: 1px solid var(--nw-edge); padding: 5px 8px; }
body[data-theme=gemini] #view .nw-page .nw-fil select { max-width: 240px; }
body[data-theme=gemini] #view .nw-page .nw-fil input { width: 200px; }
body[data-theme=gemini] #view .nw-page .nw-fil select:focus-visible,
body[data-theme=gemini] #view .nw-page .nw-fil input:focus-visible { outline: 2px solid var(--today-focus); outline-offset: 0; }

body[data-theme=gemini] #view .nw-page .wl-chips { display: flex; flex-wrap: wrap; gap: 6px; }
body[data-theme=gemini] #view .nw-page .wl-chips button { all: unset; cursor: pointer; font-size: 10px; letter-spacing: .04em; color: var(--ink2); border: 1px solid var(--nw-edge); padding: 4px 10px; }
body[data-theme=gemini] #view .nw-page .wl-chips button[aria-pressed="true"] { color: var(--paper); background: var(--ink1); border-color: var(--ink1); }
body[data-theme=gemini] #view .nw-page .wl-chips button:hover { background: var(--nw-lift); }
body[data-theme=gemini] #view .nw-page .wl-chips button:focus-visible { outline: 2px solid var(--today-focus); outline-offset: 1px; }

body[data-theme=gemini] #view .nw-page .nw-count { margin: 12px 0 0; font-size: 10px; color: var(--ink3); }
body[data-theme=gemini] #view .nw-page .nw-count b { color: var(--ink1); font-weight: 600; }
body[data-theme=gemini] #view .nw-page .nw-count button { all: unset; cursor: pointer; color: var(--ink1); text-decoration: underline; text-underline-offset: 3px; margin-inline-start: 8px; }
body[data-theme=gemini] #view .nw-page .nw-count button:focus-visible { outline: 2px solid var(--today-focus); outline-offset: 2px; }

body[data-theme=gemini] #view .nw-page .nw-day { margin: 26px 0 0; display: flex; align-items: baseline; gap: 10px; font-size: 10px; letter-spacing: .1em; color: var(--ink3); text-transform: uppercase; }
body[data-theme=gemini] #view .nw-page .nw-day b { color: var(--ink1); font-weight: 700; }
body[data-theme=gemini] #view .nw-page .nw-day::after { content: ""; flex: 1; border-top: 1px solid var(--today-rule); transform: translateY(-3px); }

body[data-theme=gemini] #view .nw-page .nw-list { margin: 0; padding: 0; list-style: none; }
body[data-theme=gemini] #view .nw-page .nw-it { display: grid; grid-template-columns: 62px 18px minmax(0, 1fr); gap: 4px 14px; padding: 12px 0; border-bottom: 1px solid var(--today-rule); }
body[data-theme=gemini] #view .nw-page .nw-it:last-child { border-bottom: 0; }
body[data-theme=gemini] #view .nw-page .nw-it .tm { font-size: 10px; color: var(--ink2); font-variant-numeric: tabular-nums; padding-top: 2px; }
body[data-theme=gemini] #view .nw-page .nw-it .tm .nw-unk { font-size: 9px; }
body[data-theme=gemini] #view .nw-page .nw-it h3 { margin: 0; font-size: 12px; line-height: 1.45; font-weight: 600; color: var(--ink1); overflow-wrap: anywhere; }
body[data-theme=gemini] #view .nw-page .nw-it p { margin: 4px 0 0; font-size: 10px; line-height: 1.6; color: var(--ink2); max-width: 92ch; overflow-wrap: anywhere; }
body[data-theme=gemini] #view .nw-page .nw-it.hi { background: linear-gradient(90deg, color-mix(in srgb, var(--dn) 8%, transparent), transparent 55%); }
body[data-theme=gemini] #view .nw-page .nw-ur { text-align: right; }

body[data-theme=gemini] #view .nw-page .nw-meta { display: flex; flex-wrap: wrap; gap: 3px 10px; margin: 7px 0 0; font-size: 9px; color: var(--ink3); align-items: baseline; }
body[data-theme=gemini] #view .nw-page .nw-meta a { color: var(--ink2); }
body[data-theme=gemini] #view .nw-page .nw-tk { display: flex; flex-wrap: wrap; gap: 3px 8px; align-items: baseline; }
body[data-theme=gemini] #view .nw-page .nw-tk a,
body[data-theme=gemini] #view .nw-page .nw-tk .clickable { font-size: 10px; font-weight: 600; color: var(--ink1); cursor: pointer; }
body[data-theme=gemini] #view .nw-page .nw-mac { font-size: 8px; letter-spacing: .08em; border: 1px solid var(--today-rule); padding: 0 4px; color: var(--ink3); text-transform: uppercase; }

body[data-theme=gemini] #view .nw-page .nw-rd { all: unset; cursor: pointer; font-size: 9px; color: var(--ink3); text-decoration: underline; text-underline-offset: 3px; margin-inline-start: 4px; }
body[data-theme=gemini] #view .nw-page .nw-rd:hover { color: var(--ink1); }
body[data-theme=gemini] #view .nw-page .nw-rd:focus-visible { outline: 2px solid var(--today-focus); outline-offset: 2px; }

body[data-theme=gemini] #view .nw-page .nw-more { all: unset; box-sizing: border-box; cursor: pointer; display: block; margin: 18px 0 0; padding: 9px 0; width: 100%; text-align: center; font-size: 10px; color: var(--ink2); border: 1px solid var(--nw-edge); }
body[data-theme=gemini] #view .nw-page .nw-more:hover { background: var(--today-hover); }
body[data-theme=gemini] #view .nw-page .nw-more:focus-visible { outline: 2px solid var(--today-focus); outline-offset: -2px; }

body[data-theme=gemini] #view .nw-page .nw-empty { margin: 22px 0 0; font-size: 11px; color: var(--ink3); }

body[data-theme=gemini] #view .nw-page .nw-two { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 22px 40px; margin-top: 16px; }
body[data-theme=gemini] #view .nw-page .nw-two h3 { margin: 0 0 6px; font-size: 9px; letter-spacing: .1em; color: var(--ink3); font-weight: 700; text-transform: uppercase; }
body[data-theme=gemini] #view .nw-page .nw-rank { margin: 0; padding: 0; list-style: none; }
body[data-theme=gemini] #view .nw-page .nw-rank li { display: grid; grid-template-columns: minmax(0, 1fr) 110px 64px; gap: 10px; align-items: center; padding: 6px 0; border-bottom: 1px solid var(--today-rule); font-size: 10px; }
body[data-theme=gemini] #view .nw-page .nw-rank li:last-child { border-bottom: 0; }
body[data-theme=gemini] #view .nw-page .nw-rank .nm { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body[data-theme=gemini] #view .nw-page .nw-rank .nm a,
body[data-theme=gemini] #view .nw-page .nw-rank .nm .clickable { font-weight: 600; margin-inline-end: 6px; cursor: pointer; color: var(--ink1); }
body[data-theme=gemini] #view .nw-page .nw-rank .nm small,
body[data-theme=gemini] #view .nw-page .nw-rank .nm .sub { font-size: 9px; color: var(--ink3); }
body[data-theme=gemini] #view .nw-page .nw-rank .bar { display: flex; height: 6px; background: color-mix(in srgb, var(--rline) 45%, transparent); }
body[data-theme=gemini] #view .nw-page .nw-rank .bar i { display: block; height: 100%; background: var(--c); }
body[data-theme=gemini] #view .nw-page .nw-rank button { all: unset; cursor: pointer; font-size: 9px; color: var(--ink3); text-align: end; font-variant-numeric: tabular-nums; }
body[data-theme=gemini] #view .nw-page .nw-rank button:hover { color: var(--ink1); text-decoration: underline; text-underline-offset: 3px; }
body[data-theme=gemini] #view .nw-page .nw-rank button:focus-visible { outline: 2px solid var(--today-focus); outline-offset: 2px; }
body[data-theme=gemini] #view .nw-page .nw-rank button b { color: var(--ink1); font-weight: 600; }

body[data-theme=gemini] #view .nw-page .pf-foot { font-size: 9px; line-height: 1.6; color: var(--ink3); margin: 56px 0 0; max-width: 90ch; }
body[data-theme=gemini] #view .nw-page .pf-foot + .pf-foot { margin-top: 10px; }

body[data-theme=gemini] #view .nw-page .wl-tip { position: fixed; pointer-events: none; z-index: 50; background: var(--paper-3); border: 1px solid var(--rline); padding: 7px 9px; font-size: 10px; line-height: 1.5; color: var(--ink1); box-shadow: var(--shadow); display: none; max-width: 280px; }
body[data-theme=gemini] #view .nw-page .wl-tip b { font-weight: 600; }
body[data-theme=gemini] #view .nw-page .wl-tip span { color: var(--ink3); }

@media (max-width: 720px) {
  body[data-theme=gemini] #view .nw-page .nw-sec { margin-top: 52px; }
  body[data-theme=gemini] #view .nw-page .nw-sec.first,
  body[data-theme=gemini] #view .nw-page .nw-sec.nw-hero { margin-top: 16px; }
  body[data-theme=gemini] #view .nw-page .nw-hero .sx-hd h2 { font-size: 17px; }
  body[data-theme=gemini] #view .nw-page .sx-hd > div:first-child { flex-basis: 100%; }
  body[data-theme=gemini] #view .nw-page .sx-kp { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-theme=gemini] #view .nw-page .sx-kp > div { padding: 7px 10px 8px; }
  body[data-theme=gemini] #view .nw-page .nw-it { grid-template-columns: 18px minmax(0, 1fr); gap: 4px 10px; }
  body[data-theme=gemini] #view .nw-page .nw-it .tm { grid-column: 2; grid-row: 1; padding-top: 3px; font-size: 9px; color: var(--ink3); }
  body[data-theme=gemini] #view .nw-page .nw-it .nw-imp { grid-column: 1; grid-row: 1; }
  body[data-theme=gemini] #view .nw-page .nw-it > div { grid-column: 1 / -1; }
  body[data-theme=gemini] #view .nw-page .nw-scale li { grid-template-columns: 18px minmax(0, 1fr); gap: 6px 10px; }
  body[data-theme=gemini] #view .nw-page .nw-scale li > span:nth-child(3) { grid-column: 2 / -1; order: 5; }
  body[data-theme=gemini] #view .nw-page .nw-scale li > .bar { grid-column: 2 / -1; order: 6; }
  body[data-theme=gemini] #view .nw-page .nw-fil label { flex: 1 1 100%; }
  body[data-theme=gemini] #view .nw-page .nw-fil select,
  body[data-theme=gemini] #view .nw-page .nw-fil input { flex: 1; width: auto; max-width: none; }
  body[data-theme=gemini] #view .nw-page .nw-two { grid-template-columns: minmax(0, 1fr); }
  body[data-theme=gemini] #view .nw-page .nw-rank li { grid-template-columns: minmax(0, 1fr) 60px 56px; gap: 8px; }
}
