/* OrgFlow base styles */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; line-height: 1.6; color: #1a1a1a; max-width: 1200px; margin: 0 auto; padding: 0 1rem; }

nav { display: flex; gap: 1rem; align-items: center; padding: 1rem 0; border-bottom: 1px solid #e0e0e0; margin-bottom: 1.5rem; }
nav a { text-decoration: none; color: #2563eb; }
nav a:first-child { font-weight: 700; color: #1a1a1a; margin-right: auto; }

h1, h2, h3 { margin-bottom: 0.5rem; }
main { padding: 1rem 0; }

.message { padding: 0.75rem 1rem; margin-bottom: 1rem; border-radius: 4px; }
.message.success { background: #d1fae5; color: #065f46; }
.message.error { background: #fee2e2; color: #991b1b; }
.message.warning { background: #fef3c7; color: #92400e; }
.message.info { background: #dbeafe; color: #1e40af; }

button, .btn { padding: 0.5rem 1rem; border: none; border-radius: 4px; cursor: pointer; background: #2563eb; color: white; font-size: 0.875rem; }
button:hover, .btn:hover { background: #1d4ed8; }

input, textarea, select { padding: 0.5rem; border: 1px solid #d1d5db; border-radius: 4px; font-size: 0.875rem; width: 100%; }
textarea { min-height: 80px; }

.badge { display: inline-block; padding: 0.125rem 0.5rem; border-radius: 9999px; font-size: 0.75rem; font-weight: 500; }
.badge-primary { background: #dbeafe; color: #1e40af; }
.badge-success { background: #d1fae5; color: #065f46; }
.badge-warning { background: #fef3c7; color: #92400e; }
.badge-danger { background: #fee2e2; color: #991b1b; }
.badge-info { background: #e0e7ff; color: #3730a3; }
.badge-secondary { background: #f3f4f6; color: #374151; }

.node-card { border: 1px solid #e0e0e0; border-radius: 8px; padding: 1rem; margin-bottom: 0.75rem; }

.error { color: #991b1b; }
.success { color: #065f46; }

form p { margin-bottom: 0.75rem; }
form label { display: block; margin-bottom: 0.25rem; font-weight: 500; }
