.ui-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--neutral-0);box-shadow:var(--shadow-card);padding:1.5rem}.ui-btn{--ui-btn-shadow:none;border-radius:var(--radius-md);min-height:2.75rem;color:var(--text-main);white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;box-shadow:var(--ui-btn-shadow);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.875rem;font-weight:600;line-height:1;transition:background-color .15s,border-color .15s,color .15s,opacity .15s;display:inline-flex}.ui-btn:hover:not(:disabled):not(.ui-btn-primary){opacity:.85}.ui-btn:active:not(:disabled):not(.ui-btn-primary){opacity:.75}.ui-btn:disabled{opacity:.4;cursor:not-allowed}.ui-btn:focus-visible{outline:none}.ui-btn.is-loading,.ui-btn[data-loading=true]{cursor:wait}.ui-btn-primary{background:var(--brand-500);color:var(--primary-foreground)}.ui-btn-primary:hover:not(:disabled){opacity:1;background:var(--brand-400)}.ui-btn-primary:active:not(:disabled){opacity:1;background:var(--brand-300)}.ui-btn-secondary{border-color:var(--border-strong);background:var(--neutral-0);color:var(--text-main)}.ui-btn-outline{border-color:var(--border-strong);color:var(--text-main);background:0 0}.ui-btn-outline:hover:not(:disabled),.ui-btn-secondary:hover:not(:disabled){background:var(--bg-muted);opacity:1}.ui-btn-ghost{color:var(--text-soft);background:0 0;border-color:#0000}.ui-btn-ghost:hover:not(:disabled){background:var(--bg-muted);opacity:1}.ui-btn-danger{color:var(--danger);background:#e539350f;border-color:#e5393533}.ui-btn-danger:hover:not(:disabled){background:#e539351f;border-color:#e5393559}.ui-btn-sm{min-height:2.25rem;padding:.375rem .75rem;font-size:.8125rem}.ui-btn-md{min-height:2.75rem}.ui-btn-lg{min-height:3rem;padding-inline:1.25rem;font-size:.9375rem}.ui-btn-spinner{opacity:.85;border:2px solid;border-right-color:#0000;border-radius:999px;flex-shrink:0;width:.95rem;height:.95rem;animation:.8s linear infinite ui-btn-spin}.ui-btn.ui-btn--loading-solo{justify-content:center;gap:0}.ui-btn.ui-btn--loading-solo.ui-btn-sm{min-width:5.75rem}.ui-btn.ui-btn--loading-solo .ui-btn-spinner--solo{margin:0}.ui-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}.ui-input-wrapper{gap:.375rem;width:100%;display:grid}.ui-label{color:var(--text-main);align-items:center;gap:.375rem;font-size:.8125rem;font-weight:600;display:inline-flex}.ui-input,.ui-textarea,select.ui-input{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--neutral-0);width:100%;min-height:2.75rem;color:var(--text-main);outline:none;padding:.625rem .75rem;transition:border-color .15s}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--text-faint)}.ui-input:focus,.ui-input:focus-visible,.ui-textarea:focus,.ui-textarea:focus-visible,select.ui-input:focus,select.ui-input:focus-visible{background:var(--neutral-0)}.ui-input-error{border-color:var(--danger)}.ui-error-text{color:var(--danger);font-size:.8125rem;font-weight:500}.ui-subtle-text{color:var(--text-soft)}.ui-eyebrow{color:var(--text-faint);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:600}.ui-surface-muted{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-muted)}.ui-empty-state{text-align:center;color:var(--text-soft);justify-items:center;gap:.5rem;padding:2rem 1.5rem;display:grid}.ui-status-pill{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-muted);color:var(--text-soft);align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.ui-status-pill:before{content:"";background:currentColor;border-radius:999px;width:.375rem;height:.375rem}.ui-status-pill.success{color:var(--success)}.ui-status-pill.warn{color:var(--warning)}.ui-status-pill.error{color:var(--danger)}@keyframes ui-btn-spin{to{transform:rotate(360deg)}}@media (width<=768px){.ui-input,.ui-textarea,select.ui-input{font-size:16px}}
