@keyframes SoftIn{0%{opacity:0;transform:scale(.985)translateY(6px)}70%{opacity:1;transform:scale(1.002)translateY(0)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes Pulse{0%{opacity:.4;transform:translate(-50%)scale(.98)}50%{opacity:1;transform:translate(-50%)scale(1.02)}to{opacity:.4;transform:translate(-50%)scale(.98)}}@keyframes SoftOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.98)translateY(2px)}}@keyframes PageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes ListItemIn{0%{opacity:0;transform:translateY(7px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes PullIndicatorIn{0%{opacity:0;transform:translate(-50%,6px)scale(.92)}to{opacity:1;transform:translate(-50%)scale(1)}}@keyframes ShimmerMove{0%{left:-150%}to{left:150%}}@keyframes Spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.button{text-wrap:nowrap;cursor:pointer;transition:transform var(--motion-fast,.12s) var(--motion-ease,ease-in), opacity var(--motion-fast,.12s) var(--motion-ease,ease-in), background-color var(--motion-fast,.12s) var(--motion-ease,ease-in);will-change:transform;border:none;border-radius:999px;justify-content:center;align-items:center;gap:10px;font-weight:600;display:inline-flex;transform:scale(1)}.button:active{transform:scale(.95)}.button{transition:transform var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease), opacity var(--motion-fast) var(--motion-ease);will-change:transform}.button--full{width:100%}.button--small{height:32px;padding:0 12px;font-size:clamp(13px,1.3vw,15px);line-height:1.4}.button--medium{height:50px;padding:0 20px;font-size:clamp(14px,1.4vw,16px);line-height:1.5}.button--large{height:65px;padding:0 25px;font-size:clamp(14px,1.4vw,16px);line-height:1.5}.button--circle{aspect-ratio:1;border-radius:50%;padding:0}.button--primary{background-color:var(--primary);color:var(--text-primary)}.button--primary:hover,.button--primary:active{background-color:var(--primary-hover)}.button--surface{background-color:var(--surface);color:var(--text)}.button--surface:hover,.button--surface:active{background-color:var(--surface-secondary)}.button--secondary{background-color:var(--surface-secondary);color:var(--text)}.button--secondary:hover,.button--secondary:active{background-color:var(--surface-secondary-hover)}.button--secondary.button--small{border:1px solid var(--surface-border)}.button--dark{background-color:var(--surface-dark);color:var(--bg)}.button--dark:hover,.button--dark:active{background-color:var(--surface-dark-hover)}.button--background{background-color:var(--bg);color:var(--text)}.button--background:hover,.button--background:active{background-color:var(--surface-secondary)}.button--transparent{color:var(--text);background-color:#0000}.button--transparent:hover,.button--transparent:active{background-color:var(--surface)}.button--transparent:disabled{background-color:#0000!important}.button--glass{background:var(--contextMenu-bg);color:var(--text);border:1px solid var(--surface-border);-webkit-backdrop-filter:blur(10px)}.button--glass:hover,.button--glass:active{background-color:var(--contextMenu-bg-hover)}.button--glass:disabled{color:var(--text-dimmed)}.button--toneMode-full.button--tone-danger{background-color:var(--danger-bg);color:var(--danger)}.button--toneMode-full.button--tone-danger:hover{background-color:var(--danger-bg-hover)}.button--toneMode-full.button--tone-danger .muted{color:var(--danger)}.button--toneMode-full.button--tone-primary{background-color:var(--primary-bg);color:var(--primary)}.button--toneMode-full.button--tone-primary:hover{background-color:var(--primary-bg-hover)}.button--toneMode-full.button--tone-info{background-color:var(--info-bg);color:var(--info)}.button--toneMode-full.button--tone-info:hover{background-color:var(--info-bg-hover)}.button--toneMode-full.button--primary.button--tone-info{background-color:var(--info);color:var(--text-primary)}.button--toneMode-text.button--tone-danger{color:var(--danger)}.button--toneMode-text.button--tone-info{color:var(--info)}.button:disabled{background-color:var(--surface-secondary);color:var(--text-muted);cursor:not-allowed;pointer-events:none}.button--text-xs{font-size:clamp(12px,1.2vw,13px);line-height:1.4}.button--text-sm{font-size:clamp(13px,1.3vw,15px);line-height:1.4}.button--text-md{font-size:clamp(14px,1.4vw,16px);line-height:1.5}.button--text-lg{font-size:clamp(16px,1.6vw,18px);line-height:1.5}.button--text-xl{font-size:clamp(18px,1.8vw,22px);line-height:1.4}.button--text-2xl{font-size:clamp(22px,2vw,26px);line-height:1.3}.button--text-medium{font-weight:500}.button--text-semibold{font-weight:600}.spin{opacity:.5;animation:1s linear infinite Spin}
