.app-button[data-v-e521ab05]{justify-content:center;align-items:center;gap:var(--space-3);font-family:var(--font-ui);font-weight:var(--weight-medium);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;text-decoration:none;transition:background .12s,border-color .12s,transform 80ms;display:inline-flex}.app-button[data-v-e521ab05]:active:not([disabled]):not([aria-disabled=true]){transform:scale(.98)}.app-button[data-v-e521ab05]:focus-visible{box-shadow:var(--shadow-focus);outline:none}.app-button[aria-disabled=true][data-v-e521ab05],.app-button[disabled][data-v-e521ab05]{cursor:not-allowed;opacity:.55;background:var(--bg-surface-raised);color:var(--text-disabled);pointer-events:none;border-color:#0000}.app-button[data-size=sm][data-v-e521ab05]{height:28px;padding:0 var(--space-5);font-size:var(--text-small);border-radius:var(--radius-sm)}.app-button[data-size=md][data-v-e521ab05]{height:34px;font-size:var(--text-body);padding:0 14px}.app-button[data-size=lg][data-v-e521ab05]{height:40px;font-size:var(--text-h3);gap:var(--space-4);padding:0 18px}.app-button[data-size=run][data-v-e521ab05]{height:var(--run-touch-target);font-size:var(--run-text-body);gap:10px;padding:0 22px}.app-button[data-variant=primary][data-v-e521ab05]{background:var(--brand);color:var(--text-on-accent);box-shadow:var(--shadow-sm)}.app-button[data-variant=primary][data-v-e521ab05]:hover:not([aria-disabled=true]){background:var(--brand-hover)}.app-button[data-variant=primary][data-v-e521ab05]:active:not([aria-disabled=true]){background:var(--brand-active)}.app-button[data-variant=secondary][data-v-e521ab05]{background:var(--bg-surface-raised);color:var(--text-primary);border-color:var(--border-default)}.app-button[data-variant=secondary][data-v-e521ab05]:hover:not([aria-disabled=true]){background:var(--bg-hover)}.app-button[data-variant=ghost][data-v-e521ab05]{color:var(--text-secondary);background:0 0}.app-button[data-variant=ghost][data-v-e521ab05]:hover:not([aria-disabled=true]){background:var(--bg-hover)}.app-button[data-variant=destructive][data-v-e521ab05]{background:var(--danger);color:var(--text-on-accent)}.app-button__icon[data-v-e521ab05]{opacity:.9}.app-button[data-variant=destructive] .app-button__icon[data-v-e521ab05],.app-button[data-variant=primary] .app-button__icon[data-v-e521ab05]{opacity:1}
