.neo-button{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;border-radius:8px;margin:0;color:hsla(0,0%,100%,.78);background:hsla(0,0%,100%,.06);font-weight:400;border:1px solid hsla(0,0%,100%,.42);gap:8px;cursor:pointer;transition:background var(--dur-hover) var(--ease-micro),box-shadow var(--dur-hover) var(--ease-micro),color var(--dur-hover) var(--ease-micro),border-color var(--dur-hover) var(--ease-micro),opacity var(--dur-hover) var(--ease-micro),transform var(--dur-press) var(--ease-micro);-webkit-tap-highlight-color:rgba(0,0,0,0);touch-action:manipulation}.neo-button.small{--neo-icon-size:16px}.neo-button.medium{--neo-icon-size:20px}.neo-button.large{--neo-icon-size:24px}.neo-button.small{height:32px;font-size:14px;font-weight:500;padding:6px 16px}.neo-button.medium{height:48px;font-size:16px;font-weight:500;padding:12px 20px}.neo-button.large{height:56px;font-size:20px;font-weight:500;line-height:28px;padding:14px 28px}.neo-button.primary{border:none;background:#ff7800;color:#fff;font-weight:500}@media(hover:hover)and (pointer:fine){.neo-button.primary:hover:not(:disabled){box-shadow:0 2px 8px rgba(255,120,0,.32)}}.neo-button.secondary{background:hsla(0,0%,100%,.01);border:1px solid hsla(0,0%,100%,.42);color:hsla(0,0%,100%,.78);font-weight:500}@media(hover:hover)and (pointer:fine){.neo-button.secondary:hover:not(:disabled){background:hsla(0,0%,100%,.06);box-shadow:0 2px 8px hsla(0,0%,100%,.03);color:#fff}.neo-button.secondary:hover:not(:disabled) .neo-button-icon svg,.neo-button.secondary:hover:not(:disabled) img{opacity:1;fill:#fff}.neo-button.secondary.large:hover:not(:disabled){box-shadow:0 2px 8px hsla(0,0%,100%,.16)}}.neo-button.tertiary{background:hsla(0,0%,100%,.01);border:none;color:#ff7800;font-weight:500;text-decoration:underline}@media(hover:hover)and (pointer:fine){.neo-button.tertiary:hover:not(:disabled){background:hsla(0,0%,100%,.06);text-decoration:none;color:#fff}}.neo-button.flex{flex:1 1}.neo-button.full-width{width:100%}.neo-button.icon-only{padding:6px;aspect-ratio:1}.neo-button.icon-only.small{width:32px;height:32px;padding:8px}.neo-button.icon-only.medium{width:48px;height:48px;padding:14px}.neo-button.icon-only.large{width:56px;height:56px;padding:16px}.neo-button.danger{background-color:rgba(255,0,0,.08);border:1px solid var(--red-1000)}@media(hover:hover)and (pointer:fine){.neo-button:hover:not(.primary):not(.secondary):not(.tertiary):not(:disabled){background:hsla(0,0%,100%,.06);box-shadow:0 2px 8px hsla(0,0%,100%,.08)}}.neo-button:active{transform:scale(.97)}.neo-button:focus-visible{border-color:var(--brand-1000);box-shadow:0 0 0 3px var(--brand-200)}.neo-button:focus-visible::placeholder{opacity:.5}.neo-button.is-disabled,.neo-button[disabled]{pointer-events:none;transform:none;opacity:.6}.neo-button .neo-button-icon{width:var(--neo-icon-size,24px);height:var(--neo-icon-size,24px);display:inline-flex}.neo-button .neo-button-icon>img,.neo-button .neo-button-icon>svg{width:100%;height:100%;display:block}.neo-button .neo-icon-swap{position:relative;width:100%;height:100%}.neo-button .neo-icon-swap-layer{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transition:transform var(--dur-base) var(--ease-spring),opacity var(--dur-hover) var(--ease-out)}.neo-button .neo-icon-swap-layer.active{transform:scale(1);opacity:1}.neo-button .neo-icon-swap-layer.inactive{transform:scale(.25);opacity:0}.neo-button .neo-icon-swap-layer svg{width:100%;height:100%;display:block}