/* Patch dashboard (2026-10): "Who got buffed, nerfed or adjusted" under the key takeaways of every patch article (layout/patch-dashboard.php),
   and the sidebar "Patch at a glance" card. Page-specific file: loaded by article.php only for a patch-notes article, so no public bundle grows.
   Colours: buff green, nerf red, adjusted amber. Colour is never the only signal: every badge carries a glyph and a word.
   RTL-safe (logical properties, numbers in a ltr <bdi>), no motion beyond a 120ms hover tint, none at all under prefers-reduced-motion. */
.nxpd{--nxpd-buff:#45f882;--nxpd-nerf:#ff6b78;--nxpd-adj:#ffbe18;--nxpd-line:var(--nxb-line,rgba(255,255,255,.1));--nxpd-panel:var(--nxb-panel,#121714);--nxpd-mute:var(--nxb-mute,#a3b0a8);
  margin:0 0 26px;padding:20px!important;border:1px solid var(--nxpd-line);border-radius:16px;background:var(--nxpd-panel);color:#e8efeb}
.nxpd *{box-sizing:border-box}
.nxpd-head-row h2{margin:2px 0 10px!important;padding:0!important;border:0!important;color:#fff;font:700 clamp(23px,2.4vw,30px)/1.2 Rajdhani,Poppins,sans-serif!important}
.nxpd-tallies{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 8px}
.nxpd-tally{display:inline-flex;align-items:center;gap:7px;font-size:15px;color:#dbe5df}
.nxpd-tally i,.nxpd-side-tally i{font-style:normal;font-size:15px;line-height:1}
.nxpd-tally b{font:700 22px/1 Rajdhani,Poppins,sans-serif}
.nxpd-tally.nxpd-buff i,.nxpd-tally.nxpd-buff b{color:var(--nxpd-buff)}
.nxpd-tally.nxpd-nerf i,.nxpd-tally.nxpd-nerf b{color:var(--nxpd-nerf)}
.nxpd-tally.nxpd-adjusted i,.nxpd-tally.nxpd-adjusted b{color:var(--nxpd-adj)}
.nxpd-note{max-width:72ch;margin:0 0 4px;color:var(--nxpd-mute);font-size:13.5px;line-height:1.55}

/* sticky filter bar (printed hidden, shown by patch-dashboard.js; without it every row stays visible): direction chips + expand all, then the category chips */
.nxpd-bar{position:sticky;top:var(--nxpd-stick,66px);z-index:6;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;margin:12px -6px 8px;padding:8px 6px 6px;border-block:1px solid var(--nxpd-line);background:color-mix(in srgb,var(--nxpd-panel) 95%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.nxpd-bar[hidden]{display:none}
.nxpd-brow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px}
.nxpd-fgroup{display:flex;flex-wrap:wrap;gap:6px}
.nxpd-chip,.nxpd-xall{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:4px 12px;border:1px solid var(--nxpd-line);border-radius:999px;background:transparent;color:#dbe5df;font:600 13px/1 Poppins,sans-serif;white-space:nowrap;cursor:pointer;transition:background-color .12s,border-color .12s}
.nxpd-chip em{font-style:normal;font-size:11.5px;color:var(--nxpd-mute)}
.nxpd-chip:hover,.nxpd-xall:hover{border-color:rgba(255,255,255,.35)}
.nxpd-chip:focus-visible,.nxpd-xall:focus-visible{outline:2px solid #fff;outline-offset:2px}
.nxpd-chip[aria-pressed="true"]{border-color:var(--nxb-acc,#45f882);background:rgba(69,248,130,.12);color:#fff}
.nxpd-xall{border-radius:10px;color:var(--nxpd-mute)}
.nxpd-xall[aria-pressed="true"]{color:#fff;border-color:rgba(255,255,255,.35)}
.nxpd-cats .nxpd-chip{min-height:34px;padding:3px 11px;font-size:12.5px}
.nxpd-status{margin:0;color:var(--nxpd-mute);font-size:12.5px}
.nxpd-status:empty{display:none}

/* groups (strictly Buffs, then Nerfs, then Adjusted) and compact rows */
.nxpd-group{margin-block-start:18px;padding:0!important}
.nxpd-group[hidden]{display:none}
.nxpd-group h3{display:flex;align-items:center;gap:9px;margin:0 0 8px!important;padding:0!important;border:0!important;color:#fff;font:700 19px/1.2 Rajdhani,Poppins,sans-serif!important}
.nxpd-group h3>i{font-style:normal;font-size:15px}
.nxpd-g-buff h3>i{color:var(--nxpd-buff)}.nxpd-g-nerf h3>i{color:var(--nxpd-nerf)}.nxpd-g-adjusted h3>i{color:var(--nxpd-adj)}
.nxpd-group h3 em{display:inline-grid;place-items:center;min-width:26px;height:22px;padding:0 8px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--nxpd-mute);font:600 12px/1 Poppins,sans-serif;font-style:normal}
.nxpd-rows{display:grid;gap:6px;margin:0;padding:0!important;list-style:none}
.nxpd-row{--c:#888;margin:0!important;padding:0!important;min-width:0;border:1px solid var(--nxpd-line);border-inline-start:3px solid var(--c);border-radius:12px;background:#0e1310}
.nxpd-row[hidden]{display:none}
.nxpd-row.nxpd-buff{--c:var(--nxpd-buff)}.nxpd-row.nxpd-nerf{--c:var(--nxpd-nerf)}.nxpd-row.nxpd-adjusted{--c:var(--nxpd-adj)}
.nxpd-sum{position:relative;display:grid;grid-template-columns:36px minmax(110px,190px) minmax(0,1fr) auto;gap:4px 12px;align-items:center;min-height:52px;padding:8px 38px 8px 12px;list-style:none;cursor:pointer}
[dir=rtl] .nxpd-sum{padding:8px 12px 8px 38px}
.nxpd-sum::-webkit-details-marker{display:none}
.nxpd-sum::after{content:"";position:absolute;inset-inline-end:14px;top:50%;width:7px;height:7px;margin-top:-6px;border:solid var(--nxpd-mute);border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .15s}
.nxpd-d[open]>.nxpd-sum::after{transform:rotate(-135deg);margin-top:-2px}
.nxpd-sum:hover{background:rgba(255,255,255,.03)}
.nxpd-sum:focus-visible{outline:2px solid #fff;outline-offset:-2px;border-radius:10px}
.nxpd-ph{display:block;width:36px;height:36px}
.nxpd .nxpd-ico,.nxpd .nxpd-ico--mono{display:block;width:36px!important;height:36px!important;max-width:36px!important;margin:0!important;border:1px solid var(--nxpd-line)!important;border-radius:9px!important;object-fit:cover;background:#171e1a}
.nxpd .nxpd-ico--mono{display:grid;place-items:center;color:#fff;font:700 16px/1 Rajdhani,Poppins,sans-serif;background:hsl(var(--h,150) 35% 22%)}
.nxpd-id{display:grid;gap:1px;min-width:0}
.nxpd-name{color:#fff;font:700 17px/1.2 Rajdhani,Poppins,sans-serif;overflow-wrap:anywhere}
.nxpd-id small{color:var(--nxpd-mute);font-size:12px}
.nxpd-sub{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0}
.nxpd-sub .nxpc-slot{min-width:24px;height:24px;border-radius:7px;font-size:12.5px}
.nxpd-in{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:1px 8px;min-width:0;font-size:13px;line-height:1.35}
.nxpd-inl{color:var(--nxpd-mute);min-width:0}
.nxpd-more{font-style:normal;color:var(--nxpd-mute);font-size:12px}
.nxpd-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border:1px solid var(--c);border-radius:999px;background:color-mix(in srgb,var(--c) 14%,transparent);color:var(--c);line-height:1}
.nxpd-badge i{font-style:normal;font-size:11px;line-height:1}
.nxpd-badge b{font:700 11px/1.2 Poppins,sans-serif;letter-spacing:.05em;text-transform:uppercase}
.nxpd-body{display:grid;gap:10px;padding:10px 14px 14px;border-block-start:1px solid var(--nxpd-line)}
.nxpd-open{margin:0}.nxpd-open a{color:var(--nxb-link,#7dffb6);font-weight:600;font-size:13.5px}
.nxpd-empty{margin:18px 0 0;color:var(--nxpd-mute)}
.nxpd-empty[hidden]{display:none}

/* sidebar "Patch at a glance" */
.nxpd-side-tally{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 4px;padding:0;list-style:none}
.nxpd-side-tally li{display:grid;justify-items:center;gap:3px;padding:8px 4px;border:1px solid var(--nxpd-line,rgba(255,255,255,.1));border-radius:10px;font-size:12px;color:#c3cfc8}
.nxpd-side-tally b{font:700 20px/1 Rajdhani,Poppins,sans-serif}
.nxpd-glance{--nxpd-buff:#45f882;--nxpd-nerf:#ff6b78;--nxpd-adj:#ffbe18}
.nxpd-side-tally .nxpd-buff,.nxpd-side-top .nxpd-buff>i{color:var(--nxpd-buff)}
.nxpd-side-tally .nxpd-nerf,.nxpd-side-top .nxpd-nerf>i{color:var(--nxpd-nerf)}
.nxpd-side-tally .nxpd-adjusted,.nxpd-side-top .nxpd-adjusted>i{color:var(--nxpd-adj)}
.nxpd-side-top{display:grid;gap:6px;margin:10px 0 4px;padding:0;list-style:none}
.nxpd-side-top li{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:center;margin:0;padding:0;color:#e8efeb;font-size:14px}
.nxpd-side-top li>i{font-style:normal;font-size:15px}
.nxpd-side-top .nxpd-ico,.nxpd-side-top .nxpd-ico--mono{display:block;width:32px!important;height:32px!important;max-width:32px!important;margin:0!important;border:1px solid var(--nxpd-line,rgba(255,255,255,.1))!important;border-radius:8px!important;object-fit:cover;font-size:15px}
.nxpd-side-top .nxpd-ico--mono{display:grid;place-items:center;color:#fff;background:hsl(var(--h,150) 35% 22%);font-weight:700}
.nxpd-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media(max-width:700px){
  .nxpd{padding:14px 12px!important}
  .nxpd-bar{--nxpd-stick:0px;margin-inline:-4px}
  .nxpd-fgroup{flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-block-end:2px;scrollbar-width:thin}
  .nxpd-brow{flex-wrap:nowrap;min-width:0}.nxpd-brow>.nxpd-fgroup{min-width:0;flex:1 1 0}
  .nxpd-sum{grid-template-columns:36px minmax(0,1fr) auto;gap:4px 10px;padding-inline-end:34px}
  .nxpd-ph{grid-area:1/1}.nxpd-id{grid-area:1/2}.nxpd-badge{grid-area:1/3}.nxpd-sub{grid-area:2/2/3/4}
  .nxpd-body{padding-inline:12px}
}
@media(pointer:coarse){.nxpd-chip,.nxpd-xall{min-height:44px}.nxpd-cats .nxpd-chip{min-height:40px}.nxpd-sum{min-height:56px}}
@media(prefers-reduced-motion:reduce){.nxpd-chip,.nxpd-xall,.nxpd-sum::after{transition:none}}
.nxpd-ver{text-transform:none;letter-spacing:0}

/* patch prose (layout/patch-prose.php): one mini card per champion / item / rune, before->after chips, linked names. Render-time only. */
.nxpp-blocks{display:grid;gap:12px;margin:1.2em 0;max-width:70ch}
.nxpp-block{--c:#a3b0a8;margin:0;padding:12px 14px 12px!important;border:1px solid var(--nxb-line,rgba(255,255,255,.1));border-inline-start:4px solid var(--c);border-radius:12px;background:#0e1310}
.nxpp-block.nxpp-buff{--c:#45f882}.nxpp-block.nxpp-nerf{--c:#ff6b78}.nxpp-block.nxpp-adjusted{--c:#ffbe18}
.nxpp-bh{display:flex;align-items:center;gap:10px;margin:0 0 6px}
.nxpp-bname{color:#fff;font:700 18px/1.2 Rajdhani,Poppins,sans-serif;text-decoration:underline;text-decoration-color:var(--c);text-underline-offset:4px;text-decoration-thickness:2px}
.nxpp-bdir{display:inline-flex;align-items:center;gap:5px;margin-inline-start:auto;padding:2px 9px;border:1px solid var(--c);border-radius:999px;color:var(--c);font:700 11px/1.4 Poppins,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.nxpp-bdir i{font-style:normal;font-size:12px}
.nxpp-list{display:grid;gap:8px;margin:0!important;padding:0!important;list-style:none}
.nxpp-list li{margin:0!important;padding:0!important;font-size:16px;line-height:1.7;color:#d6e0da}
.nxpp-p{max-width:70ch;line-height:1.75}
.nexus-article-content .nxpp-ico,.nxpp-ico{display:inline-block;vertical-align:middle;width:22px!important;height:22px!important;max-width:22px!important;margin:0 4px 0 0!important;border:1px solid var(--nxb-line,rgba(255,255,255,.12))!important;border-radius:6px!important;object-fit:cover;background:#171e1a}
[dir=rtl] .nxpp-ico{margin:0 0 0 4px!important}
.nxpp-bh .nxpp-ico{width:28px!important;height:28px!important;max-width:28px!important;margin:0!important;border-radius:8px!important}
.nxpp-tag .nxpp-ico{width:20px!important;height:20px!important;max-width:20px!important;margin:0!important}
.nxpp-ico--mono{display:inline-grid!important;place-items:center;color:#fff;font:700 12px/1 Rajdhani,Poppins,sans-serif;background:hsl(var(--h,150) 35% 24%)}
.nxpp-champ{color:#7dffb6;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.nxpp-champ--plain{text-decoration:none;color:#e8efeb}
a.nxpp-champ:hover{color:#fff}
.nxpp-tag{display:inline-flex;align-items:center;gap:6px;padding:1px 9px 1px 4px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.05);color:#f2f6f4;font-weight:600;line-height:1.5;text-decoration:none;vertical-align:baseline}
[dir=rtl] .nxpp-tag{padding:1px 4px 1px 9px}
a.nxpp-tag:hover{border-color:#fff}
.nxpp-tag--item{border-color:rgba(255,190,24,.4)}
.nxpp-tag--rune{border-color:rgba(190,150,255,.45)}
.nxpp-ab{font:600 .86em ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-variant:small-caps;letter-spacing:.02em;color:#c9d6ce}
.nxpp-chg{--cc:#ffbe18;display:inline-flex;align-items:baseline;gap:5px;padding:0 8px;border:1px solid var(--cc);border-radius:999px;background:color-mix(in srgb,var(--cc) 12%,transparent);font:700 .92em/1.5 Rajdhani,Poppins,sans-serif;white-space:nowrap;vertical-align:baseline}
.nxpp-chg--buff{--cc:#45f882}.nxpp-chg--nerf{--cc:#ff6b78}.nxpp-chg--neutral{--cc:#ffbe18}
.nxpp-chg bdi{display:inline-flex;align-items:baseline;gap:6px}
.nxpp-chg s{color:#a3b0a8;text-decoration:none;opacity:.9}
.nxpp-chg i{font-style:normal;color:#a3b0a8}
.nxpp-chg b{color:var(--cc)}
.nxpp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Patch changes (layout/patch-changes.php): the complete official list. Same tokens as the cards above; adds ability rows, change lines, plain sections, bug fixes. */
.nxpc-total{margin:0 0 8px;color:#dbe5df;font-size:15px}
.nxpc-total b{color:#fff;font:700 22px/1 Rajdhani,Poppins,sans-serif;margin-inline-end:2px}
.nxpc-warn{margin:8px 0;padding:10px 12px;border:1px solid var(--nxpd-adj);border-radius:10px;background:rgba(255,190,24,.08);color:#ffe9a8;font-size:14px}
.nxpc-sum,.nxpc-why{margin:0;color:var(--nxpd-mute);font-size:13.5px;line-height:1.55}
.nxpc-ab{margin:0!important;padding:10px 0 0!important;border-block-start:1px solid var(--nxpd-line)}.nxpc-ab:first-child{border-block-start:0;padding-block-start:0!important}
.nxpc-abh{display:flex;flex-wrap:wrap;align-items:center;gap:6px 9px;margin-block-end:4px}
.nxpc-abn{color:#fff;font:700 16px/1.25 Rajdhani,Poppins,sans-serif}
.nxpc-abi{width:24px;height:24px;border-radius:6px;object-fit:cover;flex:none;background:#0b1210}
.nxpc-slot{display:inline-grid;place-items:center;min-width:28px;height:28px;padding:0 6px;border-radius:8px;border:1px solid var(--nxpd-line);background:rgba(255,255,255,.07);color:#fff;font:700 14px/1 Rajdhani,Poppins,sans-serif;flex:none}
.nxpc-slot i{font-style:normal}
.nxpc-slot--none{border-style:dashed;color:var(--nxpd-mute)}
.nxpc-slot--base{font-size:11px;letter-spacing:.04em;text-transform:uppercase}
.nxpc-slotnote{margin:0 0 6px;color:var(--nxpd-mute);font-size:12.5px}
.nxpc-gl{margin:8px 0 2px;color:#cfe0d6;font:700 13px/1.3 Poppins,sans-serif;letter-spacing:.02em}
.nxpc-lines{display:grid;gap:4px;margin:0;padding:0!important;list-style:none}
.nxpc-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin:0!important;padding:5px 0!important;color:#dbe5df;font-size:14px;line-height:1.45;border-block-end:1px dashed rgba(255,255,255,.07)}
.nxpc-line:last-child{border-block-end:0}
.nxpc-d1{padding-inline-start:16px!important}.nxpc-d2{padding-inline-start:30px!important}.nxpc-d3{padding-inline-start:44px!important}
.nxpc-g{font-style:normal;font-size:12px;line-height:1;flex:none}
.nxpc-buff .nxpc-g,.nxpc-buff .nxpc-v b{color:var(--nxpd-buff)}
.nxpc-nerf .nxpc-g,.nxpc-nerf .nxpc-v b{color:var(--nxpd-nerf)}
.nxpc-adjusted .nxpc-g,.nxpc-adjusted .nxpc-v b{color:var(--nxpd-adj)}
.nxpc-note .nxpc-g{color:var(--nxpd-mute)}
.nxpc-l{color:#cfd9d3;flex:1 1 150px;min-width:0}
.nxpc-v{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:3px 7px;margin-inline-start:auto;font:600 14px/1.35 Rajdhani,Poppins,sans-serif}.nxpd-in .nxpc-v{margin-inline-start:0}
.nxpc-v s{color:#9aa8a0;text-decoration-thickness:1px}
.nxpc-v b{font-weight:700}
.nxpc-ar{font-style:normal;color:var(--nxpd-mute)}
.nxpc-t{flex:1 1 200px;min-width:0}
.nxpc-flag{display:inline-block;margin-inline-start:6px;padding:1px 7px;border-radius:999px;background:rgba(255,255,255,.1);color:#fff;font:600 11px/1.4 Poppins,sans-serif;font-style:normal;text-transform:uppercase;letter-spacing:.04em}
.nxpc-sec{margin-block-start:12px;border:1px solid var(--nxpd-line);border-radius:14px;background:rgba(255,255,255,.02)}
.nxpc-sec>summary{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px;cursor:pointer;list-style:none}
.nxpc-sec>summary::-webkit-details-marker{display:none}
.nxpc-sec>summary:focus-visible{outline:2px solid #fff;outline-offset:2px}
.nxpc-sec>summary h3{margin:0!important;padding:0!important;border:0!important;color:#fff;font:700 19px/1.2 Rajdhani,Poppins,sans-serif!important}
.nxpc-sec>summary em{display:inline-grid;place-items:center;min-width:26px;height:22px;padding:0 8px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--nxpd-mute);font:600 12px/1 Poppins,sans-serif;font-style:normal}
.nxpc-sec>summary::after{content:"+";margin-inline-start:auto;color:var(--nxpd-mute);font-size:20px;line-height:1}
.nxpc-sec[open]>summary::after{content:"\2212"}
.nxpc-secb{display:grid;gap:10px;padding:2px 14px 14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.nxpc-bugs .nxpc-secb{display:block}
.nxpc-entry{padding:12px;border:1px solid var(--nxpd-line);border-radius:12px;background:rgba(255,255,255,.03)}
.nxpc-entry h4{margin:0 0 6px!important;padding:0!important;border:0!important;color:#fff;font:700 16px/1.3 Rajdhani,Poppins,sans-serif!important}
.nxpc-crumb{margin:0 0 2px;color:var(--nxpd-mute);font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.nxpc-tw{overflow-x:auto;margin:8px 0}
.nxpc-table{width:100%;border-collapse:collapse;font-size:13.5px}
.nxpc-table td{padding:6px 8px;border:1px solid var(--nxpd-line);color:#dbe5df}
.nxpc-nobugs,.nxpc-count{margin:14px 0 0;color:var(--nxpd-mute);font-size:13px}
@media (prefers-reduced-motion:reduce){.nxpc-sec>summary{transition:none}}
.nxpd-in.nxpc-buff .nxpc-v b{color:var(--nxpd-buff)}.nxpd-in.nxpc-nerf .nxpc-v b{color:var(--nxpd-nerf)}.nxpd-in.nxpc-adjusted .nxpc-v b{color:var(--nxpd-adj)}
.nxpc-ab+.nxpc-ab{margin-block-start:2px}
