.home-template { max-width: none !important; margin: 0 !important; }
.shell > main { padding-top: 0 !important; }
.shell main { padding-top: 0 !important; }
#main-content { padding: 0 !important; }
.record-template, .detail-template, .create-template { margin-top: 0 !important; }
.entity-avatar { display: none !important; }
.record-top > div:first-child { gap: 0 !important; }
header, .shell { max-width: none !important; margin: auto; }
.welcome-hero {
  background: #244232 url("./assets/home-hero-background.png") center / cover no-repeat !important;
}

/* Keep editable signal values at the normal Redwood body weight; labels remain emphasized. */
.signal-settings select,
.signal-settings textarea { font-weight: 400; }

/* Override the browser's default `<b>` / `<strong>` weight (`bolder`). */
#app b,
#app strong { font-weight: 600; }

.relationship-progress { min-width: 170px; }
.relationship-progress-meta { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 6px; color: #625f5c; font-size: .82rem; }
.relationship-progress-track { height: 8px; overflow: hidden; border-radius: 8px; background: #e6e1dc; }
.relationship-progress-track > span { display: block; height: 100%; min-width: 0; border-radius: inherit; background: #0b78a4; transition: width .25s ease; }
.relationship-progress.is-active .relationship-progress-track > span { background: #00688f; }
.relationship-resolution-page .record-top > div:first-child { display: block; }
.relationship-resolution-page .record-top > div:first-child small { display: block; margin-top: 6px; }
.relationship-summary b,
.relationship-summary small { display: block; }
.relationship-summary small { margin-top: 5px; color: #625f5c; }
.relationship-resolution-page th:nth-child(6),
.relationship-resolution-page td:nth-child(6) { width: 280px; }
.relationship-resolution-page th:last-child,
.relationship-resolution-page td.relationship-actions { width: 1%; white-space: nowrap; }
.relationship-action-buttons { display: flex; flex-flow: row nowrap; align-items: center; justify-content: flex-end; gap: 8px; min-width: max-content; }
.welcome-hero .hero-art { display: none !important; }

/* Collection-page workspace template. */
.record-template {
  max-width: none !important;
  background: #424d4d !important;
  box-shadow: none !important;
  padding: 0 0 44px !important;
}
.record-template .record-top {
  background: #424d4d !important;
  padding: 32px clamp(28px, 6vw, 116px) 18px !important;
}
.record-template .record-top h2,
.record-template .record-top small { color: #fff !important; }
.record-template .record-top small { opacity: .76; }
.record-template .record-top .actions { display: flex !important; }
.record-template .pattern-strip { margin: 0 clamp(28px, 2.6vw, 52px); }
.record-template .collection-tabs {
  background: #424d4d !important;
  border: 0 !important;
  padding: 14px clamp(28px, 6vw, 116px) 22px !important;
  gap: 10px !important;
}
.collection-tab-links { display: flex; align-items: center; min-width: 0; }
.record-template .collection-tabs > oj-button { margin-left: auto; }
.row-actions { width: 1%; white-space: nowrap; text-align: right; }
.row-actions > .row-icon-button + .row-icon-button { margin-left: 8px; }
.source-primary-button { display: inline-flex !important; align-items: center; justify-content: center; min-height: 38px; margin-left: auto; padding: 0 16px; border: 1px solid #312d2a; border-radius: 2px; background: #312d2a; color: #fff; font: inherit; font-weight: 600; cursor: pointer; }
.source-primary-button:hover, .source-primary-button:focus-visible { background: #f4f3f2; border-color: #161513; }
.source-actions { display: inline-flex; align-items: center; gap: 12px; }
.source-actions .source-primary-button { margin-left: 0; }
.row-edit-button { display: inline-flex !important; align-items: center; min-height: 34px; padding: 0 10px; border: 1px solid #161513; border-radius: 2px; background: #fff; color: #161513; font: inherit; font-weight: 600; cursor: pointer; }
.row-edit-button:hover, .row-edit-button:focus-visible { border-color: #161513; background: #f4f3f2; color: #161513; }
.record-template .collection-tabs b,
.record-template .collection-tabs span {
  color: #fff !important;
  background: #5a6565;
  border: 0 !important;
  border-radius: 6px;
  margin: 0 !important;
  padding: 8px 13px !important;
}
.record-template .collection-tabs b { background: #697575; }
.record-template .collection {
  margin: 0 clamp(28px, 2.6vw, 52px) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: 0 10px 24px rgba(17, 24, 24, .22) !important;
}
.record-template .toolbar {
  background: #fff !important;
  border-bottom: 1px solid #e4e1de !important;
  justify-content: space-between;
}
.record-template .toolbar:after {
  order: -1;
  margin-right: auto;
  background: #fff;
}
.record-template .toolbar:after { display: none !important; }
.welcome-hero {
  background-image: url("./assets/fusion-context-banner.png") !important;
  background-position: center !important;
  background-size: cover !important;
}

/* Full-screen Home navigation. */
.home-template {
  height: calc(100dvh - 56px) !important;
  min-height: calc(100dvh - 56px) !important;
  box-shadow: none !important;
}
.home-template .welcome-hero {
  display: grid !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: clamp(24px, 6vw, 112px) !important;
  place-items: center !important;
}
.home-hero-content { width: min(100%, 800px); }
.home-hero-heading { margin: 0 0 20px; color: #fff; }
.home-hero-heading p { margin: 0 0 8px; font-size: .9rem; font-weight: 600; letter-spacing: .08em; }
.home-hero-heading h1 { margin: 0; color: #fff; font-size: clamp(2rem, 3.3vw, 3.5rem) !important; }
.home-hero-panel { width: min(100%, calc(100vw - 48px)); margin-top: 34px; padding: 0; background: transparent; box-shadow: none; }
.home-quick-access-label { margin: 0 0 12px; color: #fff; font-size: .78rem; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; }
.home-hero-actions {
  display: flex;
  align-items: stretch;
  gap: 12px;
  width: fit-content;
}
.home-hero-action {
  display: grid;
  gap: 6px;
  width: 94px;
  min-height: 94px;
  padding: 12px 10px;
  place-items: center;
  border: 0;
  border-radius: 14px;
  background: rgba(15, 55, 63, .75);
  color: #fff !important;
  font-weight: 600;
  font-size: .86rem;
  text-decoration: none;
  transition: background .16s ease, transform .16s ease, box-shadow .16s ease;
}
.home-hero-action:hover,
.home-hero-action:focus-visible {
  background: rgba(18, 72, 80, .95);
  outline: 2px solid #8de7e6;
  outline-offset: 2px;
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, .2);
}
#app .home-hero-action [class^="oj-ux-ico-"] {
  font-size: 2rem !important;
  line-height: 1;
}
@media (max-width: 700px) {
  .home-template { height: calc(100dvh - 52px) !important; min-height: calc(100dvh - 52px) !important; }
  .home-template .welcome-hero { padding: 24px !important; }
  .home-hero-content { max-width: 420px; }
  .home-hero-panel { width: 100%; }
  .home-hero-actions { flex-wrap: wrap; }
  .home-hero-action { width: 88px; min-height: 88px; }
}

/* Restore the light collection color system; retain the expanded layout width. */
.record-template { background: #fff !important; }
.record-template .record-top { background: #faf9f8 !important; }
.record-template .record-top h2 { color: #161513 !important; }
.record-template .record-top small { color: #625f5c !important; opacity: 1 !important; }
.record-template .collection-tabs { background: #fff !important; border-bottom: 1px solid #ded9d4 !important; }
.record-template .collection-tabs b,
.record-template .collection-tabs span { color: #161513 !important; background: transparent !important; border-radius: 0 !important; }
.record-template .collection-tabs b { border-bottom: 2px solid #1e1b19 !important; }
.record-template .collection { box-shadow: none !important; border: 1px solid #d8d5d2 !important; }
.record-template .toolbar:after { content: none !important; display: none !important; }
.record-template .record-top { padding: 24px 36px 18px !important; }
.record-top { background: linear-gradient(115deg, #faf9f8 0%, #f3f1ee 100%) !important; }
.toolbar { display: none !important; }

/* Redwood collection refinement. */
.record-template { background: #f7f6f4 !important; }
.record-template .record-top {
  background: #fff !important;
  border-bottom: 1px solid #e1dedb;
  padding: 28px clamp(20px, 4vw, 72px) 20px !important;
}
.record-template .record-top h2 { margin: 0 !important; }
.record-template .record-top small { display: block; margin-top: 4px; }
.record-template .pattern-strip { height: 7px !important; }
.record-template .collection-tabs {
  padding: 0 clamp(20px, 4vw, 72px) !important;
  min-height: 54px;
  align-items: center;
  background: #fff !important;
}
.record-template .collection-tabs b,
.record-template .collection-tabs span { padding: 16px 0 !important; }
.record-template .collection-tabs span { margin-left: 28px !important; }
.record-template .collection {
  background: #fff !important;
  margin: 20px clamp(20px, 4vw, 72px) 32px !important;
  border: 1px solid #d9d6d2 !important;
  border-radius: 2px !important;
  overflow: hidden;
}
.record-template .collection > .toolbar { display: none !important; height: 0 !important; min-height: 0 !important; padding: 0 !important; border: 0 !important; }
.record-template .table-wrap { border-top: 0 !important; }
.record-template th { background: #f5f4f2 !important; color: #3b3835 !important; font-weight: 600; }
.record-template td { color: #252321; }
.record-template tbody tr:hover td { background: #f2f8fa !important; }
.record-template footer { min-height: 54px; border-top: 1px solid #e4e1de; background: #fff !important; }
.record-template .table-wrap:after { display: none !important; }
@media(max-width:520px) {
  .record-template .record-top { padding: 22px 16px 16px !important; }
  .record-template .collection-tabs { padding: 0 16px !important; }
  .record-template .collection { margin: 12px 0 20px !important; border-left: 0 !important; border-right: 0 !important; }
}
.record-template .pattern-strip { margin: 0 !important; }
.record-template .collection { margin: 0 !important; border-left: 0 !important; border-right: 0 !important; border-bottom: 0 !important; }
.detail-layout { padding: 0 !important; }
.detail-content { margin-top: 0 !important; }
.record-template table { background: #fff; }
.record-template th:first-child,
.record-template td:first-child { padding-left: 60px !important; }
.record-template th:last-child,
.record-template td:last-child { padding-right: 60px !important; }
.record-template footer { padding-left: 60px !important; padding-right: 60px !important; background: #fff; }
@media(max-width:900px) {
  .record-template .record-top { padding: 24px 20px 14px !important; }
  .record-template .collection-tabs { padding: 12px 20px 18px !important; }
  .record-template .pattern-strip,.record-template .collection { margin-left: 20px !important; margin-right: 20px !important; }
  .record-template th:first-child,
  .record-template td:first-child { padding-left: 20px !important; }
  .record-template th:last-child,
  .record-template td:last-child { padding-right: 20px !important; }
  .record-template footer { padding-left: 20px !important; padding-right: 20px !important; }
}
@media(max-width:520px) {
  .record-template .pattern-strip,.record-template .collection { margin-left: 0 !important; margin-right: 0 !important; }
  .record-template .collection-tabs { padding-left: 14px !important; }
}

/* Header brand supplied by the user. */
.mark {
  width: 44px !important;
  height: 28px !important;
  border-radius: 0 !important;
  background: transparent url("./assets/oracle_logo_3.png") center / contain no-repeat !important;
  color: transparent !important;
}

/* Shared type scale: every semantic heading uses the requested bold weight. */
#app h1,
#app h2,
#app h3,
#app h4,
#app h5,
#app h6 {
  font-weight: 600 !important;
}

#app h3 {
  font-size: 1.6rem !important;
}

/* Detail views share the same full content width as collection/list views. */
.detail-template {
  width: 100% !important;
  max-width: none !important;
  padding-bottom: 0 !important;
}

.detail-template::before {
  content: none !important;
  display: none !important;
}

.detail-rail {
  margin-top: 0 !important;
  background: #f7f6f4 !important;
  border-right: 1px solid #e3e0dc !important;
  align-self: stretch !important;
  isolation: isolate;
  overflow: hidden;
  position: relative;
}
.detail-rail::before {
  position: absolute;
  z-index: 0;
  inset: 0;
  background: url("./assets/background-shell-database-start.png") center bottom / 100% auto no-repeat;
  content: '';
  opacity: .32;
}
.detail-rail > * { position: relative; z-index: 1; }

.detail-layout {
  align-items: stretch !important;
}

@media (min-width: 901px) {
  .detail-template {
    display: flex;
    flex-direction: column;
    height: calc(100dvh - 56px);
    overflow: hidden;
  }

  .detail-template > .pattern-strip {
    flex: 0 0 auto;
  }

  .detail-template > .detail-layout {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
  }

  .detail-rail {
    overflow: hidden;
  }

  .detail-content {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }
}

/* Detail pages inspect governed resources; all mutations happen in focused modal forms. */
#app h1, #app h2, #app h3, #app h4, #app h5, #app h6 { font-weight: 600 !important; }
.section-heading { display: flex; justify-content: space-between; gap: 16px; align-items: start; }
.section-heading p { margin-top: 4px; color: #625f5c; }
.endpoint-catalog { margin: 34px 0; }
.job-live-progress { position: relative; margin: 24px 0 34px; padding: 18px 20px 18px 28px; overflow: hidden; border: 1px solid #d9d2c8; background: #f7fbfb; }
.job-live-progress > .pattern-strip { position: absolute; inset: 0 auto 0 0; width: 7px; height: auto; overflow: hidden; background: none; }
.job-live-progress > .pattern-strip::before { position: absolute; top: 0; left: 7px; width: max(600px, 100dvh); height: 7px; background: url("./assets/header-strip-plum.png") center / 100% 100% no-repeat; content: ''; transform: rotate(90deg); transform-origin: top left; }
.job-live-progress h3 { margin: 0 0 4px; }
.job-live-progress p { margin: 0; color: #625f5c; }
.loader { width:15px; flex:0 0 15px; aspect-ratio:1; border-radius:50%; background:#000; animation:l5 1s infinite linear alternate; }
@keyframes l5 { 0%{box-shadow:20px 0 #000,-20px 0 #0002;background:#000}33%{box-shadow:20px 0 #000,-20px 0 #0002;background:#0002}66%{box-shadow:20px 0 #0002,-20px 0 #000;background:#0002}100%{box-shadow:20px 0 #0002,-20px 0 #000;background:#000} }
.app-loading { display:inline-flex; align-items:center; gap:28px; min-height:20px; }
.job-progress-statusline { display: flex; align-items: center; flex-wrap: wrap; gap: 18px; margin-top: 12px; font-size: 1rem; line-height: 1.25; }
.job-progress-sources, .job-progress-activity { font-size: inherit; }
.job-progress-activity { display: flex; align-items: center; gap: 10px; margin-top: 12px; color: #075c8d; font-weight: 600; }
/* The loader paints two dots outside its centre; reserve space with margin, not a larger dot. */
.job-progress-loader { width: 15px; flex: 0 0 15px; margin: 0 20px; }
@media (prefers-reduced-motion: reduce) { .loader { animation: none; } }
.job-progress-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-top: 18px; }
.job-progress-metrics small, .job-progress-metrics b { display: block; }
.job-progress-metrics small { color: #625f5c; }
.job-progress-metrics b { font-size: 1.25rem; margin-top: 4px; }
.signal-detail-template .detail-content{min-width:0}.signal-detail-rail .connection-logo{background:#3f3b38;color:#fff}.signal-detail-rail h3{overflow-wrap:anywhere}.signal-definition-intro{color:#706b66;margin:18px 0 0;max-width:700px}.signal-workspace{display:grid;grid-template-columns:minmax(0,7fr) minmax(280px,3fr);gap:0;min-height:100%;padding:0}.signal-workspace>article{padding-right:34px}.signal-ai-panel{position:sticky;top:0;display:flex;flex-direction:column;align-self:start;box-sizing:border-box;width:100%;height:calc(100dvh - 96px);min-height:520px;border-left:1px solid #dcd7d2;padding:26px 0 12px 26px}.signal-ai-panel h3{margin:0}.signal-ai-panel>div>p,.signal-ai-panel>small{color:#706b66}.signal-chat{display:grid;flex:1 1 auto;min-height:0;align-content:start;gap:12px;overflow:auto;margin:18px 0}.signal-chat>div{align-self:start;padding:10px 12px;border-radius:2px;line-height:1.4}.signal-chat .assistant{background:#f1eee9}.signal-chat .user{background:#e7f2f6;margin-left:16px}.signal-copilot-composer{flex:0 0 auto;margin-top:auto;padding:14px 0 2px;border-top:1px solid #ded9d4;background:#fff}.signal-ai-form{display:grid;gap:8px;width:100%}.signal-ai-form:first-child button{justify-self:end}.signal-ai-form+.signal-ai-form{margin-top:12px}.signal-ai-form textarea,.signal-grid textarea,.signal-grid input,.signal-grid select,.signal-rule textarea{box-sizing:border-box;width:100%;font:inherit;border:1px solid #8c8985;border-radius:2px;padding:9px;background:#fff}.signal-ai-form textarea{min-height:84px}.signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.signal-grid label{display:grid;gap:6px;font-weight: 600}.signal-rule-list{border-top:1px solid #ded9d4;margin:10px 0 22px}.signal-rule-list>div{padding:12px 0;border-bottom:1px solid #ded9d4;display:grid;gap:3px}.signal-rule-list span{color:#706b66}.signal-rule{background:#f7f5f2;padding:14px}.signal-rule textarea{min-height:92px;resize:vertical}.signal-approval{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:24px}.signal-status{color:#625f5c}.resolution-live-progress{margin-top:18px}@media(max-width:900px){.signal-workspace{grid-template-columns:1fr;padding:0}.signal-workspace>article{padding-right:0}.signal-ai-panel{position:static;height:auto;min-height:0;border-left:0;border-top:1px solid #dcd7d2;padding:24px 0 0;margin-top:24px}.signal-chat{flex:none;max-height:220px}.signal-grid{grid-template-columns:1fr}}
.signal-detail-template:before{display:none!important}.signal-detail-layout{display:block!important;background:#fff!important;padding:0!important}.signal-detail-template .signal-detail-content{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.signal-detail-template .detail-content{min-width:0}.signal-definition-intro{color:#706b66;margin:18px 0 0;max-width:700px}.signal-workspace{display:grid;grid-template-columns:minmax(0,7fr) minmax(320px,3fr);gap:0;min-height:100%;padding:0 34px}.signal-workspace-header{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0 20px;border-bottom:1px solid #ded9d4}.signal-workspace-header h2{margin:0;font-size:1.65rem}.signal-workspace-header span{display:block;margin-top:4px;color:#706b66}.signal-workspace-header-actions{display:flex;align-items:center;gap:18px}.signal-workspace-header-actions>a{white-space:nowrap}.signal-settings{position:relative}.signal-settings summary{cursor:pointer;color:#00688f;font-weight: 600}.signal-settings>div{position:absolute;z-index:3;right:0;top:calc(100% + 10px);display:grid;gap:12px;width:min(340px,calc(100vw - 48px));padding:18px;border:1px solid #d8d3cd;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.14)}.signal-settings label{display:grid;gap:6px;font-weight: 600}.signal-settings select,.signal-settings textarea{box-sizing:border-box;width:100%;padding:8px;border:1px solid #8c8985;background:#fff;font:inherit}.signal-settings textarea{min-height:84px;resize:vertical}.signal-workspace>article{padding:26px 34px 26px 0}.signal-ai-panel{position:sticky;top:0;display:flex;flex-direction:column;align-self:start;box-sizing:border-box;width:100%;height:calc(100dvh - 144px);min-height:520px;border-left:1px solid #dcd7d2;padding:26px 0 12px 26px}.signal-ai-panel h3{margin:0}.signal-ai-panel>div>p,.signal-ai-panel>small{color:#706b66}.signal-chat{display:grid;flex:1 1 auto;min-height:0;align-content:start;gap:12px;overflow:auto;margin:18px 0}.signal-chat>div{align-self:start;padding:10px 12px;border-radius:2px;line-height:1.4}.signal-chat .assistant{background:#f1eee9}.signal-chat .user{background:#e7f2f6;margin-left:16px}.signal-copilot-composer{flex:0 0 auto;margin-top:auto;padding:14px 0 2px;border-top:1px solid #ded9d4;background:#fff}.signal-ai-form{display:grid;gap:8px;width:100%}.signal-ai-form:first-child button{justify-self:end}.signal-ai-form+.signal-ai-form{margin-top:12px}.signal-ai-form textarea,.signal-grid textarea,.signal-grid input,.signal-grid select,.signal-rule textarea{box-sizing:border-box;width:100%;font:inherit;border:1px solid #8c8985;border-radius:2px;padding:9px;background:#fff}.signal-ai-form textarea{min-height:84px}.signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.signal-grid label{display:grid;gap:6px;font-weight: 600}.signal-rule-list{border-top:1px solid #ded9d4;margin:10px 0 22px}.signal-rule-list>div{padding:12px 0;border-bottom:1px solid #ded9d4;display:grid;gap:3px}.signal-rule-list span{color:#706b66}.signal-rule{background:#f7f5f2;padding:14px}.signal-rule textarea{min-height:92px;resize:vertical}.signal-approval{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;margin-top:24px}.signal-status{color:#625f5c}.resolution-live-progress{margin-top:18px}@media(max-width:900px){.signal-workspace{grid-template-columns:1fr;padding:0 22px}.signal-workspace-header{align-items:flex-start;flex-direction:column}.signal-workspace>article{padding-right:0}.signal-ai-panel{position:static;height:auto;min-height:0;border-left:0;border-top:1px solid #dcd7d2;padding:24px 0 0;margin-top:24px}.signal-chat{flex:none;max-height:220px}.signal-grid{grid-template-columns:1fr}}
.signal-dataset-picker{display:grid;gap:8px;margin:0;padding:0;border:0}.signal-dataset-picker legend{margin-bottom:8px;font-weight: 600}.signal-dataset-option{display:grid!important;grid-template-columns:auto 1fr;gap:2px 9px!important;align-items:center;padding:10px 12px;border:1px solid #ded9d4;background:#fff}.signal-dataset-option input{grid-row:span 2}.signal-dataset-option small{grid-column:2;color:#706b66}
/* Signal creation follows the Redwood compact-dialog pattern: grouped choices,
   restrained surfaces, and one clear progression from scope to definition. */
#signal-create-dialog{width:min(860px,calc(100vw - 48px))}
#signal-create-dialog header{min-height:132px;padding:24px 32px}
#signal-create-dialog .modal-form{display:block;padding:0;background:#f7f6f4}
#signal-create-dialog .modal-capability-notice:empty{display:none}
#signal-create-dialog .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#signal-create-dialog .signal-create-body{display:grid;gap:0}
#signal-create-dialog .signal-create-section{padding:24px 32px 28px;background:#f7f6f4}
#signal-create-dialog .signal-create-section+.signal-create-section{border-top:1px solid #ddd8d2}
#signal-create-dialog .signal-create-section-heading{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:14px}
#signal-create-dialog .signal-create-section-heading h4,#signal-create-dialog .signal-create-section-heading p{margin:0}
#signal-create-dialog .signal-create-section-heading h4{font-size:1.05rem}
#signal-create-dialog .signal-create-section-heading p{margin-top:4px;color:#625f5c}
#signal-create-dialog .signal-dataset-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#signal-create-dialog .signal-dataset-option{position:relative;min-height:74px;box-sizing:border-box;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;padding:14px;border-color:#d4cfca;cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}
#signal-create-dialog .signal-dataset-option:hover{border-color:#16709c;background:#fbfdfe}
#signal-create-dialog .signal-dataset-option:has(input:checked){border-color:#16709c;background:#edf7fb;box-shadow:inset 3px 0 0 #16709c}
#signal-create-dialog .signal-dataset-option input{width:20px;height:20px;margin:0;accent-color:#1473a6}
#signal-create-dialog .signal-dataset-copy{display:grid;min-width:0;gap:4px}
#signal-create-dialog .signal-dataset-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#252321}
#signal-create-dialog .signal-dataset-copy small{grid-column:auto;color:#625f5c;font-size:.84rem;line-height:1.25}
#signal-create-dialog .signal-create-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:20px 24px}
#signal-create-dialog .signal-create-fields label{gap:7px}
#signal-create-dialog .signal-create-fields textarea{min-height:98px}
#signal-create-dialog footer{min-height:86px;padding:20px 32px 26px;border-top:1px solid #ddd8d2}
@media(max-width:700px){#signal-create-dialog{width:calc(100vw - 24px)}#signal-create-dialog header{min-height:0;padding:26px 20px}#signal-create-dialog .signal-create-section{padding:20px}#signal-create-dialog .signal-dataset-picker,#signal-create-dialog .signal-create-fields{grid-template-columns:1fr}#signal-create-dialog footer{padding:20px}}
.signal-scope{margin:0 0 28px;padding:0 0 24px;border-bottom:1px solid #ded9d4}.signal-scope .section-heading{align-items:start}.signal-scope .section-heading h3{margin:0}.signal-scope .section-heading p{margin:6px 0 0;color:#706b66}.signal-scope-grid{display:grid;gap:8px;margin-top:16px}.signal-scope-object{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid #ded9d4;background:#fff}.signal-scope-object span{display:grid;gap:2px}.signal-scope-object small{color:#706b66}.signal-primary-choice{display:flex!important;align-items:center;gap:5px;color:#625f5c;font-size:.9rem}
.signal-recommendation>.section-heading{align-items:center;padding:0;margin:0}.signal-recommendation>.section-heading h3{margin:0;padding:0;line-height:1}
.signal-scope-summary{display:flex;justify-content:space-between;align-items:start;gap:20px;margin:0 0 28px;padding:0 0 22px;border-bottom:1px solid #ded9d4}.signal-scope-summary h3{margin:0}.signal-scope-summary p{margin:6px 0 0;color:#706b66}.signal-scope-grid{display:grid;gap:12px;margin:0}.signal-scope-object{min-height:70px}
.signal-evidence-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);gap:18px;align-items:start}.signal-evidence-values{display:grid;gap:6px;color:#625f5c;font-size:.85rem}.signal-evidence-values select{min-height:82px;padding:6px;border:1px solid #8c8985;background:#fff;font:inherit;color:#161513}@media(max-width:900px){.signal-evidence-row{grid-template-columns:1fr}}
.signal-evidence-condition{display:grid;gap:8px}.signal-evidence-condition>label{display:grid;gap:5px;color:#625f5c;font-size:.85rem}.signal-evidence-condition select,.signal-evidence-condition input{min-height:38px;padding:7px;border:1px solid #8c8985;background:#fff;font:inherit;color:#161513}.signal-evidence-condition input[type="date"]{min-width:180px;color-scheme:light}.signal-evidence-condition [hidden]{display:none}
.signal-range-input{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center}.signal-range-input span{color:#625f5c}
.signal-evidence-clauses{display:grid;gap:14px}.signal-condition-clause{padding:14px;border:0;background:#fff}.signal-condition-clause+.signal-condition-clause{border-top:3px solid #e6e1dc}.signal-add-condition{justify-self:start;margin-top:14px}.signal-remove-condition{justify-self:start;padding:0;border:0;background:transparent;color:#006f9d;font:inherit;text-decoration:underline;cursor:pointer}
.signal-evidence-summary{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start}.signal-evidence-summary>div{display:grid;gap:5px;min-width:0}.signal-evidence-summary span{display:block;color:#706b66}.signal-evidence-summary .row-icon-button{margin-top:1px}.signal-evidence-actions{display:flex!important;gap:8px}.signal-evidence-actions .signal-delete-evidence{color:#a52a2a;border-color:#a52a2a}.signal-evidence-actions .signal-delete-evidence:hover:not(:disabled),.signal-evidence-actions .signal-delete-evidence:focus-visible{background:#fff2f1;color:#8b1f1f}.signal-evidence-actions .signal-delete-evidence:disabled{opacity:.45;cursor:not-allowed}
.signal-chip-input{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:40px;padding:5px;border:1px solid #8c8985;background:#fff}.signal-chip-input input{flex:1 1 120px!important;min-height:28px!important;padding:3px!important;border:0!important;outline:0}.signal-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;background:#e7f2f6;color:#161513;font-size:.85rem}.signal-chip button{min-width:18px!important;min-height:18px!important;padding:0!important;border:0!important;background:transparent!important;font-size:1rem!important;line-height:1!important}
.signal-detail-rail #signal-edit-scope{display:block;margin-bottom:18px}.signal-detail-rail>a{display:block}
[id^="signal-condition-dialog-"]{width:min(760px,calc(100vw - 48px))}[id^="signal-condition-dialog-"] .modal-form{grid-template-columns:minmax(0,1fr);gap:0;padding:24px 32px 28px;background:#f7f6f4}[id^="signal-condition-dialog-"] .modal-capability-notice:empty{display:none}[id^="signal-condition-dialog-"] .signal-conditions-editor{display:grid;gap:0;width:100%;background:#fff}[id^="signal-condition-dialog-"] .signal-evidence-row{grid-template-columns:minmax(0,1fr);gap:16px;min-height:118px;padding:20px 22px;border:1px solid #d8d4d0;background:#fff}[id^="signal-condition-dialog-"] .signal-evidence-description{display:grid;align-content:start;min-width:0}[id^="signal-condition-dialog-"] .signal-evidence-description b{font-size:1.05rem}[id^="signal-condition-dialog-"] .signal-evidence-condition{align-content:start;width:100%}[id^="signal-condition-dialog-"] .signal-evidence-condition label{font-weight:600}[id^="signal-condition-dialog-"] footer{border-top:1px solid #ded9d4}@media(max-width:700px){[id^="signal-condition-dialog-"]{width:calc(100vw - 24px)}[id^="signal-condition-dialog-"] .modal-form{padding:20px}[id^="signal-condition-dialog-"] .signal-evidence-row{padding:18px}}
.job-run-error { display: block; margin-top: 5px; color: #a52a2a; }
.signal-pending-evidence{display:grid;gap:8px;align-self:stretch;padding:14px;border:1px solid #c9c4bd;background:#fff}.signal-pending-evidence span{color:#625f5c}.signal-pending-evidence ul{display:grid;gap:5px;margin:0;padding-left:18px;color:#625f5c}.signal-pending-evidence code{color:#161513}.signal-pending-evidence button{margin:2px 0 0}
.signal-ai-actions{display:flex;align-items:center;gap:10px}.signal-ai-actions .row-edit-button{flex:1 1 auto}.signal-ai-actions .source-primary-button{margin-left:0}
.signal-detail-template .detail-content{padding-top:0!important}
.signal-detail-template .signal-workspace{grid-template-columns:minmax(0,1fr)}
.signal-detail-template .signal-workspace>article{padding-right:0}
.signal-rule-help{margin:0 0 12px;color:#625f5c;line-height:1.45}
.signal-rule-actions{display:flex;justify-content:flex-end;margin-top:12px}
.signal-match-summary{display:flex;align-items:center;gap:12px;padding-right:0;border-right:0}.signal-match-summary>div{display:flex;align-items:baseline;gap:6px;white-space:nowrap}.signal-match-summary small,.signal-match-summary b{display:block}.signal-match-summary small{color:#625f5c;font-size:.8rem}.signal-match-summary b{font-size:1.2rem;line-height:1.1}@media(max-width:640px){.signal-match-summary{padding:0;border:0}}
.signal-refresh-count{display:inline-flex;align-items:center;gap:7px}.signal-refresh-count [class^="oj-ux-ico-"]{font-size:.95rem}
/* Signals use the same contextual rail and scrolling content surface as jobs. */
.signal-detail-template .signal-detail-layout{display:grid!important;grid-template-columns:312px minmax(0,1fr);padding:0!important;background:#fff!important}
.signal-detail-template .signal-detail-rail{align-self:stretch!important;margin:0!important;padding:36px 24px!important;border-right:1px solid #e3e0dc!important;box-shadow:none!important}
.signal-detail-template .signal-detail-content{display:block!important;width:auto!important;max-width:none!important;margin:0!important;padding:30px 40px 40px!important;background:#fff!important}
.signal-detail-template .signal-workspace{padding:0!important}
.signal-detail-template .signal-workspace-header{padding:0 0 22px!important}
.signal-detail-rail .signal-rail-settings{display:block;margin:24px 0 20px;padding-top:18px;border-top:1px solid #d8d3cd}
.signal-detail-rail .signal-rail-settings summary{color:#006f9d;font-weight: 600}
.signal-detail-rail .signal-rail-settings>div{position:static;display:grid;gap:12px;width:auto;margin-top:12px;padding:0;border:0;box-shadow:none;background:transparent}
.signal-detail-rail .signal-delivery{margin:22px 0;padding-top:18px;border-top:1px solid #d8d3cd}.signal-detail-rail .signal-delivery h4{margin:0 0 8px}.signal-detail-rail .signal-delivery p{margin:0 0 10px;font-size:.875rem}.signal-detail-rail .signal-delivery code{display:block;overflow-wrap:anywhere;margin:7px 0;color:#3a3a3a;font-size:.75rem}
.signal-detail-rail .signal-rail-settings label{display:grid;gap:6px;font-weight: 600}
.signal-detail-rail .signal-rail-settings select,.signal-detail-rail .signal-rail-settings textarea{width:100%;box-sizing:border-box;border:1px solid #8c8985;background:#fff;padding:8px;font:inherit}.signal-detail-rail .signal-rail-settings textarea{min-height:84px;resize:vertical}
@media(max-width:900px){.signal-detail-template .signal-detail-layout{grid-template-columns:1fr}.signal-detail-template .signal-detail-rail{padding:24px!important;border-right:0!important;border-bottom:1px solid #e3e0dc!important}.signal-detail-template .signal-detail-content{padding:26px 22px!important}}
@media (min-width:901px){.signal-detail-template .signal-ai-panel{height:calc(100dvh - 290px);min-height:0;max-height:calc(100dvh - 290px)}.signal-detail-template .signal-copilot-composer{padding-bottom:12px}}
.signal-evidence-summary.ai-proposed,.signal-rule-proposal.ai-proposed{position:relative;overflow:hidden;border-left:0;background:#eef7f9}.signal-evidence-summary.ai-proposed::before,.signal-rule-proposal.ai-proposed::before{position:absolute;top:0;right:0;left:0;height:7px;background:url("./assets/header-strip-plum.png") center/cover no-repeat;content:""}.signal-evidence-summary.ai-proposed{padding:19px 12px 12px}.signal-proposal-actions,.signal-rule-proposal{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px}.signal-proposal-actions span,.signal-rule-proposal span{margin-right:auto;color:#08627c;font-size:.88rem;font-weight:600}.signal-rule-proposal{margin:0 0 10px;padding:19px 10px 10px}.signal-copilot-status{margin:8px 0 0;color:#625f5c;line-height:1.4}
@media (min-width:901px){.signal-detail-template .signal-rule-list{max-height:calc(100dvh - 470px);min-height:190px;overflow-y:auto;overscroll-behavior:contain;padding-right:8px}}
@media (min-width:901px){.signal-detail-template .signal-detail-layout{height:100%;min-height:0}.signal-detail-template .signal-detail-content{height:100%;box-sizing:border-box;overflow-y:auto!important;overscroll-behavior:contain}.signal-detail-template .signal-workspace{min-height:100%;padding-bottom:36px}}
@media (min-width:901px){.signal-detail-template .signal-detail-rail{height:100%;min-height:0;box-sizing:border-box;overflow-y:auto!important;overscroll-behavior:contain}}
@media (min-width:901px){.signal-detail-template .signal-workspace>article{display:flex;min-height:100%;flex-direction:column}.signal-detail-template .signal-recommendation{display:flex;min-height:100%;flex:1 1 auto;flex-direction:column}.signal-detail-template .signal-rule-list{min-height:0!important;flex:1 1 auto;overflow-y:auto!important;overscroll-behavior:contain}.signal-detail-template .signal-rule{position:sticky;z-index:2;bottom:0;margin-top:auto;box-shadow:0 -8px 18px rgba(0,0,0,.05)}.signal-detail-template .signal-approval{order:1}.signal-detail-template .signal-rule{order:2}}
.signal-detail-template .signal-detail-content{padding:24px 40px 32px!important}.signal-detail-template .signal-rule-list{min-height:0!important;max-height:none!important;margin:8px 0 16px!important;padding-right:0!important;overflow:visible!important}.signal-detail-template .signal-recommendation>h4{margin:0 0 10px}.signal-detail-template .signal-approval{margin-top:16px}.signal-detail-template .signal-rule{padding:12px}
.signal-ai-loading{margin:0}
.signal-draft-loading{margin:0}
#signal-generate-draft[aria-busy]{min-width:118px}
.signal-rail-priority{display:grid;gap:6px;margin:20px 0 18px;font-weight: 600}.signal-rail-priority select{min-height:38px;width:100%;padding:7px;border:1px solid #8c8985;background:#fff;font:inherit;color:#161513}
.signal-rail-outcome{display:grid;gap:6px;margin:0 0 18px;font-weight: 600}.signal-rail-outcome textarea{box-sizing:border-box;min-height:92px;width:100%;padding:8px;border:1px solid #8c8985;background:#fff;font:inherit;color:#161513;resize:vertical}
.signal-opportunities{margin:24px 28px;padding:18px 20px;border:1px solid #ded9d4;background:#f7f6f4}.signal-opportunities h3{margin:0}.signal-opportunities-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:14px}.signal-opportunity{display:grid;gap:8px;padding:15px;border:1px solid #d8d3cd;background:#fff}.signal-opportunity h4,.signal-opportunity p{margin:0}.signal-opportunity small,.signal-opportunity p{color:#625f5c}.signal-opportunity button{justify-self:start;margin-top:4px}.signal-discovery-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:28px;margin:28px;padding:24px;border:1px solid #ded9d4;background:#fff}.signal-discovery-intro h3,.signal-discovery-intro p{margin:0}.signal-discovery-intro p{margin-top:10px;color:#625f5c;max-width:760px}.signal-discovery-intro aside{padding-left:24px;border-left:1px solid #ded9d4}.signal-discovery-intro ul{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.signal-discovery-intro li{display:flex;justify-content:space-between;gap:16px}.signal-discovery-intro li span{color:#625f5c}@media (max-width:760px){.signal-discovery-intro{grid-template-columns:1fr}.signal-discovery-intro aside{padding:18px 0 0;border-top:1px solid #ded9d4;border-left:0}}
.job-run-record { margin: 0 0 22px; padding: 14px; border: 1px solid #ddd7cf; background: #fff; }
.job-run-record h4 { margin: 0 0 12px; font-size: 1rem; }
.job-run-record-disclosure > summary { display: flex; align-items: center; min-height: 36px; cursor: pointer; font-weight: 600; }
.job-run-record-disclosure > summary:focus-visible { outline: 2px solid #1685b5; outline-offset: 3px; }
.job-run-record-fields > .row-edit-button { margin: 14px 0 10px; }
.job-version-timing { margin: -4px 0 12px; color: #625f5c; font-size: .9rem; }
.job-version-changed { background: #fff8df; }
.job-version-explorer-controls { position: sticky; top: -32px; z-index: 1; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: -32px -44px 20px; padding: 16px 44px; border-bottom: 1px solid #ddd7cf; background: #f7f6f4; }
.job-version-explorer-controls span { margin-right: auto; color: #625f5c; }
.job-run-record table { width: 100%; border-collapse: collapse; }
.job-run-record th, .job-run-record td { padding: 8px; border-bottom: 1px solid #e4dfda; text-align: left; vertical-align: top; word-break: break-word; }
.job-run-record th { color: #625f5c; font-size: .85rem; }
.job-record-explorer-controls { position: sticky; top: -32px; z-index: 1; display: flex; flex-wrap: wrap; gap: 8px; align-items: end; margin: -32px -44px 20px; padding: 16px 44px; border-bottom: 1px solid #ddd7cf; background: #f7f6f4; }
.job-record-explorer-controls input { min-width: min(100%, 230px); min-height: 42px; padding: 8px 10px; border: 1px solid #8a8580; background: #fff; font: inherit; }
.job-record-explorer-controls button { min-height: 42px; }
.job-record-field-picker { position: relative; }
.job-record-field-picker > summary { min-height: 42px; display: flex; align-items: center; cursor: pointer; border: 1px solid #77716b; padding: 0 12px; background: #fff; font-weight: 600; }
.job-record-field-choices { position: absolute; z-index: 2; top: 48px; left: 0; display: grid; gap: 7px; width: min(320px, 75vw); max-height: 300px; overflow-y: auto; padding: 14px; border: 1px solid #bdb7b0; background: #fff; box-shadow: 0 8px 18px rgba(0, 0, 0, .16); }
.job-record-field-choices label { display: flex; gap: 8px; align-items: center; font-size: .9rem; }
.job-record-field-picker > button { margin-top: 8px; }
.endpoint-catalog code { font: inherit; font-size: .9rem; color: #625f5c; }
.detail-row { display: grid; grid-template-columns: minmax(180px, .8fr) minmax(260px, 1.2fr) auto; align-items: center; border-bottom: 1px solid #e3dfdb; }
.endpoint-row { width: 100%; min-height: 64px; padding: 15px 8px; border: 0; background: transparent; color: #161513; text-align: left; cursor: pointer; }
.endpoint-row-name { grid-column: 1; }
.endpoint-row-detail { grid-column: 2; }
.endpoint-row:hover, .endpoint-row:focus-visible { background: #f7f6f4; outline: 2px solid #1685b5; outline-offset: -2px; }
.endpoint-row span { color: #625f5c; }
.row-icon-actions { grid-column: 3; display: flex; align-items: center; justify-content: flex-end; gap: 6px; padding: 8px 4px 8px 12px; }
.source-object-summary, .source-object-detail { min-height: 64px; display: flex; align-items: center; padding: 15px 8px; }
.source-object-summary { grid-column: 1; }
.source-object-detail { grid-column: 2; color: #625f5c; }
#app .row-icon-button { display: inline-grid; place-items: center; width: 34px; height: 34px; min-width: 34px; margin: 0; padding: 7px; border: 0 !important; border-radius: 2px; background: transparent !important; color: #161513 !important; cursor: pointer; text-decoration: none; }
#app .row-icon-button:hover, #app .row-icon-button:focus-visible { border: 0 !important; background: #f1efed !important; outline: 2px solid #1685b5; outline-offset: 1px; }
.row-icon-button [class^="oj-ux-ico-"] { font-size: 1rem !important; line-height: 1; }
.credential-edit [class^="oj-ux-ico-"] { font-size: .9rem !important; line-height: 1; }
.detail-rail .connection-logo { background: #403c39; }

/* Shared charcoal product header. */
#app > header {
  background: #3f3f3f !important;
  border-bottom-color: #3f3f3f !important;
  color: #fff !important;
  padding-left: 20px !important;
  box-shadow: none !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 100 !important;
}
#app > header .brand,
#app > header .brand > span:last-child,
#app > header .burger-icon {
  color: #fff !important;
}
#app > header .hamburger-button:hover,
#app > header .hamburger-button:focus-visible {
  background: rgba(255, 255, 255, .14) !important;
}
#app > header .header-logo {
  display: block;
  width: 64px;
  height: 34px;
  object-fit: contain;
}
.header-logo-link { display: block; line-height: 0; }
.header-logo-link:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.edit-dialog { width: min(700px, calc(100vw - 48px)); max-height: calc(100dvh - 48px); padding: 0; overflow: hidden; border: 0; border-radius: 8px; box-shadow: none; color: #161513; }
.confirmation-dialog { width: min(480px, calc(100vw - 48px)); }
.confirmation-dialog header { min-height: 0 !important; padding: 28px !important; }
.confirmation-dialog footer { min-height: 84px; padding: 20px 28px 28px; }
.confirmation-dialog::backdrop { background: rgba(23, 21, 19, .42); }
.edit-dialog::backdrop { background: rgba(23, 21, 19, .42); }
html.dialog-scroll-locked { overflow: hidden; overscroll-behavior: none; }
body.dialog-scroll-locked { position: fixed; inset-inline: 0; width: 100%; overflow: hidden; overscroll-behavior: none; }
.edit-dialog form { margin: 0; }
.edit-dialog:not(.endpoint-drawer) form { display: flex; flex-direction: column; max-height: calc(100dvh - 48px); }
.edit-dialog:not(.endpoint-drawer) form::before { content: ''; display: block; height: 8px; flex: 0 0 8px; background: url("./assets/header-strip-plum.png") center / cover no-repeat; }
.edit-dialog header, .edit-dialog footer { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 22px 28px; background: #fff; }
.edit-dialog header { position: static !important; width: 100% !important; max-width: none !important; height: auto !important; margin: 0 !important; box-shadow: none !important; }
.edit-dialog:not(.endpoint-drawer) header { align-self: stretch; align-items: center; justify-content: flex-start; min-height: 144px; box-sizing: border-box; border-bottom: 0; }
.edit-dialog:not(.endpoint-drawer) header > div { width: 100%; text-align: left; }
.edit-dialog header h3, .edit-dialog header p { margin: 0; }
.edit-dialog header h3 { font-size: 1.6rem !important; line-height: 1.25; }
.edit-dialog header p { margin-top: 6px; line-height: 1.4; color: #625f5c; }
.edit-dialog header button { display: inline-grid; width: 34px; height: 34px; place-items: center; flex: 0 0 auto; padding: 0; border: 1px solid #77716b; border-radius: 2px; background: #fff; color: #252321; font-size: 1.3rem; line-height: 1; cursor: pointer; }
.edit-dialog header button:hover, .edit-dialog header button:focus-visible { border-color: #075c8d; background: #edf7fb; color: #075c8d; }
.modal-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 24px; padding: 32px 44px 38px; background: #f7f6f4; }
.edit-dialog:not(.endpoint-drawer) .modal-form { min-height: 0; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
.modal-capability-notice { display: none; grid-column: 1 / -1; margin: 0; color: #9c3500; }
.modal-capability-notice:not(:empty) { display: block; }
.job-create-empty { grid-column: 1 / -1; margin: 0; color: #625f5c; }
.modal-form label { display: grid; gap: 8px; font-size: .9rem; font-weight: 600; line-height: 1.2; color: #514d49; }
#job-create-dialog [data-job-schedule][hidden] { display: none !important; }
.modal-form input, .modal-form select { min-height: 44px; box-sizing: border-box; width: 100%; border: 1px solid #8a8580; border-radius: 2px; background: #fff; padding: 9px 12px; font: inherit; font-weight: 400; color: #161513; }
.modal-form textarea { min-height: 150px; box-sizing: border-box; width: 100%; resize: vertical; border: 1px solid #8a8580; border-radius: 2px; background: #fff; padding: 9px 12px; font: inherit; font-weight: 400; color: #161513; }
.modal-form input:focus, .modal-form select:focus { outline: 2px solid #1685b5; outline-offset: 1px; border-color: #1685b5; }
.edit-dialog footer { min-height: 104px; box-sizing: border-box; padding: 28px 44px 36px; border-top: 0; justify-content: end; }
.edit-dialog footer button { min-height: 42px; padding: 0 18px; border: 1px solid #77716b; border-radius: 2px; background: #fff; font: inherit; font-weight: 600; cursor: pointer; }
.edit-dialog footer .primary { background: #312d2a; color: #fff; border-color: #312d2a; }
.endpoint-drawer { inset: 0 0 0 auto; width: min(560px, 100vw); height: 100dvh; max-height: none; margin: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none; overflow: hidden; }
.signal-matches-drawer { width: min(1120px, 100vw); }
#job-run-records-drawer { width: min(1120px, 100vw); }
#resolved-object-drawer { width: min(1120px, 100vw); }
#resolution-decision-dialog { width: min(1120px, 100vw); }
.resolution-list-drawer { width: min(1120px, 100vw); }
.endpoint-drawer header { min-height: 116px; padding: 28px; padding-top: 20px !important; border-bottom: 1px solid #e3e0dc; }
.endpoint-drawer form { display: flex; flex-direction: column; height: 100%; min-height: 0; overflow: hidden; }
.endpoint-drawer header, .endpoint-drawer footer { flex: 0 0 auto; }
.endpoint-drawer .modal-form { min-height: 0; flex: 1 1 auto; align-content: start; grid-template-columns: 1fr; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
.endpoint-drawer footer { margin-top: 0; }
/* Job drawers are not form-backed, so make their content area the scrolling pane. */
#job-run-records-drawer[open], #job-record-versions-drawer[open] { display: flex; flex-direction: column; }
#resolved-object-drawer[open] { display: flex; flex-direction: column; }
.resolution-list-drawer[open] { display: flex; flex-direction: column; }
#job-run-records-drawer > header, #job-run-records-drawer > footer,
#job-record-versions-drawer > header, #job-record-versions-drawer > footer { flex: 0 0 auto; }
#resolved-object-drawer > header, #resolved-object-drawer > footer { flex: 0 0 auto; }
.resolution-list-drawer > header, .resolution-list-drawer > footer { flex: 0 0 auto; }
#job-run-records-drawer > .modal-form, #job-record-versions-drawer > .modal-form {
  min-height: 0;
  flex: 1 1 auto;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}
#resolved-object-drawer > .modal-form { min-height: 0; flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; }
.resolution-list-drawer > .modal-form { min-height: 0; flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; }
.resolution-exception-evidence { display: grid; gap: 16px; padding: 20px; border: 1px solid #e3e0dc; background: #fbfaf8; }
.resolution-exception-evidence dl { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 8px 16px; margin: 0; }
.resolution-exception-evidence dt { color: #625f5c; font-weight: 600; }
.resolution-exception-evidence dd { margin: 0; overflow-wrap: anywhere; }
.resolution-exception-evidence h4 { margin: 8px 0 0; }
.resolved-object-tools { display: flex; align-items: end; justify-content: space-between; gap: 16px; padding: 20px 0; border-bottom: 1px solid #e3e0dc; }
.resolved-object-tools label { display: grid; flex: 1 1 420px; gap: 8px; color: #514d49; font-size: .9rem; font-weight: 600; }
.resolved-object-tools input { min-height: 44px; box-sizing: border-box; width: 100%; border: 1px solid #8a8580; border-radius: 2px; background: #fff; padding: 9px 12px; font: inherit; font-weight: 400; color: #161513; }
.resolved-object-tools input:focus { outline: 2px solid #1685b5; outline-offset: 1px; border-color: #1685b5; }
.detail-list > .resolved-object-list-row { display: flex; width: 100%; box-sizing: border-box; align-items: center; justify-content: space-between; gap: 24px; min-height: 78px; padding: 12px 4px; border-bottom: 1px solid #e3e0dc; }
.resolved-object-summary { display: grid; min-width: 0; gap: 3px; }
.resolved-object-name { overflow: hidden; color: #161513; font-size: 1.05rem; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.resolved-object-master-id { overflow: hidden; color: #625f5c; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .78rem; text-overflow: ellipsis; white-space: nowrap; }
.resolved-object-meta { color: #625f5c; font-size: .85rem; }
.resolved-object-open { display: inline-flex; width: fit-content; min-width: max-content; min-height: 36px; align-items: center; justify-content: center; flex: 0 0 auto; padding: 0 14px; border: 1px solid #5f5b58; border-radius: 2px; background: #fff; color: #161513; font: inherit; font-weight: 600; cursor: pointer; }
.resolved-object-open:hover, .resolved-object-open:focus-visible { border-color: #075c8d; background: #edf7fb; color: #075c8d; }
.exception-list > .exception-list-row { display: grid; width: 100%; box-sizing: border-box; grid-template-columns: minmax(0, 1fr) max-content max-content; align-items: center; gap: 16px; min-height: 68px; padding: 10px 4px; border-bottom: 1px solid #e3e0dc; }
.exception-summary { display: grid; min-width: 0; gap: 3px; }
.exception-summary b { overflow: hidden; font-size: 1rem; text-overflow: ellipsis; white-space: nowrap; }
.exception-summary small { overflow: hidden; color: #625f5c; font-size: .85rem; text-overflow: ellipsis; white-space: nowrap; }
.exception-status { display: inline-flex; align-items: center; min-height: 24px; padding: 0 8px; border-radius: 12px; background: #fff0f0; color: #9d1d1d; font-size: .78rem; font-weight: 600; text-transform: capitalize; }
.exception-status-ambiguous { background: #fff8df; color: #705700; }
.exception-review-button { display: inline-flex; width: fit-content; min-width: max-content; min-height: 36px; align-items: center; justify-content: center; padding: 0 14px; border: 1px solid #5f5b58; border-radius: 2px; background: #fff; color: #161513; font: inherit; font-weight: 600; cursor: pointer; }
.exception-review-button:hover, .exception-review-button:focus-visible { border-color: #075c8d; background: #edf7fb; color: #075c8d; }
@media (max-width: 640px) { .detail-list > .resolved-object-list-row { align-items: flex-start; flex-direction: column; gap: 10px; } .resolved-object-open { align-self: flex-start; } }
@media (max-width: 640px) { .exception-list-row { grid-template-columns: minmax(0, 1fr); gap: 8px; } }
@media (max-width: 640px) { .resolved-object-tools { align-items: stretch; flex-direction: column; } }
.endpoint-test-response { border: 1px solid #d8d5d2; border-radius: 2px; background: #fff; padding: 16px; }
.endpoint-test-response h3 { margin: 0 0 12px; font-size: 1rem !important; }
.endpoint-test-response dl { display: grid; grid-template-columns: 110px 1fr; gap: 6px 12px; margin: 0 0 14px; }
.endpoint-test-response dt { color: #625f5c; font-size: .9rem; }
.endpoint-test-response dd { margin: 0; overflow-wrap: anywhere; }
.endpoint-test-response pre { max-height: 140px; margin: 16px 0 0; overflow: auto; white-space: pre-wrap; overflow-wrap: anywhere; border: 1px solid #e3e0dc; background: #f7f6f4; padding: 12px; color: #161513; font: .9rem/1.45 "Oracle Sans", Arial, sans-serif; }
.endpoint-extracted-fields { margin-top: 18px; padding-top: 16px; border-top: 1px solid #e3e0dc; }
.endpoint-extracted-fields p { margin: 0 0 10px; color: #625f5c; }
.endpoint-field-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.endpoint-field-list li { border: 1px solid #d8d5d2; border-radius: 2px; background: #fff; padding: 5px 8px; font-size: .9rem !important; }
.response-tabs { display: flex; gap: 18px; border-bottom: 1px solid #d8d5d2; margin: -16px -16px 18px; padding: 0 16px; }
.response-tabs button { min-height: 42px; padding: 0; border: 0 !important; border-bottom: 2px solid transparent !important; background: transparent !important; color: #625f5c !important; }
.response-tabs button[aria-selected="true"] { border-bottom-color: #161513 !important; color: #161513 !important; }
.response-tabs button[aria-selected="false"] { border-bottom-color: transparent !important; }
#app .response-tabs button {
  border-top: 0 !important;
  border-right: 0 !important;
  border-left: 0 !important;
  border-bottom: 2px solid transparent !important;
}
#app .response-tabs button[aria-selected="true"] { border-bottom-color: #161513 !important; }
.response-tab-panel > p { color: #625f5c; }
.endpoint-field-search { width: 100%; min-height: 40px; margin: 4px 0 14px; padding: 8px 10px; border: 1px solid #8a8580; background: #fff; color: #161513; font: inherit; }
.endpoint-fields-empty { margin: 12px 0 0; color: #625f5c; }
.object-field-search-label { margin: 14px 0 10px; }
.object-field-search-empty { margin: 10px 0; color: #625f5c; }
@media (max-width: 640px) { .section-heading { display: grid; } .modal-form { grid-template-columns: 1fr; gap: 18px; padding: 24px 20px 28px; } .edit-dialog { width: calc(100vw - 24px); } .edit-dialog header, .edit-dialog footer { padding-left: 20px; padding-right: 20px; } .edit-dialog header { min-height: 0; padding-top: 32px; } .edit-dialog footer { min-height: 76px; padding-top: 20px; padding-bottom: 24px; } }

/* Global Redwood button treatment: black text and black borders. */
#app oj-button {
  --oj-button-outlined-chrome-border-color: #161513;
  --oj-button-outlined-text-color: #161513;
  --oj-button-solid-chrome-bg-color: #fff;
  --oj-button-solid-chrome-border-color: #161513;
  --oj-button-solid-text-color: #161513;
  --oj-button-borderless-text-color: #161513;
  font-size: .9rem !important;
  font-weight: 600 !important;
}
#app button,
.source-primary-button,
.edit-dialog footer .primary {
  border-color: #161513 !important;
  background: #fff !important;
  color: #161513 !important;
  font-size: .9rem !important;
  font-weight: 600 !important;
}

/* Endpoint rows are navigational controls, not primary actions. */
#app .endpoint-row {
  background: transparent !important;
  color: #161513 !important;
  border-color: transparent !important;
}
#app .endpoint-row:hover,
#app .endpoint-row:focus-visible {
  background: #f7f6f4 !important;
}

.credential-edit {
  display: inline-grid;
  width: 24px;
  height: 24px;
  margin-left: 6px;
  padding: 0;
  place-items: center;
  border: 0 !important;
  background: transparent !important;
  color: #161513 !important;
  cursor: pointer;
}
.credential-edit [class^="oj-ux-ico-"] { font-size: .9rem !important; }
.dialog-icon-button {
  display: inline-grid;
  width: 40px;
  height: 40px;
  min-width: 40px;
  padding: 0;
  place-items: center;
  border: 1px solid #161513 !important;
  border-radius: 2px;
  background: #fff !important;
  color: #161513 !important;
}
.dialog-icon-button [class^="oj-ux-ico-"] { font-size: 1rem !important; }
.credential-basic-fields,
.credential-oauth-fields { display: contents; }
.credential-basic-fields[hidden],
.credential-oauth-fields[hidden] { display: none; }

.entity-avatar,
.connection-logo { font-size: 28px !important; }

/* Endpoint discovery: fields are a scannable list, not a collection of chips. */
.endpoint-field-list {
  display: grid;
  gap: 0;
  max-height: 320px;
  margin: 0;
  padding: 0;
  overflow: auto;
  list-style: none;
  border: 1px solid #d8d5d2;
  background: #fff;
}
.endpoint-field-list li {
  display: flex;
  align-items: center;
  min-height: 42px;
  box-sizing: border-box;
  margin: 0;
  padding: 10px 12px;
  border: 0;
  border-bottom: 1px solid #e3e0dc;
  border-radius: 0;
  overflow-wrap: anywhere;
  background: #fff;
  color: #161513;
  font-size: .9rem !important;
}
.endpoint-field-list li:last-child { border-bottom: 0; }
.endpoint-field-list li[hidden] { display: none; }
.source-object-list > div { gap: 0; }
.source-object-summary { display: flex; align-items: center; min-width: 0; padding: 15px 8px; }
.source-object-list span { color: #625f5c; font-size: .9rem; }
.object-fields-empty { margin: 0; color: #625f5c; font-size: .9rem; }

@media (max-width: 640px) {
  .endpoint-drawer { width: 100vw; border-left: 0; }
  .endpoint-drawer header { min-height: 0; padding: 28px 20px 20px; }
  .endpoint-drawer .modal-form { padding: 20px; }
  .endpoint-drawer footer { display: grid; grid-template-columns: 1fr; gap: 10px; padding: 20px; }
  .endpoint-drawer footer button { width: 100%; }
  .response-tabs { gap: 14px; margin: -20px -20px 16px; padding: 0 20px; overflow-x: auto; }
  .response-tabs button { flex: 0 0 auto; }
  .endpoint-test-response { padding: 12px; }
  .endpoint-field-list { max-height: min(42dvh, 320px); }
  .detail-row { grid-template-columns: minmax(0, 1fr); }
  .job-progress-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .row-icon-actions { justify-content: flex-start; padding: 0 4px 12px; }
  .endpoint-row, .source-object-summary, .source-object-detail { grid-column: 1; min-height: auto; }
}
#app .administration-card {
  max-width: 700px;
  margin: 32px auto;
  padding: 28px;
  border: 1px solid #d8d4d1;
  background: #fff;
}

#app .administration-form {
  display: grid;
  gap: 18px;
  margin-top: 24px;
}

#app .administration-form label { display: grid; gap: 8px; font-weight: 600; }
#app .administration-form .source-primary-button { justify-self: start; }
#app .administration-notice { margin: 0; color: #5f5b58; }
#app .administration-grid { display: grid; gap: 24px; grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)); padding: 32px 40px; }
#app .administration-grid .administration-card { margin: 0; }
#app .api-access-details { display: grid; gap: 12px; margin: 20px 0; }
#app .api-access-details div { display: grid; gap: 4px; }
#app .api-access-details dt { color: #625f5c; font-size: .875rem; }
#app .api-access-details dd { margin: 0; }
#app .api-access-details code { overflow-wrap: anywhere; }
#app .api-access-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 16px; }
#app .api-consumer-table { width: 100%; border-collapse: collapse; margin-top: 20px; }
#app .api-consumer-table th, #app .api-consumer-table td { padding: 10px; border-bottom: 1px solid #dedbd8; text-align: left; vertical-align: top; }
#app .api-credentials-form { display: grid; gap: 16px; min-width: min(540px, 92vw); }
#app .api-credentials-form header p { margin: 4px 0 0; }
#app .api-credentials-form label { display: grid; gap: 6px; }
#app .api-credentials-form footer { display: flex; justify-content: flex-end; gap: 12px; margin-top: 8px; }
#app .api-catalog-card { margin: 0 40px 32px; }
#app .api-catalog-table { width: 100%; border-collapse: collapse; }
#app .api-catalog-table th, #app .api-catalog-table td { padding: 12px 10px; border-bottom: 1px solid #dedbd8; text-align: left; vertical-align: middle; }
#app .api-catalog-table code { overflow-wrap: anywhere; }
#app .api-method { display: inline-flex; min-width: 52px; justify-content: center; padding: 3px 7px; border-radius: 999px; font-size: .75rem; font-weight: 700; letter-spacing: .03em; }
#app .api-method-get { background: #e7f4ed; color: #156b3a; }
#app .api-method-post { background: #e7f1fb; color: #165d99; }
#app .api-method-patch { background: #fff3d9; color: #8a5800; }
#app .api-method-delete { background: #fce9e7; color: #aa2e25; }
#api-endpoint-drawer .api-drawer-method { margin-bottom: 10px; }
#api-endpoint-drawer .api-endpoint-details dl { display: grid; gap: 20px; margin: 0; }
#api-endpoint-drawer .api-endpoint-details dl > div { display: grid; gap: 6px; }
#api-endpoint-drawer .api-endpoint-details dt { color: #625f5c; font-size: .875rem; }
#api-endpoint-drawer .api-endpoint-details dd { margin: 0; line-height: 1.5; }
#api-endpoint-drawer .api-endpoint-details code { display: block; padding: 10px 12px; overflow-wrap: anywhere; border: 1px solid #dedbd8; border-radius: 4px; background: #f7f6f4; }

/* Administration: Redwood surfaces and a table-free mobile experience. */
#app .administration-template { background: #f7f7f7; padding-bottom: 32px; box-shadow: none; }
#app .administration-template .record-top { background: #fff; padding: 28px 40px 24px; }
#app .administration-template .record-top h2 { font-size: 2rem !important; margin: 0 0 4px; }
#app .administration-grid { display: block; padding: 0 40px 32px; }
#app .administration-tabs { display: flex; gap: 28px; margin: 0 -40px 0px; padding: 0 80px; border-bottom: 1px solid #d9dfe3; background: #fff; overflow-x: auto; }
#app .administration-tabs button { flex: 0 0 auto; min-height: 48px; padding: 13px 0 11px; border: 0 !important; border-bottom: 3px solid transparent !important; border-radius: 0; background: transparent; box-shadow: none !important; color: #4d5358; cursor: pointer; font-weight: 600; }
#app .administration-tabs button[aria-selected="true"] { border-bottom-color: #1f5fbf !important; color: #252a30; }
#app .administration-tabs button:hover { color: #252a30; }
#app .administration-tabs button:focus-visible { outline: none; }
#app .administration-tab-panels { padding: 0 35px; background: #fff; }
#app .administration-tab-panel { width: 100%; }
#app .administration-tab-panel .administration-card { max-width: none; margin: 0; padding: 28px 0; border: 0; border-radius: 0; background: transparent; box-shadow: none !important; }
#app .administration-card-heading { display: flex; align-items: flex-start; justify-content: flex-start; gap: 16px; height: auto; min-height: 0; padding: 0; border: 0; position: static; background: transparent; box-shadow: none !important; }
#app .administration-card-heading > div { min-width: 0; }
#app .administration-card-heading h3 { margin: 0 0 8px; font-size: 1.25rem !important; line-height: 1.3; }
#app .administration-card-heading p { margin: 0; color: #4d5358; line-height: 1.5; }
#app .administration-card-icon { display: grid; flex: 0 0 40px; width: 40px; height: 40px; place-items: center; border: 1px solid #d9dfe3; border-radius: 4px; color: #1f5fbf; background: #f5f9ff; font-size: 1.35rem !important; }
#app .api-access-details { gap: 16px; margin: 28px 0 20px; }
#app .api-access-details dt { color: #5c6268; font-weight: 400; }
#app .api-access-details dd { font-weight: 600; }
#app .api-access-details code { display: block; padding: 12px; border: 1px solid #cdd3d8; border-radius: 4px; background: #fafbfc; color: #252a30; font-size: .875rem !important; line-height: 1.45; }
#app .api-access-actions { gap: 12px; margin: 24px 0 16px; }
#app .api-access-actions button, #app .administration-form .source-primary-button { min-height: 44px; }
#app .administration-notice { color: #5c6268; line-height: 1.45; }
#app .administration-form { gap: 16px; margin-top: 26px; }
#app .administration-form label { gap: 7px; color: #252a30; }
#app .administration-form input { min-height: 42px; border: 1px solid #8c949d; border-radius: 2px; padding: 8px 10px; background: #fff; }
#app .administration-form .source-primary-button { justify-self: stretch; width: 100%; }
#app .administration-configuration-status { display: flex; align-items: flex-start; gap: 8px; }
#app .administration-configuration-status .oj-ux-ico-check { flex: 0 0 auto; color: #16803c; }
#app .api-consumer-records { display: grid; gap: 12px; margin-top: 20px; }
#app .api-consumer-record { padding: 16px; border: 1px solid #d9dfe3; border-radius: 6px; }
#app .api-consumer-record dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 20px; margin: 0; }
#app .api-consumer-record dl div { min-width: 0; }
#app .api-consumer-record dt { margin-bottom: 3px; color: #5c6268; font-size: .875rem !important; }
#app .api-consumer-record dd { margin: 0; color: #252a30; font-weight: 600; overflow-wrap: anywhere; }
#app .api-consumer-record code { font-size: .875rem !important; font-weight: 500; }
#app .api-consumer-status { color: #5c6268; font-weight: 600; }
#app .api-consumer-status.is-active { color: #16803c; }
#app .api-consumer-table-wrap { width: 100%; max-width: 100%; margin-top: 20px; overflow: hidden; border: 1px solid #d9dfe3; border-radius: 6px; }
#app .api-consumer-table { display: none; width: 100%; min-width: 0 !important; margin: 0; table-layout: fixed; }
#app .api-consumer-table th, #app .api-consumer-table td { min-width: 0; padding: 12px 10px; overflow-wrap: anywhere; }
#app .administration-empty { margin: 18px 0 0; color: #5c6268; }
#app .api-catalog-card { margin: 0; }
#app .api-catalog-card .section-heading { margin: 0 0 22px; }
#app .api-catalog-title { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
#app .api-catalog-title h3 { margin: 0; }
#app .api-endpoint-count { display: inline-flex; align-items: center; min-height: 24px; padding: 2px 8px; border-radius: 12px; color: #1f5fbf; background: #e8f1ff; font-size: .875rem !important; font-weight: 600; }
#app .api-catalog-table { min-width: 0; border: 1px solid #d9dfe3; border-radius: 6px; overflow: hidden; background: #fff; }
#app .api-catalog-table th { background: #f5f6f7; color: #3a424a; }
#app .api-catalog-table th, #app .api-catalog-table td { padding: 13px 14px; border-color: #dfe3e6; }
#app .api-catalog-table td:last-child { text-align: right; }
#app .api-method { min-width: 48px; border-radius: 4px; font-size: .75rem !important; }
#app .api-method-get { color: #1f5fbf; background: #e8f1ff; }

@media (min-width: 721px) {
  #app .api-consumer-records { display: none; }
  #app .api-consumer-table { display: table; }
}

@media (max-width: 720px) {
  #app .administration-template .record-top { padding: 24px 16px 20px; }
  #app .administration-template .record-top h2 { font-size: 1.75rem !important; }
  #app .administration-grid { padding: 0 14px 20px; }
  #app .administration-tabs { gap: 24px; margin: 0 -14px 16px; padding: 0 30px; }
  #app .administration-tab-panel .administration-card { padding: 20px 0; }
  #app .administration-card-heading { gap: 12px; }
  #app .administration-card-icon { flex-basis: 36px; width: 36px; height: 36px; font-size: 1.15rem !important; }
  #app .administration-card-heading h3 { font-size: 1.125rem !important; }
  #app .api-access-details { margin: 22px 0 18px; }
  #app .api-access-actions { display: grid; grid-template-columns: 1fr; }
  #app .api-access-actions button { width: 100%; }
  #app .api-consumer-record { padding: 14px; }
  #app .api-consumer-record dl { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  #app .api-catalog-card { margin: 0; }
  #app .api-consumer-table-wrap { display: none; }
  #app .api-catalog-card .section-heading { margin-bottom: 16px; }
  #app .api-catalog-card .table-wrap { overflow: visible; }
  #app .api-catalog-card .table-wrap:after { display: none; }
  #app .api-catalog-table, #app .api-catalog-table tbody, #app .api-catalog-table tr, #app .api-catalog-table td { display: block; width: 100%; }
  #app .api-catalog-table thead { display: none; }
  #app .api-catalog-table { border-radius: 6px; }
  #app .api-catalog-table tr { position: relative; min-height: 76px; padding: 12px 42px 12px 12px; border-bottom: 1px solid #dfe3e6; }
  #app .api-catalog-table tr:last-child { border-bottom: 0; }
  #app .api-catalog-table td { padding: 0; border: 0; text-align: left !important; }
  #app .api-catalog-table td:nth-child(1) { float: left; margin: 0 12px 26px 0; }
  #app .api-catalog-table td:nth-child(2) code { display: block; min-height: 24px; padding-top: 2px; color: #252a30; font-size: .8125rem !important; overflow-wrap: anywhere; }
  #app .api-catalog-table td:nth-child(3) { clear: both; color: #5c6268; font-size: .875rem !important; }
  #app .api-catalog-table td:nth-child(3)::before { content: 'Area: '; }
  #app .api-catalog-table td:last-child { position: absolute; top: 50%; right: 8px; transform: translateY(-50%); }
  #app .api-catalog-table .api-catalog-open { width: 36px; min-width: 36px; height: 44px; overflow: hidden; padding: 0; border: 0; background: transparent; color: transparent; }
  #app .api-catalog-table .api-catalog-open::after { content: '›'; color: #4d5358; font-size: 2rem !important; font-weight: 300; line-height: 1; }
}

/* Keep the identity-profile builder aligned to the full modal content area. */
#identity-profile-dialog { width: min(1040px, calc(100vw - 48px)); }
#identity-profile-dialog .modal-form { grid-template-columns: minmax(0, 1fr); align-content: start; }
#identity-profile-dialog .identity-profile-builder { display: grid; gap: 28px; width: 100%; }
#identity-profile-dialog .identity-profile-builder > section { display: grid; gap: 14px; width: 100%; }
#identity-profile-dialog .identity-profile-builder > .overall-source-default { gap: 10px; padding-bottom: 22px; border-bottom: 1px solid #e3dfdb; }
#identity-profile-dialog .identity-profile-builder > .overall-source-default h4 { margin: 0; }
#identity-profile-dialog .identity-profile-builder .section-heading { align-items: center; }
#identity-profile-dialog .identity-profile-builder .overall-source-winner { display: grid; gap: 6px; max-width: 420px; font-weight: 600; }
#identity-profile-dialog .identity-profile-builder .overall-source-winner small { color: #5f5b58; font-weight: 400; }
#identity-profile-dialog .identity-profile-builder .job-run-record { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px 16px; width: 100%; margin: 0; padding: 18px; }
#identity-profile-dialog .identity-profile-builder .job-run-record > label { min-width: 0; }
#identity-profile-dialog .identity-profile-builder .job-run-record > .attribute-winner { grid-column: span 2; }
#identity-profile-dialog .identity-profile-builder .job-run-record > .source-only-attribute { grid-column: span 2; align-self: end; margin: 0; color: #5f5b58; font-size: 0.875rem; }
#identity-profile-dialog .identity-profile-builder .job-run-record > .row-edit-button { align-self: end; min-height: 44px; }
#identity-profile-dialog .identity-profile-builder .job-run-record > .row-icon-button { align-self: end; justify-self: start; width: 44px; height: 44px; min-width: 44px; min-height: 44px; }
#identity-profile-dialog .identity-profile-builder .profile-identity-record > .row-icon-button { grid-column: 3; grid-row: 2; }
#identity-profile-dialog .identity-profile-builder .profile-attribute-record > .row-icon-button { grid-column: 3; grid-row: 3; }
#identity-profile-dialog .identity-profile-builder .profile-identity-record > .profile-source-field[data-source-index="0"] { grid-column: 1; grid-row: 2; }
#identity-profile-dialog .identity-profile-builder .profile-identity-record > .profile-source-field[data-source-index="1"] { grid-column: 2; grid-row: 2; }
#identity-profile-dialog .identity-profile-builder .profile-attribute-record > .profile-source-field[data-source-index="0"] { grid-column: 1; grid-row: 3; }
#identity-profile-dialog .identity-profile-builder .profile-attribute-record > .profile-source-field[data-source-index="1"] { grid-column: 2; grid-row: 3; }
#identity-profile-dialog .identity-profile-builder .job-run-record > label input[type="number"] { margin-top: 8px; }
@media (max-width: 720px) {
  #identity-profile-dialog { width: calc(100vw - 24px); }
  #identity-profile-dialog .identity-profile-builder .job-run-record { grid-template-columns: 1fr; }
  #identity-profile-dialog .identity-profile-builder .profile-identity-record > .row-icon-button,
  #identity-profile-dialog .identity-profile-builder .profile-attribute-record > .row-icon-button { grid-column: auto; grid-row: auto; }
  #identity-profile-dialog .identity-profile-builder .profile-identity-record > .profile-source-field,
  #identity-profile-dialog .identity-profile-builder .profile-attribute-record > .profile-source-field { grid-column: auto; grid-row: auto; }
}

/* Segment workspace content owns its spacing; the nested article adds none. */
.signal-workspace > article { padding: 0 !important; }

/* Compact segment refinement: detail is available on demand, not always expanded. */
.signal-evidence-count{margin-left:8px;color:#625f5c;font-size:.9rem;font-weight:600;white-space:nowrap}
.signal-evidence-summary{display:block!important;padding:0!important}.signal-evidence-summary>summary{display:flex;align-items:center;gap:9px;min-height:48px;cursor:pointer;list-style:none}.signal-evidence-summary>summary::-webkit-details-marker{display:none}.signal-evidence-summary>summary:before{content:'›';color:#00688f;font-size:1.2rem;line-height:1;transition:transform .15s}.signal-evidence-summary[open]>summary:before{transform:rotate(90deg)}.signal-evidence-summary>summary small{margin-left:auto;color:#706b66;font-weight:400}.signal-evidence-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}.signal-evidence-body>span{color:#706b66}.signal-evidence-body .signal-evidence-actions{grid-column:2;grid-row:1;align-self:start}.signal-evidence-body .signal-proposal-actions{grid-column:1/-1}.signal-evidence-summary.ai-proposed{padding-left:0!important}
.signal-detail-template .ai-proposed{position:relative;border-left:0!important}.signal-detail-template .ai-proposed::before{content:'';position:absolute;inset:0 auto 0 0;width:7px;background:repeating-linear-gradient(105deg,#f47f56 0 8px,#f6f2ed 8px 20px,#95c5c0 20px 29px,#495e59 29px 43px,#f0cc70 43px 49px,#31423d 49px 64px)}.signal-detail-template .signal-evidence-summary.ai-proposed{padding-left:14px!important}
.signal-evidence-overflow{position:relative}.signal-evidence-more{font-size:1.25rem;line-height:1}.signal-evidence-menu{position:absolute;z-index:4;top:calc(100% + 6px);right:0;display:grid;min-width:172px;padding:6px;border:1px solid #bdb7b0;background:#fff;box-shadow:0 8px 18px rgba(0,0,0,.16)}.signal-evidence-menu[hidden]{display:none}.signal-evidence-menu button{width:100%;border:0;padding:9px 10px;text-align:left;background:#fff}.signal-evidence-menu button:hover,.signal-evidence-menu button:focus-visible{background:#edf7fb;color:#075c8d}
.signal-delivery-modal{display:grid;gap:18px}.signal-delivery-modal label{display:grid;gap:7px;font-weight:600}.signal-delivery-modal code{display:block;overflow-wrap:anywhere;padding:11px 12px;border:1px solid #d8d3cd;background:#f7f6f4;color:#252321;font:inherit;font-weight:400}
.signal-detail-template .signal-rule-list{border-top:0!important}.signal-detail-template .signal-rule-list>.signal-evidence-summary{border-bottom:0!important}.signal-detail-template .signal-rule-list>.signal-evidence-summary+.signal-evidence-summary{border-top:1px solid rgba(89,84,79,.16)}
.signal-rail-title{display:flex;align-items:flex-start;gap:8px}.signal-rail-title h3{margin:0;flex:1 1 auto}.signal-rail-title .row-icon-button{flex:0 0 auto}
.signal-rename-field{grid-column:1/-1}
#app #signal-rename{display:inline-flex!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;padding:3px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#625f5c!important}#app #signal-rename:hover{background:transparent!important;color:#075c8d!important}#app #signal-rename:focus-visible{background:transparent!important;outline:2px solid #1685b5;outline-offset:2px}
.signal-rule{display:block;border-radius:12px!important;padding:20px!important}.signal-rule>summary{cursor:pointer;font-weight: 600;margin-bottom:10px}.signal-rule:not([open])>summary{margin:0}.signal-field-search{box-sizing:border-box;width:100%;min-height:38px;padding:7px;border:1px solid #8c8985;background:#fff;font:inherit}
.endpoint-drawer header .actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.endpoint-drawer header [data-signal-match-mode]{display:inline-flex;width:auto;height:auto;min-height:36px;padding:0 14px;align-items:center;justify-content:center;white-space:nowrap;font-size:.95rem;line-height:1.2}.endpoint-drawer header [data-signal-match-mode][aria-pressed="true"]{border-color:#00688f;background:#edf7fb;color:#00688f}
.signal-matches-drawer[open]{display:flex;flex-direction:column}.signal-matches-drawer[open]>header,.signal-matches-drawer[open]>footer{flex:0 0 auto}.signal-matches-drawer[open]>.modal-form{min-height:0;flex:1 1 auto;overflow-y:auto!important;overscroll-behavior:contain}.signal-match-record-button{display:block;max-width:100%;padding:0;border:0;background:transparent;color:#075c8d;font:inherit;font-weight: 600;text-align:left;overflow-wrap:anywhere;cursor:pointer}.signal-match-record-button:hover,.signal-match-record-button:focus-visible{color:#003b5c;text-decoration:underline}.signal-match-record-details{display:grid;grid-column:1/-1;gap:18px}.signal-match-record-details section{padding:16px;border:1px solid #ded9d4;background:#fff}.signal-match-record-details h4{margin:0 0 12px}.signal-match-record-details dl{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,2fr);gap:8px 18px;margin:0}.signal-match-record-details dt{font-weight: 600;color:#514d49}.signal-match-record-details dd{margin:0;overflow-wrap:anywhere}@media(max-width:600px){.signal-match-record-details dl{grid-template-columns:1fr;gap:3px}.signal-match-record-details dd{margin-bottom:10px}}
.signal-preview-controls{display:grid;grid-template-columns:minmax(200px,320px) minmax(220px,1fr);gap:14px;align-items:end;margin-bottom:18px}.signal-preview-controls label{display:grid;gap:6px;color:#625f5c;font-size:.9rem;font-weight: 600}.signal-preview-controls select,.signal-preview-controls input{min-height:40px;box-sizing:border-box;width:100%;padding:8px;border:1px solid #8c8985;background:#fff;font:inherit;color:#161513}@media(max-width:700px){.signal-preview-controls{grid-template-columns:1fr}}
.signal-history-list{display:grid;gap:10px}.signal-history-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 16px;padding:14px;border:1px solid #ded9d4;background:#fff}.signal-history-item>div{display:grid;gap:3px}.signal-history-item small,.signal-history-item p{color:#625f5c}.signal-history-item p{grid-column:1/-1;margin:0;line-height:1.4}.signal-history-item button{align-self:start;grid-column:2;grid-row:1}@media(max-width:600px){.signal-history-item{grid-template-columns:1fr}.signal-history-item button{grid-column:auto;grid-row:auto;justify-self:start}}
.signal-proposed-condition-content{display:grid;gap:12px}.signal-proposed-condition-content h4{margin:0}.signal-proposed-condition-list{display:grid;gap:10px;margin:0;padding:14px 14px 14px 32px;border:1px solid #ded9d4;background:#fff}.signal-proposed-condition-list li{line-height:1.45}
@media (min-width:901px){.signal-detail-template .signal-workspace>article{display:flex;min-height:100%;flex-direction:column}.signal-detail-template .signal-recommendation{display:flex;min-height:100%;flex:1 1 auto;flex-direction:column}.signal-detail-template .signal-rule-list{min-height:0!important;flex:1 1 auto;overflow-y:auto!important;overscroll-behavior:contain}.signal-detail-template .signal-rule{position:sticky;z-index:2;bottom:0;margin-top:auto;box-shadow:none!important;order:2}.signal-detail-template .signal-approval{order:1}}

/* Signals are decision designers. Their layout intentionally differs from the
   filter-first Segment Builder while reusing its governed criteria editor. */
.signal-product-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;border-bottom:1px solid #ded9d4}.signal-product-intro h3{margin:0 0 8px}.signal-product-intro p{max-width:760px;margin:0;color:#625f5c}.signal-decision-template,.signal-decision-template .detail-content{background:#fff}.signal-decision-content{max-width:1440px!important;margin:0 auto!important;padding:30px 44px 44px!important}.signal-decision-header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;padding:0 0 24px;border-bottom:1px solid #ded9d4}.signal-decision-header .eyebrow{margin:0 0 8px;color:#625f5c;font-size:.75rem;font-weight:700;letter-spacing:.08em}.signal-decision-header h2{margin:0}.signal-decision-header p{margin:8px 0 0;color:#706b66}.signal-decision-header .actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:14px}.signal-decision-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,340px);gap:40px;margin-top:28px}.signal-output-definition{padding:22px 24px;background:#f7f5f2;border:1px solid #ded9d4}.signal-output-definition .section-heading h3,.signal-decision-section .section-heading h3{margin:0}.signal-output-definition .section-heading p,.signal-decision-section .section-heading p{margin:6px 0 0;color:#706b66}.signal-output-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}.signal-output-fields label{display:grid;gap:6px;font-weight:600}.signal-output-fields label:last-child{grid-column:1/-1}.signal-output-fields small{font-weight:400;color:#706b66}.signal-output-fields input,.signal-output-fields select,.signal-output-fields textarea,.signal-proposal-rail textarea{box-sizing:border-box;width:100%;border:1px solid #8c8985;background:#fff;padding:9px;font:inherit}.signal-output-fields textarea{min-height:78px;resize:vertical}.signal-decision-section{padding:28px 0;border-bottom:1px solid #ded9d4}.signal-decision-section .section-heading{align-items:center}.signal-outcome-card{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;margin-top:18px;padding:20px 22px;border:1px solid #ded9d4;background:#fff}.signal-outcome-card h4,.signal-outcome-card p{margin:0}.signal-outcome-card p{margin-top:8px;color:#625f5c;line-height:1.5}.signal-outcome-value{display:grid;align-content:start;gap:6px}.signal-outcome-value small{color:#706b66;font-size:.72rem;font-weight:700;letter-spacing:.06em}.signal-outcome-value strong{font-size:1.25rem}.signal-input-list{border-top:1px solid #ded9d4;margin-top:18px}.signal-input-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid #ded9d4}.signal-input-card h4,.signal-input-card p{margin:0}.signal-input-card p{margin-top:5px;color:#625f5c}.signal-input-card small{display:block;margin-top:8px;color:#706b66}.signal-evaluation-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px;padding:20px 24px;background:#e7f2f6}.signal-evaluation-panel h3,.signal-evaluation-panel p{margin:0}.signal-evaluation-panel p{margin-top:6px;color:#36545f}.signal-proposal-rail{position:sticky;top:18px;align-self:start;border-left:1px solid #ded9d4;padding-left:28px}.signal-proposal-rail h3{margin:0}.signal-proposal-rail p{color:#625f5c;line-height:1.5}.signal-proposal-rail textarea{min-height:116px;margin-top:18px;resize:vertical}.signal-proposal-rail button{width:100%;margin-top:12px}.signal-proposal-note{font-size:.875rem}.signal-workstream-tracker{margin:20px 0 28px;padding:22px 24px;border:1px solid #ded9d4;background:#f7f5f2}.signal-workstream-tracker h2,.signal-workstream-tracker p{margin:0}.signal-workstream-tracker p{margin-top:6px;color:#625f5c}.signal-workstream-tracker ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:18px 0 0;padding:0;list-style:none}.signal-workstream-tracker li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#fff;border:1px solid #ded9d4}
@media(max-width:900px){.signal-product-intro,.signal-decision-header,.signal-evaluation-panel{align-items:flex-start;flex-direction:column}.signal-decision-content{padding:24px 22px 32px!important}.signal-decision-grid{grid-template-columns:1fr;gap:28px}.signal-proposal-rail{position:static;border-left:0;border-top:1px solid #ded9d4;padding:24px 0 0}.signal-output-fields,.signal-outcome-card{grid-template-columns:1fr}.signal-decision-header .actions{justify-content:flex-start}}

.signal-calculation,.signal-buckets{margin-top:24px;padding-top:20px;border-top:1px solid #d9d4cf}.signal-calculation h4,.signal-buckets h4{margin:0 0 4px}.signal-calculation p,.signal-buckets p{margin:0 0 14px;color:#625f5c}.signal-calculation>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.signal-calculation label{display:grid;gap:6px;font-weight:600}.signal-calculation select,.signal-bucket-row input,.signal-bucket-row select{box-sizing:border-box;min-width:0;width:100%;padding:9px;border:1px solid #8c8985;background:#fff;font:inherit}.signal-bucket-row{display:grid;grid-template-columns:1.3fr .75fr 1fr 1fr 1.3fr;gap:10px;margin-top:10px}.signal-buckets .section-heading{margin-bottom:0}.signal-criteria-inputs{display:grid;gap:10px;margin-top:18px}.signal-criteria-inputs>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-top:1px solid #d9d4cf}.signal-criteria-inputs span{color:#625f5c}
@media(max-width:850px){.signal-calculation>div,.signal-bucket-row{grid-template-columns:1fr}.signal-criteria-inputs>div{display:block}.signal-criteria-inputs span{display:block;margin-top:4px}}

/* Signal designer — Redwood form hierarchy. Keep this independent from the
   dense Segment Builder workspace so a business decision reads as a form. */
.signal-decision-template{
  display:block!important;
  height:auto!important;
  min-height:calc(100dvh - 56px);
  overflow:visible!important;
  background:#fff;
}
.signal-decision-template .signal-decision-content{
  width:min(1240px,100%)!important;
  min-height:0!important;
  margin:0 auto!important;
  padding:32px 40px 56px!important;
  overflow:visible!important;
  box-sizing:border-box;
}
.signal-decision-template .signal-decision-header{
  align-items:center;
  padding:0 0 22px;
}
.signal-decision-template .signal-decision-header>div:first-child{min-width:0}
.signal-decision-template .signal-decision-header h2{
  font-size:2rem!important;
  line-height:1.2;
}
.signal-decision-template .signal-decision-header p:not(.eyebrow){
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  font-size:.9375rem;
}
.signal-decision-template .signal-decision-header .actions{
  max-width:430px;
  gap:10px 16px;
}
.signal-decision-template .signal-segment-availability{
  flex-basis:100%;
  order:2;
  color:#5f5b57;
  font-size:.875rem;
  text-align:right;
}
.signal-decision-template .signal-decision-grid{
  grid-template-columns:minmax(0,1fr) 320px;
  gap:32px;
  margin-top:26px;
}
.signal-decision-template .signal-output-definition{
  padding:0;
  border:1px solid #d9d5d1;
  background:#fff;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.signal-decision-template .signal-output-definition>.section-heading{
  padding:22px 24px 18px;
  border-bottom:1px solid #e5e1dd;
  background:#faf9f8;
}
.signal-decision-template .signal-output-definition>.section-heading h3{
  font-size:1.35rem!important;
}
.signal-decision-template .signal-output-fields,
.signal-decision-template .signal-calculation,
.signal-decision-template .signal-buckets{
  margin:0;
  padding:22px 24px;
  border-top:0;
}
.signal-decision-template .signal-calculation,
.signal-decision-template .signal-buckets{
  border-top:1px solid #e5e1dd;
}
.signal-decision-template .signal-output-fields input,
.signal-decision-template .signal-output-fields select,
.signal-decision-template .signal-output-fields textarea,
.signal-decision-template .signal-calculation select,
.signal-decision-template .signal-bucket-row input,
.signal-decision-template .signal-bucket-row select,
.signal-decision-template .signal-proposal-rail textarea{
  min-height:40px;
  border-color:#8a8580;
  border-radius:2px;
}
.signal-decision-template .signal-output-fields textarea{min-height:86px}
.signal-decision-template .signal-decision-section{
  margin-top:24px;
  padding:0;
  border:1px solid #d9d5d1;
  background:#fff;
}
.signal-decision-template .signal-decision-section>.section-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 22px;
  background:#faf9f8;
  border-bottom:1px solid #e5e1dd;
}
.signal-decision-template .signal-outcome-card{margin:0;border:0}
.signal-decision-template .signal-input-list{margin:0;border-top:0;padding:0 22px}
.signal-decision-template .signal-input-card:last-child{border-bottom:0}
.signal-decision-template .signal-evaluation-panel{
  margin-top:24px;
  border:1px solid #b9d8df;
  background:#f0f8fa;
}
.signal-decision-template .signal-proposal-rail{
  top:24px;
  border:1px solid #d9d5d1;
  padding:22px;
  background:#faf9f8;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}
.signal-decision-template .signal-proposal-rail h3{font-size:1.35rem!important}
.signal-decision-template .signal-proposal-rail textarea{margin-top:14px;background:#fff}
.signal-decision-template .signal-proposal-note{
  margin:12px 0 0;
  color:#625f5c;
}
@media(max-width:900px){
  .signal-decision-template .signal-decision-content{padding:24px 20px 40px!important}
  .signal-decision-template .signal-decision-header{align-items:flex-start}
  .signal-decision-template .signal-decision-header .actions{justify-content:flex-start}
  .signal-decision-template .signal-segment-availability{text-align:left}
  .signal-decision-template .signal-decision-grid{grid-template-columns:1fr}
  .signal-decision-template .signal-proposal-rail{position:static}
}

/* Reuse the Segment Builder workspace treatment for Signal definitions. The
   information model is different, but both are governed designers. */
.signal-decision-template .signal-decision-content{
  width:100%!important;
  max-width:none!important;
  padding:24px 40px 32px!important;
}
.signal-decision-template .signal-decision-header{
  max-width:none;
  padding:0 0 22px;
}
.signal-decision-template .signal-decision-header h2{font-size:1.65rem!important}
.signal-decision-template .signal-decision-grid{
  grid-template-columns:minmax(0,7fr) minmax(320px,3fr);
  gap:0;
  margin-top:0;
}
.signal-decision-template .signal-decision-grid>main{padding:26px 34px 26px 0}
.signal-decision-template .signal-output-definition,
.signal-decision-template .signal-decision-section{
  border:0;
  box-shadow:none;
  background:transparent;
}
.signal-decision-template .signal-output-definition>.section-heading,
.signal-decision-template .signal-decision-section>.section-heading{
  padding:0 0 16px;
  background:transparent;
  border-bottom:1px solid #ded9d4;
}
.signal-decision-template .signal-output-definition>.section-heading h3,
.signal-decision-template .signal-decision-section>.section-heading h3{
  font-size:1.6rem!important;
}
.signal-decision-template .signal-output-fields,
.signal-decision-template .signal-calculation,
.signal-decision-template .signal-buckets{
  padding:20px 0;
  background:transparent;
}
.signal-decision-template .signal-decision-section{margin-top:28px;padding:0 0 24px;border-bottom:1px solid #ded9d4}
.signal-decision-template .signal-decision-section+.signal-decision-section{margin-top:0;padding-top:28px}
.signal-decision-template .signal-outcome-card{padding:18px 0 0;background:transparent}
.signal-decision-template .signal-input-list{padding:0}
.signal-decision-template .signal-evaluation-panel{margin-top:28px;box-shadow:none}
.signal-decision-template .signal-proposal-rail{
  position:sticky;
  top:0;
  min-height:calc(100dvh - 144px);
  height:calc(100dvh - 144px);
  box-sizing:border-box;
  overflow-y:auto;
  border:0;
  border-left:1px solid #dcd7d2;
  box-shadow:none;
  background:#fff;
  padding:26px 0 12px 26px;
}
.signal-decision-template .signal-proposal-rail h3{font-size:1.6rem!important}
.signal-decision-template .signal-proposal-rail textarea{margin-top:18px}
@media(max-width:900px){
  .signal-decision-template .signal-decision-content{padding:26px 22px!important}
  .signal-decision-template .signal-decision-grid{grid-template-columns:1fr}
  .signal-decision-template .signal-decision-grid>main{padding:24px 0}
  .signal-decision-template .signal-proposal-rail{height:auto;min-height:0;padding:24px 0 0;border-left:0;border-top:1px solid #dcd7d2}
}

/* Match the Segment Builder shell exactly: a governed detail rail on the left
   and one uncluttered editing canvas. Signal-only controls stay inside that
   canvas rather than creating another application layout. */
@media(min-width:901px){
  .signal-decision-template{
    display:grid!important;
    grid-template-columns:312px minmax(0,1fr);
    align-items:stretch;
    min-height:calc(100dvh - 56px);
    padding-top:7px!important;
    background:
      url("./assets/header-strip-plum.png") top/100% 7px no-repeat,
      #fff!important;
  }
  .signal-decision-template .signal-decision-content{
    grid-column:1/-1;
    display:contents;
  }
  .signal-decision-template .signal-decision-header{
    grid-column:1;
    grid-row:1;
    display:block;
    margin:0;
    padding:36px 24px!important;
    border:0!important;
    border-right:1px solid #e3e0dc!important;
    background:#f7f6f4;
    box-sizing:border-box;
  }
  .signal-decision-template .signal-decision-header .eyebrow{display:none}
  .signal-decision-template .signal-decision-header h2{
    margin:0 0 22px!important;
    font-size:1.8rem!important;
    overflow-wrap:anywhere;
  }
  .signal-decision-template .signal-decision-header p:not(.eyebrow){
    display:block;
    margin:0!important;
    line-height:1.55;
    color:#625f5c;
  }
  .signal-decision-template .signal-decision-header .actions{
    display:grid;
    justify-content:stretch;
    gap:12px;
    margin-top:28px;
  }
  .signal-decision-template .signal-decision-header .actions>*{width:100%;box-sizing:border-box}
  .signal-decision-template .signal-decision-header .actions>a{order:3;color:#006f9d;text-decoration:none}
  .signal-decision-template .signal-segment-availability{order:2;text-align:left!important;line-height:1.45}
  .signal-decision-template .signal-decision-grid{
    grid-column:2;
    grid-row:1;
    display:block;
    margin:0!important;
    padding:30px 40px 40px;
    box-sizing:border-box;
  }
  .signal-decision-template .signal-decision-grid>main{padding:0!important}
  .signal-decision-template .signal-output-definition>.section-heading h3:before{content:'Output definition';font-size:1.6rem}
  .signal-decision-template .signal-output-definition>.section-heading h3{font-size:0!important}
  .signal-decision-template .signal-proposal-rail{
    position:static!important;
    min-height:0!important;
    height:auto!important;
    margin-top:28px;
    padding:18px 24px 22px!important;
    border:0!important;
    border-top:1px solid #ded9d4!important;
    background:#f7f5f2!important;
  }
  .signal-decision-template .signal-proposal-rail h3{font-size:1rem!important;margin:0 0 8px}
  .signal-decision-template .signal-proposal-rail p{margin:0;max-width:760px}
  .signal-decision-template .signal-proposal-rail textarea{min-height:86px;margin-top:14px}
  .signal-decision-template .signal-proposal-rail button{width:auto;min-width:126px;margin:12px 0 0;float:right}
  .signal-decision-template .signal-proposal-note{clear:both;padding-top:8px}
}

/* Final surface alignment with Segment Builder. */
@media(min-width:901px){
  .signal-decision-template .signal-decision-header{
    background:
      linear-gradient(to bottom,rgba(247,246,244,.78),rgba(247,246,244,.92)),
      url("./assets/background-shell-database-start.png") center bottom/100% auto no-repeat!important;
  }
  .signal-decision-template .signal-decision-grid,
  .signal-decision-template .signal-decision-grid>main,
  .signal-decision-template .signal-output-definition,
  .signal-decision-template .signal-output-definition>.section-heading,
  .signal-decision-template .signal-output-fields,
  .signal-decision-template .signal-calculation,
  .signal-decision-template .signal-buckets,
  .signal-decision-template .signal-decision-section,
  .signal-decision-template .signal-decision-section>.section-heading,
  .signal-decision-template .signal-outcome-card{
    background:#fff!important;
  }
  .signal-decision-template .signal-output-definition>.section-heading h3{
    font-size:1.6rem!important;
  }
  .signal-decision-template .signal-output-definition>.section-heading h3::before{content:none!important}
}

/* Minimal Signal experience: business value first, governed inputs second. */
.signal-minimal-template{background:#fff!important}
.signal-minimal-layout{padding:0!important;grid-template-columns:312px minmax(0,1fr)!important}
.signal-minimal-rail{padding:36px 24px!important;background:#f7f6f4!important;border-right:1px solid #e3e0dc!important}
.signal-sidebar-name{display:grid;gap:7px}.signal-sidebar-name>span{font-size:.8rem;font-weight:600;color:#625f5c}.signal-sidebar-name input{width:100%;box-sizing:border-box;padding:0;border:0;border-bottom:1px solid transparent;background:transparent;color:#161513;font:inherit;font-size:1.8rem!important;font-weight:700;line-height:1.18;overflow-wrap:anywhere}.signal-sidebar-name input:hover{border-bottom-color:#b5b0ab}.signal-sidebar-name input:focus{outline:2px solid #1685b5;outline-offset:3px;border-bottom-color:#1685b5;background:#fff}
.signal-minimal-rail dl{margin:26px 0!important}.signal-minimal-rail dt{font-size:.8rem!important}.signal-minimal-rail dd{font-size:1rem!important}.signal-minimal-rail>button,.signal-minimal-rail>a{display:block;width:100%;box-sizing:border-box;margin-top:14px}.signal-minimal-rail>a{color:#006f9d;text-decoration:none}.signal-minimal-rail .signal-segment-availability{display:block;margin-top:16px;color:#625f5c;line-height:1.45}
.signal-minimal-content{width:100%!important;padding:30px 40px 48px!important;max-width:none!important;background:#fff!important}
.signal-minimal-content>.signal-business-output-section{display:none}
.signal-minimal-section{padding:0 0 28px;margin:0 0 28px}.signal-minimal-section .section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.signal-minimal-section h3{margin:0!important;font-size:1.6rem!important}.signal-minimal-section .section-heading p{margin:7px 0 0;color:#625f5c;line-height:1.45;max-width:700px}
.signal-value-grid{display:grid;grid-template-columns:minmax(0,340px);gap:16px;margin-top:22px}.signal-value-grid label{display:grid;gap:6px;font-weight:600}.signal-value-grid input,.signal-value-grid select,.signal-value-grid textarea,.signal-minimal-assist textarea{width:100%;min-height:40px;box-sizing:border-box;padding:9px;border:1px solid #8c8985;background:#fff;font:inherit}.signal-value-grid textarea{min-height:82px;resize:vertical}
.signal-input-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:22px;border-top:1px solid #ded9d4;border-bottom:1px solid #ded9d4}.signal-input-overview>div{display:grid;gap:5px;padding:16px 18px;border-right:1px solid #ded9d4}.signal-input-overview>div:first-child{padding-left:0}.signal-input-overview>div:last-child{border-right:0}.signal-input-overview small{font-size:1rem;font-weight:600;letter-spacing:normal;color:#262321}.signal-input-overview b{font-size:1rem}.signal-input-overview span{color:#625f5c;line-height:1.4;overflow-wrap:anywhere}.signal-input-overview .row-edit-button{justify-self:start;margin-top:9px}
.signal-flow{display:grid;gap:12px;position:relative;margin:22px 0 0;padding:0;list-style:none}.signal-flow::before{content:"";position:absolute;top:28px;bottom:28px;left:18px;width:1px;background:#d8d3ce}.signal-flow-step{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);gap:14px;align-items:stretch}.signal-flow-number{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;border:1px solid #cbb9e8;border-radius:50%;background:#eee4fb;color:#432a67;font-size:1rem;font-weight:600}.signal-flow-card{min-width:0;padding:18px 24px;border:1px solid #ded9d4;border-radius:8px;background:#fff;box-shadow:0 1px 2px rgba(38,35,33,.04)}.signal-flow-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.signal-flow-card h3{display:flex;align-items:center;gap:8px;margin:0 0 4px!important;font-size:1.3rem!important}.signal-flow-card h3 [class^="oj-ux-ico-"]{color:#625f5c;font-size:1.05rem}.signal-flow-card header b{display:block;font-size:.95rem;font-weight:600}.signal-flow-card .row-edit-button{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.signal-flow-card .row-edit-button [class^="oj-ux-ico-"]{font-size:.9rem}.signal-flow-list{display:grid;gap:0;padding:0;list-style:none}.signal-flow-list li{display:flex;align-items:flex-start;gap:10px;min-width:0;padding:8px 0;border-top:1px solid #e5e1dc}.signal-flow-list li:first-child{border-top:0}.signal-flow-list li>span:last-child,.signal-data-list li>span{display:grid;gap:2px;min-width:0}.signal-flow-list b{font-size:.95rem}.signal-flow-list small,.signal-flow-detail{color:#625f5c;font-size:.92rem;line-height:1.42}.signal-data-list li>span{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%}.signal-data-list small{display:inline-flex;flex:0 0 auto;padding:4px 8px;border:1px solid #ded9d4;border-radius:4px;background:#f7f6f4;color:#413e3b}.signal-flow-detail{margin:14px 0 0}.signal-state-icon{display:grid;place-items:center;flex:0 0 auto;width:24px;height:24px;border:1px solid #cfcac4;border-radius:4px;background:#f7f6f4;color:#3a3836}.signal-state-icon.is-empty{color:#6d6965}.signal-state-icon.is-empty [class^="oj-ux-ico-"]{transform:rotate(45deg)}.signal-state-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));column-gap:24px}.signal-state-list li{border-top:0}.signal-input-summary .section-heading .row-edit-button{display:inline-flex;align-items:center;gap:7px}
.signal-minimal-assist{padding:20px 24px;background:#f7f5f2;border-radius:12px}.signal-minimal-assist h3{margin:0!important;font-size:1rem!important}.signal-minimal-assist p{max-width:720px;margin:6px 0 14px;color:#625f5c;line-height:1.45}.signal-minimal-assist textarea{min-height:86px;resize:vertical}.signal-minimal-assist>div{display:flex;justify-content:flex-end;margin-top:10px}
.signal-input-logic{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:28px}.signal-input-logic h4{margin:0 0 10px}.signal-input-logic ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.signal-input-logic li{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-top:1px solid #ded9d4}.signal-input-logic li span{color:#625f5c}.signal-input-logic label,.signal-input-transform label,.signal-input-buckets label{display:grid;gap:6px;font-weight:600}.signal-input-logic select,.signal-input-logic input,.signal-input-transform select,.signal-input-transform input,.signal-input-buckets select,.signal-input-buckets input{min-height:44px;box-sizing:border-box;width:100%;padding:9px 12px;border:1px solid #8c8985;background:#fff;font:inherit}.signal-input-calculation-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}.signal-input-logic .section-heading,.signal-input-buckets .section-heading{display:flex;justify-content:space-between;align-items:center}.signal-input-logic .section-heading h4,.signal-input-buckets .section-heading h4{margin:0}.signal-input-buckets{padding-top:8px}.signal-link-button{margin-top:12px;padding:0;border:0;background:transparent;color:#00688c;font:inherit;font-weight:600;cursor:pointer}.signal-link-button:hover{text-decoration:underline}#signal-assessment-dialog{width:min(900px,calc(100vw - 48px))}#signal-states-dialog{width:min(1120px,calc(100vw - 48px))}#signal-assessment-dialog .modal-form,#signal-states-dialog .modal-form{display:block;padding:32px 48px 38px}#signal-states-dialog #signal-bucket-list{display:grid;gap:12px;width:100%}.signal-manual-input-editor{display:grid;gap:18px;grid-column:1/-1}.signal-manual-input-add{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;padding-bottom:18px;border-bottom:1px solid #ded9d4}.signal-manual-input-add button{min-height:44px}.signal-manual-input-row{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(300px,1.3fr) auto;align-items:start;gap:20px;padding:18px 0;border-bottom:1px solid #ded9d4}.signal-manual-input-copy{display:grid;gap:3px;min-width:0;padding-top:2px}.signal-manual-input-row span{color:#625f5c;font-size:.9rem}.signal-manual-input-row>button{margin-top:2px}.signal-manual-condition{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(320px,1.35fr);align-items:start;gap:12px;min-width:0}.signal-manual-condition>label,.signal-manual-values>label{display:grid;gap:6px;font-weight:600;min-width:0}.signal-manual-condition select{min-height:44px;box-sizing:border-box;width:100%;padding:9px 12px;border:1px solid #8c8985;background:#fff;font:inherit}.signal-manual-values{display:grid;grid-template-columns:minmax(0,1fr);min-width:0}.signal-manual-values[hidden]{display:none}.signal-value-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.signal-value-picker button{min-height:44px}.signal-value-chip-list{display:flex;flex-wrap:wrap;gap:7px;width:100%;margin-top:8px}.signal-value-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:5px 8px 5px 10px;border:1px solid #8c8985;border-radius:16px;background:#f4f2f0;color:#262321;font-size:.88rem;font-weight:500}.signal-value-chip span{overflow:hidden;color:#262321;text-overflow:ellipsis;white-space:nowrap}.signal-value-chip button{display:inline-grid;place-items:center;width:18px;height:18px;padding:0;border:0;background:transparent;color:#55514e;font:inherit;font-size:1.15rem;line-height:1;cursor:pointer}.signal-value-chip button:hover{color:#ae562c}
@media(max-width:900px){.signal-minimal-layout{grid-template-columns:1fr!important;padding:0 20px 28px!important}.signal-minimal-rail{padding:24px 0!important;border-right:0!important;border-bottom:1px solid #ded9d4!important}.signal-minimal-content{padding:28px 0!important}.signal-value-grid,.signal-input-overview,.signal-input-calculation-fields,.signal-manual-input-row,.signal-manual-condition{grid-template-columns:1fr}.signal-input-overview>div{padding:14px 0;border-right:0;border-bottom:1px solid #ded9d4}.signal-input-overview>div:last-child{border-bottom:0}.signal-minimal-section .section-heading{flex-direction:column}.signal-flow-card{padding:16px}.signal-flow-card>header{align-items:flex-start;flex-direction:column;gap:12px}.signal-data-list li>span{align-items:flex-start;flex-direction:column;gap:5px}.signal-manual-input-row>button{justify-self:start}.signal-value-picker{grid-template-columns:1fr}}

/* Data comparisons need room for the field, operator, system values, and chips. */
#signal-decision-criteria-dialog{width:min(1200px,calc(100vw - 48px))}
#signal-decision-criteria-dialog .modal-form{display:block;padding:32px 48px 38px}

/* Application-wide heading scale: individual modules must not inflate h3s. */
h3:not(#fusion-context-heading-override){font-size:1.3rem!important}

/* App shell: keep the global header flat, with a usable left inset. */
#app>header{box-shadow:none!important;padding-left:20px!important}

/* Labels in the Signal flow are supporting labels, not page headings. */
/* One consistent third-level heading scale across the application. */
#app h3{font-size:1.2rem!important}
.signal-flow-card h3 [class^="oj-ux-ico-"]{font-size:.9rem}

/* Do not inherit the app-shell header treatment inside Signal flow cards. */
.signal-flow-card>header{box-shadow:none!important;padding-left:0!important}
.signal-flow-card h3 [class^="oj-ux-ico-"]{display:none}
.signal-flow-card header b{font-size:.9rem!important}

/* Signal-only treatment for the data selected in a signal. */
.signal-data-card .signal-data-card-header{align-items:flex-start}
.signal-data-card .signal-data-card-title{min-width:0}
.signal-data-card .signal-data-card-list{}
.signal-data-card .signal-data-item{padding:6px 24px 14px 0}
.signal-data-card .signal-data-item>span{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}
.signal-data-card .signal-data-item b{font-size:.95rem;font-weight:500!important}
.signal-data-card .signal-data-condition{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border:1px solid #ded9d4;border-radius:4px;background:#f7f6f4;color:#413e3b;font-size:.85rem!important;line-height:1.25;white-space:nowrap}
.signal-manual-input-copy b,.signal-manual-condition>label,.signal-manual-values>label{font-weight:500}
.signal-governed-logic-review{display:grid;gap:16px}.signal-governed-logic-review>p{margin:0;color:#625f5c;line-height:1.45}.signal-governed-logic-review article{position:relative;overflow:hidden;border:1px solid #d8d3cd;background:#fff;padding:20px 18px 14px}.signal-governed-logic-review article::before{position:absolute;top:0;right:0;left:0;height:7px;background:url("./assets/header-strip-plum.png") center/cover no-repeat;content:""}.signal-governed-logic-review article header{display:grid;gap:4px}.signal-governed-logic-review article small{color:#625f5c}.signal-governed-logic-review ul{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}.signal-governed-logic-review li{display:grid;gap:3px;padding-top:8px;border-top:1px solid #e3dfdb}.signal-governed-logic-review li span{color:#44403d}
.signal-manual-condition select,.signal-manual-values select{font-weight:500}
.signal-minimal-rail>#signal-save-output{width:fit-content}
@media(max-width:640px){.signal-data-card .signal-data-item>span{grid-template-columns:1fr;gap:6px}.signal-data-card .signal-data-condition{justify-self:start}}
