.smartbutton{justify-content:center;align-items:center;gap:var(--spacing-md);width:fit-content;font-family:inherit;font-weight:var(--font-weight-medium);text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-base) var(--ease-in-out);border:none;outline:none;line-height:1.5;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.smartbutton::-moz-focus-inner{border:0}.smartbutton.full-width{width:100%}.smartbutton.disabled,.smartbutton:disabled{cursor:not-allowed;opacity:.5}.smartbutton.loading{cursor:wait}.smartbutton.size-xxs{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xxs);min-height:var(--field-height-xxs);gap:var(--spacing-xs)}.smartbutton.size-xs{padding:var(--spacing-xs) var(--spacing-lg);font-size:var(--font-size-xs);min-height:var(--field-height-xs);gap:var(--spacing-xs)}.smartbutton.size-small{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);min-height:var(--field-height-sm);gap:var(--spacing-sm)}.smartbutton.size-medium{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-md);min-height:var(--field-height-md);gap:var(--spacing-md)}.smartbutton.size-large{padding:var(--spacing-lg) var(--spacing-xl);font-size:var(--font-size-lg);min-height:var(--field-height-lg);gap:var(--spacing-lg)}.smartbutton.size-xl{padding:var(--spacing-lg) calc(var(--spacing-xl) + var(--spacing-md));font-size:var(--font-size-xl);min-height:var(--field-height-xl);gap:var(--spacing-lg)}.smartbutton.icon-only.size-xxs{padding:var(--spacing-xs);min-width:var(--field-height-xxs)}.smartbutton.icon-only.size-xs{padding:var(--spacing-xs);min-width:var(--field-height-xs)}.smartbutton.icon-only.size-small{padding:var(--spacing-sm);min-width:var(--field-height-sm)}.smartbutton.icon-only.size-medium{padding:var(--spacing-md);min-width:var(--field-height-md)}.smartbutton.icon-only.size-large{padding:var(--spacing-lg);min-width:var(--field-height-lg)}.smartbutton.icon-only.size-xl{padding:var(--spacing-lg);min-width:var(--field-height-xl)}.smartbutton.shape-rectangle{border-radius:calc(var(--border-radius-sm) / 2)}.smartbutton.shape-rounded{border-radius:var(--border-radius-sm)}.smartbutton.shape-pill{border-radius:9999px}.smartbutton.shape-circle{aspect-ratio:1;border-radius:50%;padding:var(--spacing-md)!important}.smartbutton.shape-square{border-radius:calc(var(--border-radius-sm) / 2);aspect-ratio:1}.smartbutton.color-primary{--btn-color:var(--accent-primary);--btn-color-hover:var(--accent-primary-hover);--btn-color-active:var(--border-focus);--btn-color-light:var(--accent-primary-light);--btn-color-dark:var(--border-focus)}.smartbutton.color-secondary{--btn-color:var(--accent-secondary);--btn-color-hover:var(--accent-primary);--btn-color-active:var(--accent-primary-hover);--btn-color-light:var(--accent-primary-light);--btn-color-dark:var(--accent-primary)}.smartbutton.color-success{--btn-color:var(--success);--btn-color-hover:hsl(var(--success-hue), 93%, 28%);--btn-color-active:hsl(var(--success-hue), 93%, 23%);--btn-color-light:var(--success-light);--btn-color-dark:hsl(var(--success-hue), 93%, 20%)}.smartbutton.color-error{--btn-color:var(--error);--btn-color-hover:hsl(var(--error-hue), 100%, 45%);--btn-color-active:hsl(var(--error-hue), 100%, 40%);--btn-color-light:var(--error-light);--btn-color-dark:hsl(var(--error-hue), 100%, 30%)}.smartbutton.color-warning{--btn-color:var(--warning);--btn-color-hover:hsl(var(--warning-hue), 100%, 44%);--btn-color-active:hsl(var(--warning-hue), 100%, 39%);--btn-color-light:var(--warning-light);--btn-color-dark:hsl(var(--warning-hue), 100%, 30%)}.smartbutton.color-info{--btn-color:var(--info);--btn-color-hover:var(--accent-primary-hover);--btn-color-active:var(--border-focus);--btn-color-light:var(--info-light);--btn-color-dark:var(--border-focus)}.smartbutton.color-neutral{--btn-color:var(--text-secondary);--btn-color-hover:var(--text-primary);--btn-color-active:hsl(var(--neutral-hue), 0%, 15%);--btn-color-light:var(--bg-tertiary);--btn-color-dark:var(--text-primary)}.smartbutton.variant-filled{background-color:var(--btn-color);color:var(--bg-primary)}.smartbutton.variant-filled:hover:not(.disabled):not(:disabled){background-color:var(--btn-color-hover);transform:translateY(-1px)}.smartbutton.variant-filled:active:not(.disabled):not(:disabled){background-color:var(--btn-color-active);transform:translateY(0)}.smartbutton.variant-filled:not(.disable-elevation){box-shadow:var(--shadow-sm)}.smartbutton.variant-filled:hover:not(.disabled):not(:disabled):not(.disable-elevation){box-shadow:var(--shadow-md)}.smartbutton.variant-outlined{color:var(--btn-color);border:2px solid var(--btn-color);background-color:#0000}.smartbutton.variant-outlined:hover:not(.disabled):not(:disabled){background-color:var(--btn-color-light);border-color:var(--btn-color-hover);color:var(--btn-color-hover)}.smartbutton.variant-outlined:active:not(.disabled):not(:disabled){background-color:var(--btn-color-light);border-color:var(--btn-color-active);color:var(--btn-color-active)}.smartbutton.variant-text{color:var(--btn-color);background-color:#0000}.smartbutton.variant-text:hover:not(.disabled):not(:disabled){background-color:var(--btn-color-light);color:var(--btn-color-hover)}.smartbutton.variant-text:active:not(.disabled):not(:disabled){background-color:var(--btn-color-light);color:var(--btn-color-active)}.smartbutton.variant-elevated{background-color:var(--card-bg);color:var(--btn-color);box-shadow:var(--shadow-md)}.smartbutton.variant-elevated:hover:not(.disabled):not(:disabled){background-color:var(--btn-color-light);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.smartbutton.variant-elevated:active:not(.disabled):not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.smartbutton.variant-tonal{background-color:var(--btn-color-light);color:var(--btn-color-dark)}.smartbutton.variant-tonal:hover:not(.disabled):not(:disabled){background-color:var(--btn-color);color:var(--bg-primary)}.smartbutton.variant-tonal:active:not(.disabled):not(:disabled){background-color:var(--btn-color-hover)}.smartbutton.show-focus-ring:focus-visible{outline:2px solid var(--btn-color);outline-offset:2px}.smartbutton-content{justify-content:center;align-items:center;gap:inherit;transition:opacity var(--transition-base) ease;display:inline-flex}.smartbutton.loading.loading-overlay .smartbutton-content,.smartbutton.loading.loading-center .smartbutton-content{opacity:0}.smartbutton-icon{justify-content:center;align-items:center;line-height:1;display:inline-flex}.smartbutton.size-xxs .smartbutton-icon{width:12px;height:12px;font-size:12px}.smartbutton.size-xs .smartbutton-icon{width:14px;height:14px;font-size:14px}.smartbutton.size-small .smartbutton-icon{width:16px;height:16px;font-size:16px}.smartbutton.size-medium .smartbutton-icon{width:18px;height:18px;font-size:18px}.smartbutton.size-large .smartbutton-icon{width:20px;height:20px;font-size:20px}.smartbutton.size-xl .smartbutton-icon{width:22px;height:22px;font-size:22px}.smartbutton-loading{justify-content:center;align-items:center;display:flex;position:absolute}.smartbutton-loading.loading-overlay,.smartbutton-loading.loading-center{inset:0}.smartbutton-loading.loading-start,.smartbutton-loading.loading-end{position:relative}.smartbutton-spinner{opacity:.8;border:2px solid;border-top-color:#0000;border-radius:50%;animation:.8s linear infinite smartbutton-spin;display:inline-block}.smartbutton.size-xxs .smartbutton-spinner{border-width:1.5px;width:10px;height:10px}.smartbutton.size-xs .smartbutton-spinner{border-width:1.5px;width:12px;height:12px}.smartbutton.size-small .smartbutton-spinner{border-width:2px;width:14px;height:14px}.smartbutton.size-medium .smartbutton-spinner{border-width:2px;width:16px;height:16px}.smartbutton.size-large .smartbutton-spinner{border-width:2px;width:18px;height:18px}.smartbutton.size-xl .smartbutton-spinner{border-width:2px;width:20px;height:20px}@keyframes smartbutton-spin{to{transform:rotate(360deg)}}.smartbutton-spinner .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.smartbutton-ripple{opacity:.3;pointer-events:none;background-color:currentColor;border-radius:50%;animation:.6s ease-out smartbutton-ripple;position:absolute}.smartbutton.variant-filled .smartbutton-ripple{opacity:.4}@keyframes smartbutton-ripple{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(2.5)}}.smartbutton:not(.disable-text-transform){text-transform:uppercase;letter-spacing:.5px}.smartbutton-group{display:inline-flex;position:relative}.smartbutton-group.orientation-horizontal{flex-direction:row}.smartbutton-group.orientation-vertical{flex-direction:column}.smartbutton-group.full-width{width:100%;display:flex}.smartbutton-group.full-width>.smartbutton{flex:1}.smartbutton-group.orientation-horizontal>.smartbutton:not(:first-child){margin-left:-2px}.smartbutton-group.orientation-vertical>.smartbutton:not(:first-child){margin-top:-2px}.smartbutton-group.orientation-horizontal>.smartbutton.group-first{border-top-right-radius:0;border-bottom-right-radius:0}.smartbutton-group.orientation-horizontal>.smartbutton.group-middle{border-radius:0}.smartbutton-group.orientation-horizontal>.smartbutton.group-last{border-top-left-radius:0;border-bottom-left-radius:0}.smartbutton-group.orientation-vertical>.smartbutton.group-first{border-bottom-right-radius:0;border-bottom-left-radius:0}.smartbutton-group.orientation-vertical>.smartbutton.group-middle{border-radius:0}.smartbutton-group.orientation-vertical>.smartbutton.group-last{border-top-left-radius:0;border-top-right-radius:0}.smartbutton[title]{position:relative}@media (prefers-contrast:high){.smartbutton.variant-outlined{border-width:3px}.smartbutton:focus-visible{outline-width:3px}}@media (prefers-reduced-motion:reduce){.smartbutton{transition:none}.smartbutton-ripple,.smartbutton-spinner{animation:none}.smartbutton:hover:not(.disabled):not(:disabled){transform:none}}[data-theme=dark] .smartbutton.variant-elevated{background-color:var(--card-bg)}[data-theme=dark] .smartbutton.variant-elevated:hover:not(.disabled):not(:disabled){background-color:var(--btn-color-light)}[data-theme=dark] .smartbutton.variant-filled{color:var(--text-primary)}.smartbutton[href]{text-decoration:none}.smartbutton[href]:visited{color:inherit}
