/* NCB Full Roster section — bright, premium, laptop-first.
 * Scoped under .ncb-scope so existing page styles are untouched.
 * Works with the shared league-agnostic popup (data-player="ncb:…").
 * ?v=20261005c1
 */
.ncb-scope{--nacc:var(--lg-pink);--nacctext:var(--desert-card)}.ncb-band{background:var(--desert-card);border:1px solid var(--desert-pressed);border-radius:20px;
  padding:30px 30px 26px;margin:8px 0;color:var(--desert-ink);
  box-shadow:0 18px 50px rgba(var(--desert-shadow-rgb), .30)}.ncb-head{margin-bottom:6px}.ncb-kick{display:block;font-size:11px;font-weight:800;letter-spacing:3px;
  text-transform:uppercase;color:var(--nacc);margin-bottom:10px}.ncb-head h2{font-family:'Previously Display';
  font-size:clamp(28px,4vw,40px);font-weight:400;letter-spacing:.3px;
  color:var(--desert-ink);margin:0 0 8px}.ncb-sub{font-size:14px;color:var(--desert-ink-dim);margin:0;max-width:640px;line-height:1.55}.ncb-group{font-family:'Previously Display';
  font-size:20px;font-weight:400;margin:28px 0 14px;display:flex;
  align-items:center;gap:10px;color:var(--desert-ink)}.ncb-group:first-of-type{margin-top:10px}.ncb-count{font-family:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  font-size:11px;font-weight:800;letter-spacing:1px;background:var(--nacc);
  color:var(--nacctext);border-radius:999px;padding:3px 10px}.ncb-grid{display:grid;grid-template-columns:1fr;gap:14px}@media(min-width:560px){.ncb-grid{grid-template-columns:1fr 1fr}}@media(min-width:960px){.ncb-grid{grid-template-columns:1fr 1fr 1fr 1fr}}.ncb-card{border:1px solid var(--desert-pressed);background:var(--desert-card);border-radius:14px;
  overflow:hidden;cursor:pointer;text-align:left;font:inherit;color:inherit;
  padding:0;display:block;width:100%;
  transition:transform .15s ease,box-shadow .15s ease;
  box-shadow:0 2px 10px rgba(var(--desert-shadow-rgb), .06)}.ncb-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(var(--desert-shadow-rgb), .14)}.ncb-card:focus-visible{outline:3px solid var(--nacc);outline-offset:2px}.ncb-ph{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--desert-pressed);display:block}.ncb-init{position:absolute;inset:0;display:flex;align-items:center;
  justify-content:center;font-family:'Previously Display';font-size:46px;font-weight:400;
  letter-spacing:2px}.ncb-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  object-position:top center;display:block}.ncb-num{position:absolute;left:10px;bottom:10px;min-width:44px;height:30px;
  padding:0 10px;border-radius:8px;background:var(--nacc);color:var(--nacctext);
  display:inline-flex;align-items:center;justify-content:center;font-weight:800;
  font-size:12px;letter-spacing:.5px;box-shadow:0 2px 8px rgba(var(--desert-shadow-rgb), .25)}.ncb-b{padding:12px 14px 14px;display:block}.ncb-name{font-family:'Previously Display';
  font-size:16px;font-weight:400;line-height:1.3;display:block;color:var(--desert-ink)}.ncb-sub2{font-size:12px;color:var(--desert-ink-dim);margin-top:5px;display:block}.ncb-tap{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;
  color:var(--nacc);font-weight:800;margin-top:9px;display:block}.ncb-updated{margin-top:22px;font-size:12px;color:var(--desert-ink-dim);letter-spacing:.4px}@media(max-width:560px){.ncb-band{padding:22px 18px 20px;border-radius:16px}.ncb-init{font-size:38px}
}

/* -- Roster logo watermark (James 2026-10-12) --------------------------
   Team logo behind the player's face, replacing the initials monogram.
   The .pv-wm <img> is injected as the first child of each .XX-ph bubble.
   Two states: with a headshot, the logo sits faint behind the face; with
   no headshot, the logo IS the card visual (strong) and initials retire.
   Fail-closed: a logo file that fails removes itself and initials return. */
[class$="-ph"] img.pv-wm{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-52%);
  width:86px;height:86px;max-width:80%;object-fit:contain;
  opacity:.16;pointer-events:none;z-index:0;
}
[class$="-ph"]:has(> .pv-wm) > [class$="-init"]{visibility:hidden}
[class$="-ph"]:has(> .pv-wm):not(:has(> img:not(.pv-wm))) > img.pv-wm{
  opacity:.92;width:106px;height:106px;transform:translate(-50%,-50%);
}
@media (max-width:480px){
  [class$="-ph"] img.pv-wm{width:62px;height:62px}
  [class$="-ph"]:has(> .pv-wm):not(:has(> img:not(.pv-wm))) > img.pv-wm{width:84px;height:84px}
}

/*deepaudit-20261017*/
