.platform-dot.cdondata,
.platform-mark.cdondata {
  background: linear-gradient(135deg, #ff684c, #e53a56);
  color: #fff;
}

.cdon-data-tools {
  --cdon-accent: #f05448;
  --cdon-accent-strong: #d9404b;
  --cdon-ink: #17202b;
  --cdon-muted: #697381;
  --cdon-line: #e5e8ed;
  --cdon-soft: #fff7f4;
  --cdon-safe: #177960;
  color: var(--cdon-ink);
}

.cdon-data-tools .codex-module-head {
  background:
    radial-gradient(circle at 88% 16%, rgba(255, 255, 255, .65), transparent 26%),
    linear-gradient(118deg, #fff 0%, #fff7f3 55%, #ffe8e1 100%);
  border-color: #f0d8d1;
}

.cdon-data-tools .codex-kicker,
.cdon-data-tools .eyebrow {
  color: var(--cdon-accent-strong);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.cdon-local-pill {
  align-items: center;
  border: 1px solid #b8decf;
  border-radius: 999px;
  color: #12664f;
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  gap: 7px;
  padding: 9px 13px;
  white-space: nowrap;
  background: #f1fbf7;
}

.cdon-local-pill::before {
  background: currentColor;
  border-radius: 50%;
  content: "";
  height: 7px;
  width: 7px;
}

.cdon-local-pill.warn { border-color: #f0cf99; color: #9a5d00; background: #fff9ed; }
.cdon-local-pill.muted { border-color: #d8dde3; color: #7b8490; background: #f7f8fa; }

.cdon-data-tools .codex-tool-icon {
  background: #fff0ec;
  border-color: #f1d4cc;
  color: var(--cdon-accent-strong);
}

.cdon-data-tools .codex-tool-item.active {
  background: linear-gradient(135deg, #fff8f5, #ffede7);
  box-shadow: inset 3px 0 0 var(--cdon-accent);
}

.cdon-workbench-head,
.cdon-section-head,
.cdon-template-card {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
  gap: 24px;
}

.cdon-workbench-head { margin-bottom: 18px; }
.cdon-workbench-head h2,
.cdon-section-head h3,
.cdon-template-card h3 { margin: 4px 0 6px; }
.cdon-workbench-head p,
.cdon-section-head p,
.cdon-template-card p { color: var(--cdon-muted); margin: 0; }

.cdon-busy {
  background: #fff0eb;
  border: 1px solid #ffd1c7;
  border-radius: 999px;
  color: #a53934;
  font-size: 12px;
  font-weight: 700;
  padding: 8px 12px;
}

.cdon-tool-card {
  background: #fff;
  border: 1px solid var(--cdon-line);
  border-radius: 16px;
  box-shadow: 0 7px 24px rgba(30, 39, 50, .045);
  margin-bottom: 14px;
  padding: 20px;
  position: relative;
}

.cdon-safe-tag {
  background: #effaf6;
  border: 1px solid #c5e8dc;
  border-radius: 999px;
  color: var(--cdon-safe);
  font-size: 11px;
  font-weight: 800;
  padding: 6px 10px;
}

.cdon-lead { color: var(--cdon-muted); font-size: 13px; line-height: 1.7; }

.cdon-source-grid,
.cdon-connection-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 16px;
}

.cdon-source-card {
  background: #fbfcfd;
  border: 1px solid #e8ebef;
  border-radius: 13px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 180px;
  padding: 16px;
}

.cdon-source-card h4 { margin: 0; }
.cdon-source-card p,
.cdon-source-card small,
.cdon-tool-card small { color: var(--cdon-muted); line-height: 1.55; }

.cdon-source-card label,
.cdon-filter-grid label {
  color: #4e5967;
  display: grid;
  font-size: 12px;
  font-weight: 700;
  gap: 6px;
}

.cdon-source-card input,
.cdon-filter-grid input,
.cdon-filter-grid select {
  background: #fff;
  border: 1px solid #d9dee5;
  border-radius: 9px;
  color: var(--cdon-ink);
  min-height: 38px;
  padding: 8px 10px;
  width: 100%;
}

.cdon-metrics {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 16px 0 4px;
}

.cdon-metric {
  background: linear-gradient(145deg, #fff, #fafbfc);
  border: 1px solid #e6e9ed;
  border-radius: 12px;
  display: grid;
  gap: 2px;
  padding: 13px 15px;
}

.cdon-metric span { color: var(--cdon-muted); font-size: 11px; font-weight: 700; }
.cdon-metric strong { color: var(--cdon-ink); font-size: 24px; line-height: 1.2; }
.cdon-metric small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.cdon-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 15px;
}

.cdon-actions.vertical { align-items: stretch; flex-direction: column; margin-top: 0; min-width: 220px; }

.cdon-btn,
.cdon-file-pick {
  align-items: center;
  border: 1px solid #d8dde4;
  border-radius: 9px;
  cursor: pointer;
  display: inline-flex;
  font-size: 13px;
  font-weight: 800;
  justify-content: center;
  min-height: 40px;
  padding: 9px 14px;
  text-decoration: none;
}

.cdon-btn.primary { background: linear-gradient(135deg, #fa6b52, #e54350); border-color: transparent; color: #fff; box-shadow: 0 6px 16px rgba(226, 67, 78, .18); }
.cdon-btn.secondary,
.cdon-file-pick { background: #fff; color: #3b4652; }
.cdon-btn.danger { background: #9f2433; border-color: #8d1e2c; color: #fff; }
.cdon-btn:disabled { cursor: not-allowed; filter: grayscale(.25); opacity: .48; }
.cdon-file-pick input { display: none; }
.cdon-file-name { color: var(--cdon-muted); font-size: 12px; }

.cdon-danger-check {
  align-items: center;
  background: #fff3f3;
  border: 1px solid #f1c8cc;
  border-radius: 9px;
  color: #8a2631;
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  gap: 7px;
  min-height: 40px;
  padding: 8px 12px;
}

.cdon-alert {
  border: 1px solid;
  border-radius: 10px;
  font-size: 13px;
  margin-bottom: 12px;
  padding: 11px 14px;
}
.cdon-alert.success { background: #f0faf6; border-color: #bee3d5; color: #17634f; }
.cdon-alert.error { background: #fff1f1; border-color: #efc2c6; color: #932b36; }

.cdon-empty {
  background: #f8f9fb;
  border: 1px dashed #d7dce3;
  border-radius: 12px;
  color: var(--cdon-muted);
  margin-top: 14px;
  padding: 24px;
  text-align: center;
}

.cdon-issues { margin-top: 14px; }
.cdon-issues summary { color: #4a5562; cursor: pointer; font-size: 13px; font-weight: 800; margin-bottom: 10px; }

.cdon-table-wrap {
  border: 1px solid #e4e7eb;
  border-radius: 11px;
  margin-top: 13px;
  max-height: 430px;
  overflow: auto;
}

.cdon-table-wrap table { border-collapse: collapse; font-size: 12px; min-width: 760px; width: 100%; }
.cdon-table-wrap th { background: #f6f7f9; color: #525e6c; font-weight: 800; position: sticky; text-align: left; top: 0; z-index: 1; }
.cdon-table-wrap th,
.cdon-table-wrap td { border-bottom: 1px solid #eceef1; padding: 9px 11px; vertical-align: top; }
.cdon-table-wrap tbody tr:hover { background: #fffbf9; }
.cdon-issue { border-radius: 999px; display: inline-flex; font-size: 10px; font-weight: 900; padding: 3px 7px; }
.cdon-issue.error { background: #fee9eb; color: #a22533; }
.cdon-issue.warn { background: #fff4da; color: #8d5d00; }

.cdon-filter-grid {
  align-items: end;
  display: grid;
  gap: 10px;
  grid-template-columns: 1.1fr 1fr 1fr auto auto;
  margin-top: 16px;
}

.cdon-template-card { background: linear-gradient(135deg, #fff 0%, #fff7f4 100%); border-color: #f0d5ce; }
.cdon-template-card > div:first-child { max-width: 720px; }

.cdon-connection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; }
.cdon-connection-grid .cdon-tool-card { min-height: 160px; }
.cdon-connection-grid h3 { margin: 5px 0 7px; }
.cdon-connection-grid p { color: var(--cdon-muted); line-height: 1.65; margin: 0; max-width: 560px; }
.cdon-status-dot { background: #1a9872; border-radius: 50%; height: 9px; position: absolute; right: 18px; top: 18px; width: 9px; }
.cdon-status-dot.warn { background: #e29723; }
.cdon-status-dot.protected { background: #b22e3f; }
.danger-zone { border-color: #efcbd0; }

.cdon-capabilities { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0; }
.cdon-capabilities span { background: #f4f6f8; border: 1px solid #e0e4e8; border-radius: 999px; color: #4f5a68; font-size: 12px; font-weight: 700; padding: 6px 10px; }

@media (max-width: 1100px) {
  .cdon-source-grid { grid-template-columns: 1fr; }
  .cdon-source-card { min-height: 0; }
  .cdon-filter-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 760px) {
  .cdon-workbench-head,
  .cdon-section-head,
  .cdon-template-card { flex-direction: column; gap: 12px; }
  .cdon-local-pill { white-space: normal; }
  .cdon-metrics,
  .cdon-connection-grid,
  .cdon-filter-grid { grid-template-columns: 1fr; }
  .cdon-actions.vertical { min-width: 0; width: 100%; }
  .cdon-btn,
  .cdon-file-pick { width: 100%; }
  .cdon-danger-check { width: 100%; }
}
