/* The Neural Horn — shared poster system (preview).
   Poster = 4:5 portrait. --pw = poster width in px (set by engine on each card).
   Grid: 6 cols inside a padding of --pp; baseline unit --pu. */
.pz{
  --pp:calc(var(--pw) * .04);          /* outer padding (~16px at 397w) */
  --pu:calc(var(--pw) * .02);          /* spacing unit (~8px) */
  --pl:max(9px, calc(var(--pw) * .028)); /* label size (~11px at 397w) */
  --pc:calc(var(--pw) * .1533);          /* one grid column: (pw − 2·pp) / 6. The second top label sits at left:var(--pc) inside the padded row */
  position:absolute;inset:0;overflow:hidden;
  display:flex;flex-direction:column;padding:var(--pp);
  font-family:var(--display);-webkit-font-smoothing:antialiased;
  filter:brightness(var(--bright,1));
}
/* 12px-style uppercase label voice, scaled to poster */
.pz .nh-lbl{font:400 var(--pl)/1.1 var(--label);text-transform:uppercase;letter-spacing:.01em}
/* paper grain overlay — add class nh-paper to any element (or the root) */
.pz .nh-paper::after,.pz.nh-paper::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.32;mix-blend-mode:multiply;z-index:50;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .42 0 0 0 0 .38 0 0 0 0 .3 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.pz.nh-dark.nh-paper::after,.pz .nh-dark.nh-paper::after{mix-blend-mode:screen;opacity:.16}
/* horn mark slot — engine injects the SVG; colour = currentColor */
.pz .nh-horn{display:inline-block;width:calc(var(--pw) * .068);line-height:0}
.pz .nh-horn svg{width:100%;height:auto;overflow:visible}
.pz .nh-horn path{fill:currentColor}
body.night .pz .nh-horn{filter:drop-shadow(0 0 calc(var(--glow,0) * 6px) #F1C345)}
/* screenshot frames */
.pz img{display:block;user-select:none;-webkit-user-drag:none;pointer-events:none}
