Files
sim/.claude/rules/sim-styling.md
Emir Karabeg 2daf34386e fix(copilot): ui/ux (#2891)
* feat(claude): added rules

* fix(copilot): chat loading; refactor(copilot): components, utils, hooks

* fix(copilot): options selection strikethrough

* fix(copilot): options render inside thinking

* fix(copilot): checkpoints, user-input; improvement(code): colors

* fix(copilot): scrolling, tool-call truncation, thinking ui

* fix(copilot): tool call spacing and shimmer/actions on previous messages

* improvement(copilot): queue

* addressed comments
2026-01-19 23:23:21 -08:00

826 B

paths
paths
apps/sim/**/*.tsx
apps/sim/**/*.css

Styling Rules

Tailwind

  1. No inline styles - Use Tailwind classes
  2. No duplicate dark classes - Skip dark: when value matches light mode
  3. Exact values - text-[14px], h-[26px]
  4. Transitions - transition-colors for interactive states

Conditional Classes

import { cn } from '@/lib/utils'

<div className={cn(
  'base-classes',
  isActive && 'active-classes',
  disabled ? 'opacity-60' : 'hover:bg-accent'
)} />

CSS Variables

For dynamic values (widths, heights) synced with stores:

// In store
setWidth: (width) => {
  set({ width })
  document.documentElement.style.setProperty('--sidebar-width', `${width}px`)
}

// In component
<aside style={{ width: 'var(--sidebar-width)' }} />