/* NTIS badges & tags. Badges state (read-only status, severity, counts);
   tags describe and can be selected or removed. Status is never colour alone:
   every badge carries a word, a dot or an icon. */
.ntis-badge{display:inline-flex;align-items:center;gap:var(--space-2);height:22px;padding-inline:var(--space-3);border:var(--border-hairline) solid transparent;border-radius:var(--radius-pill);font-family:var(--font-core);font-size:var(--fs-caption);font-weight:var(--w-medium);line-height:1;white-space:nowrap}
.ntis-badge--lg{height:28px;padding-inline:var(--space-4);font-size:var(--fs-body-sm)}
.ntis-badge--neutral{background:var(--status-neutral-bg);color:var(--status-neutral-fg);border-color:var(--status-neutral-border)}
.ntis-badge--info{background:var(--status-info-bg);color:var(--status-info-fg);border-color:var(--status-info-border)}
.ntis-badge--success{background:var(--status-success-bg);color:var(--status-success-fg);border-color:var(--status-success-border)}
.ntis-badge--warning{background:var(--status-warning-bg);color:var(--status-warning-fg);border-color:var(--status-warning-border)}
.ntis-badge--danger{background:var(--status-danger-bg);color:var(--status-danger-fg);border-color:var(--status-danger-border)}
.ntis-badge--brand{background:var(--brand-secondary);color:var(--text-on-brand)}
.ntis-badge--solid-danger{background:var(--brand-tertiary);color:var(--text-on-brand)}
.ntis-badge__dot{flex:none;width:6px;height:6px;border-radius:var(--radius-circle);background:currentColor}
.ntis-badge--neutral .ntis-badge__dot{background:var(--status-neutral-solid)}
.ntis-badge--info .ntis-badge__dot{background:var(--status-info-solid)}
.ntis-badge--success .ntis-badge__dot{background:var(--status-success-solid)}
.ntis-badge--warning .ntis-badge__dot{background:var(--status-warning-solid)}
.ntis-badge--danger .ntis-badge__dot{background:var(--status-danger-solid)}
.ntis-badge--count{min-width:20px;height:20px;padding-inline:var(--space-2);justify-content:center;background:var(--brand-tertiary);border-color:transparent;color:var(--text-on-brand);font-variant-numeric:tabular-nums}

.ntis-tag{display:inline-flex;align-items:center;gap:var(--space-2);height:26px;padding-inline:var(--space-3);background:var(--fill-subtle);border:var(--border-hairline) solid var(--border-subtle);border-radius:var(--radius-sm);font-family:var(--font-core);font-size:var(--fs-body-sm);color:var(--text-body);white-space:nowrap;transition:var(--t-color)}
.ntis-tag--brand{background:var(--brand-secondary-soft);border-color:var(--border-default);color:var(--brand-secondary-ink)}
.ntis-tag--selected{background:var(--fill-selected);border-color:var(--border-selected);color:var(--brand-primary-ink)}
.ntis-tag--clickable{cursor:pointer}
.ntis-tag--clickable:hover,.ntis-tag.is-hover{background:var(--fill-hover);border-color:var(--border-default)}
.ntis-tag--selected.ntis-tag--clickable:hover,.ntis-tag--selected.is-hover{background:var(--fill-selected);border-color:var(--border-selected)}
.ntis-tag--clickable:focus-visible,.ntis-tag.is-focus{outline:none;box-shadow:var(--focus-ring)}
.ntis-tag--disabled{background:transparent;color:var(--text-disabled);cursor:not-allowed}
.ntis-tag__remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-inline-start:var(--space-1);border:0;padding:0;background:transparent;color:var(--text-subtle);border-radius:var(--radius-xs);cursor:pointer}
.ntis-tag__remove:hover{background:var(--fill-pressed);color:var(--text-strong)}
.ntis-tag__remove:focus-visible{outline:none;box-shadow:var(--focus-ring)}
