:root { color: #18201f; background: #eef1ee; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; font-synthesis: none; line-height: 1.5; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } * { box-sizing: border-box; } body { margin: 0; min-width: 320px; min-height: 100vh; } button, input, textarea, select { font: inherit; } button { border: 0; } .app-shell { display: grid; grid-template-columns: 280px 1fr; min-height: 100vh; } .sidebar { display: flex; flex-direction: column; gap: 18px; padding: 24px; color: #f4f7f5; background: #12201d; } .brand { display: grid; grid-template-columns: 38px 1fr; gap: 12px; align-items: center; } .brand img { width: 38px; height: 38px; } .brand h1, .brand p, .topbar h2, .topbar p, .panel h3, .empty-state h3, .metric { margin: 0; } .brand h1 { font-size: 1rem; line-height: 1.2; } .brand p, .eyebrow, .subtle { color: #6f7f7a; font-size: 0.82rem; } .sidebar .brand p { color: #9baca6; } .primary-action, .secondary-action, nav button, .segments button { min-height: 40px; border-radius: 6px; cursor: pointer; } .primary-action { color: #09201a; background: #60d394; font-weight: 700; } .secondary-action { padding: 0 14px; color: #25322f; background: #dfe7e2; font-weight: 600; } .secondary-action.danger { color: #fff8f8; background: #a64545; } .primary-action:disabled, nav button:disabled, select:disabled { cursor: not-allowed; opacity: 0.55; } nav { display: grid; gap: 6px; margin-top: 8px; } nav button { color: #dfe9e4; background: transparent; text-align: left; padding: 0 12px; } nav button:hover, nav button.active { background: #223b36; } .workspace { min-width: 0; padding: 28px; overflow-x: hidden; } .topbar { display: flex; justify-content: space-between; gap: 24px; align-items: flex-start; margin-bottom: 24px; } .topbar > div { min-width: 0; } .topbar h2 { font-size: 1.8rem; line-height: 1.15; } .status { max-width: 420px; border: 1px solid #cbd5d0; border-radius: 6px; padding: 10px 12px; color: #33413d; background: #fbfdfb; overflow-wrap: anywhere; } .status.busy { border-color: #d4b25f; background: #fff7de; } .field { display: grid; gap: 6px; } .field.inline { grid-template-columns: minmax(120px, 1fr) 180px; align-items: center; } .field span, .profile-row > span { color: #52605c; font-size: 0.85rem; font-weight: 700; } input, textarea, select { width: 100%; min-height: 38px; border: 1px solid #bec9c4; border-radius: 6px; padding: 0 10px; color: #18201f; background: #ffffff; } textarea { min-height: 220px; padding: 10px; resize: vertical; } .sidebar select { color: #10201c; } .profile-row { display: flex; gap: 14px; align-items: center; margin-bottom: 20px; } .segments { display: flex; flex-wrap: wrap; gap: 6px; } .segments button { padding: 0 14px; color: #25322f; background: #dfe7e2; } .segments button.active { color: #f8fbf9; background: #226957; } .panel-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } .panel, .empty-state { border: 1px solid #d5ddd8; border-radius: 8px; padding: 20px; background: #fbfdfb; } .panel.wide, .empty-state { grid-column: 1 / -1; } .panel h3, .empty-state h3 { margin-bottom: 16px; font-size: 1.08rem; } .check-row { display: flex; gap: 10px; align-items: center; margin-top: 14px; } .check-row input { width: 18px; min-height: 18px;