/* P6 shared button recipe; component tokens keep the approved source expressions. */
.ns-btn{--tl-compact-transition:all 0.15s;--tl-compact-shadow:0 1px 2px rgba(0,0,0,.05);--tl-compact-line-height:1;--tl-compact-font-weight:500;--tl-compact-border:0.5px solid var(--border);--tl-compact-radius:10px;--tl-compact-padding:0 12px;--tl-compact-font-size:13px;--tl-compact-height:32px;--tl-compact-gap:8px;display:inline-flex;align-items:center;justify-content:center;gap:var(--tl-compact-gap);height:var(--tl-compact-height);font-size:var(--tl-compact-font-size);padding:var(--tl-compact-padding);border-radius:var(--tl-compact-radius);border:var(--tl-compact-border);background:var(--chip-bg);color:var(--text);cursor:pointer;font-family:inherit;font-weight:var(--tl-compact-font-weight);line-height:var(--tl-compact-line-height);white-space:nowrap;box-shadow:var(--tl-compact-shadow);transition:var(--tl-compact-transition)}
@media(hover:hover){.ns-btn:hover:not(:disabled){background:var(--accent-veil)}}
.ns-btn:active:not(:disabled){--tl-compact-press:translateY(1px);transform:var(--tl-compact-press)}
.ns-btn:focus-visible{--tl-compact-focus:0 0 0 3px var(--focus-ring);outline:none;box-shadow:var(--tl-compact-focus)}
.ns-btn-primary{background:var(--accent-fill);border-color:var(--accent);color:var(--on-accent)}
@media(hover:hover){.ns-btn-primary:hover:not(:disabled){background:var(--accent-fill-hover);border-color:var(--accent-hover);color:var(--on-accent)}}
.ns-btn-primary:active:not(:disabled){background:var(--accent-pressed);border-color:var(--accent-pressed);color:var(--on-accent)}
.ns-btn-primary:disabled{background:var(--surface-disabled);border-color:var(--surface-disabled);color:var(--text-disabled)}
.ns-btn:disabled{color:var(--text-disabled);cursor:wait}
