.nl-button{all:unset;box-sizing:border-box;position:relative;gap:8px;font-weight:var(--nl-font-weight-medium);border-radius:var(--nl-radius-sm);cursor:pointer;transition:all var(--nl-transition-base);font-family:inherit;white-space:nowrap}.nl-button,.nl-button-label{display:inline-flex;align-items:center;justify-content:center}.nl-button-label{gap:inherit}.nl-button:disabled{opacity:.5;cursor:not-allowed}.nl-button.is-loading:disabled{opacity:.82}.nl-button-small{height:32px;padding:0 12px;font-size:var(--nl-font-base)}.nl-button-medium{height:36px;padding:0 14px;font-size:var(--nl-font-base);min-width:60px}.nl-button-primary{background-color:var(--nl-color-primary);color:var(--nl-button-primary-text)}.nl-button-primary:hover:not(:disabled){background-color:var(--nl-color-primary-hover)}.nl-button-primary:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--nl-color-primary) 30%,transparent)}.nl-button-secondary{background-color:var(--nl-card-bg);color:var(--nl-text-primary);border:1.5px solid var(--nl-border-light)}.nl-button-secondary:hover:not(:disabled){border-color:var(--nl-color-primary);color:var(--nl-color-primary);background-color:var(--nl-bg-gray-50)}.nl-button-secondary:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--nl-color-primary) 10%,transparent)}.nl-button-danger{background-color:var(--nl-color-error);color:var(--nl-button-danger-text)}.nl-button-danger:hover:not(:disabled){background-color:color-mix(in srgb,var(--nl-color-error) 90%,black)}.nl-button-text{background-color:transparent;color:var(--nl-text-secondary);border:none;padding:0 8px}.nl-button-text:hover:not(:disabled){background-color:var(--nl-bg-gray-100);color:var(--nl-color-primary)}.nl-button-icon-only{padding:0;width:32px;min-width:32px;gap:0}.nl-button-icon-only.nl-button-medium{width:36px;min-width:36px}@property --nl-button-loading-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.nl-button.is-loading:after{content:"";position:absolute;inset:0;border-radius:inherit;padding:2px;background:conic-gradient(from var(--nl-button-loading-angle),transparent 0deg,transparent 240deg,color-mix(in srgb,white 18%,transparent) 280deg,color-mix(in srgb,white 55%,transparent) 305deg,color-mix(in srgb,white 85%,transparent) 320deg,white 332deg,#fff 338deg,white 344deg,color-mix(in srgb,white 70%,transparent) 352deg,transparent 1turn);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;filter:drop-shadow(0 0 5px color-mix(in srgb,white 65%,transparent));animation:nl-button-border-spin 1.1s linear infinite;pointer-events:none}.nl-button-secondary.is-loading:after,.nl-button-text.is-loading:after{background:conic-gradient(from var(--nl-button-loading-angle),transparent 0deg,transparent 240deg,color-mix(in srgb,var(--nl-color-primary) 20%,transparent) 280deg,color-mix(in srgb,var(--nl-color-primary) 65%,transparent) 305deg,var(--nl-color-primary) 320deg,color-mix(in srgb,var(--nl-color-primary) 55%,white) 332deg,white 338deg,color-mix(in srgb,var(--nl-color-primary) 55%,white) 344deg,var(--nl-color-primary) 352deg,transparent 1turn);filter:drop-shadow(0 0 5px color-mix(in srgb,var(--nl-color-primary) 55%,transparent))}@keyframes nl-button-border-spin{to{--nl-button-loading-angle:360deg}}