:root {
  --ink: #12223c;
  --muted: #63728b;
  --line: #e5eaf1;
  --paper: #fff;
  --canvas: #f4f7fa;
  --blue: #145dff;
  --cyan: #0cb8cf;
  --green: #15966c;
  --red: #cf4b5d;
  --shadow: 0 24px 65px rgba(21, 39, 71, 0.11);
}
* {
  box-sizing: border-box;
}
html {
  font-family:
    Inter,
    "DM Sans",
    ui-sans-serif,
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  color: var(--ink);
  background: var(--canvas);
  -webkit-font-smoothing: antialiased;
}
body {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(
      circle at 8% 0%,
      rgba(12, 184, 207, 0.08),
      transparent 28rem
    ),
    var(--canvas);
}
a {
  color: inherit;
}
.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;
}
.ow-topbar {
  height: 78px;
  max-width: 1240px;
  margin: auto;
  padding: 0 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ow-brand {
  display: flex;
  align-items: center;
  gap: 11px;
  text-decoration: none;
}
.ow-brand-mark {
  width: 40px;
  height: 40px;
  border-radius: 13px;
  background: linear-gradient(145deg, #102347, #1d66d6);
  display: grid;
  grid-template-columns: repeat(2, 7px);
  gap: 5px;
  place-content: center;
  box-shadow: 0 10px 25px rgba(20, 93, 255, 0.22);
}
.ow-brand-mark i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #fff;
}
.ow-brand > span:last-child {
  display: grid;
}
.ow-brand strong {
  font-size: 18px;
  letter-spacing: -0.4px;
}
.ow-brand small {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 1.8px;
  color: #75839a;
  font-weight: 800;
}
.ow-secure {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #65738a;
  font-size: 12px;
  font-weight: 700;
}
.ow-secure i,
.ow-live i,
.ow-eyebrow i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #1ecf8b;
  box-shadow: 0 0 0 5px rgba(30, 207, 139, 0.1);
}
.ow-footer {
  max-width: 1180px;
  margin: 60px auto 0;
  padding: 28px;
  display: flex;
  justify-content: space-between;
  border-top: 1px solid var(--line);
  font-size: 12px;
  color: #7d899c;
}
.ow-hero {
  max-width: 1180px;
  margin: 45px auto 0;
  padding: 72px;
  border-radius: 34px;
  background: linear-gradient(130deg, #0f203e 0%, #163e73 58%, #0b7181 120%);
  color: #fff;
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(300px, 0.65fr);
  gap: 70px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 34px 80px rgba(15, 32, 62, 0.2);
}
.ow-hero:before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  right: -190px;
  top: -210px;
  border: 80px solid rgba(255, 255, 255, 0.045);
}
.ow-hero-copy,
.ow-trust-card {
  position: relative;
  z-index: 1;
}
.ow-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 11px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  font-weight: 800;
  color: #65dceb;
}
.ow-hero h1 {
  max-width: 720px;
  margin: 22px 0 20px;
  font-size: clamp(38px, 5.2vw, 67px);
  line-height: 1.02;
  letter-spacing: -2.7px;
}
.ow-hero-copy > p {
  max-width: 690px;
  color: #cad6e8;
  font-size: 17px;
  line-height: 1.75;
}
.ow-hero-actions {
  display: flex;
  gap: 12px;
  margin-top: 34px;
  flex-wrap: wrap;
}
.ow-button {
  min-height: 48px;
  padding: 0 20px;
  border-radius: 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-size: 13px;
  font-weight: 800;
  transition: 0.2s ease;
}
.ow-button.primary {
  background: linear-gradient(135deg, #10bfd3, #1686ec);
  color: #fff;
  box-shadow: 0 14px 30px rgba(9, 162, 211, 0.25);
}
.ow-button.secondary {
  background: rgba(255, 255, 255, 0.09);
  border: 1px solid rgba(255, 255, 255, 0.16);
  color: #fff;
}
.ow-button:hover {
  transform: translateY(-2px);
}
.ow-entry-note {
  font-size: 12px !important;
  margin-top: 20px;
  color: #91a6c3 !important;
}
.ow-trust-card {
  padding: 26px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(15px);
  border-radius: 24px;
}
.ow-live {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #bdebdc;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 1.3px;
  font-weight: 800;
}
.ow-stat {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  padding: 21px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.ow-stat strong {
  font-size: 31px;
}
.ow-stat span {
  font-size: 11px;
  color: #aebed3;
}
.ow-trust-card ul {
  list-style: none;
  padding: 12px 0 0;
  margin: 0;
}
.ow-trust-card li {
  margin-top: 13px;
  color: #d4dfed;
  font-size: 12px;
}
.ow-trust-card li span {
  color: #3ce0ad;
  margin-right: 8px;
}
.ow-feature-grid {
  max-width: 1180px;
  margin: 24px auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.ow-feature-grid article {
  padding: 30px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
}
.ow-feature-grid article > span {
  font-size: 11px;
  color: var(--cyan);
  font-weight: 900;
  letter-spacing: 1px;
}
.ow-feature-grid h2 {
  margin: 16px 0 8px;
  font-size: 17px;
}
.ow-feature-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}
.ow-wall-shell {
  max-width: 1180px;
  margin: 42px auto;
  padding: 0 28px;
}
.ow-wall-heading {
  padding: 42px 46px;
  border-radius: 27px;
  background: linear-gradient(135deg, #102343, #164e85);
  color: #fff;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
}
.ow-wall-heading h1 {
  font-size: 42px;
  margin: 13px 0 8px;
  letter-spacing: -1.5px;
}
.ow-wall-heading p {
  margin: 0;
  color: #c7d5e8;
  max-width: 650px;
  line-height: 1.6;
}
.ow-session-pill {
  padding: 13px 18px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.1);
  font-size: 12px;
  white-space: nowrap;
}
.ow-session-pill span {
  font-size: 20px;
  font-weight: 900;
  margin-right: 5px;
}
.ow-offer-toolbar {
  margin: 23px 0 17px;
  display: grid;
  grid-template-columns: 1fr 210px;
  gap: 12px;
}
.ow-offer-toolbar input,
.ow-offer-toolbar select {
  width: 100%;
  height: 48px;
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 13px;
  padding: 0 16px;
  color: var(--ink);
  outline: none;
}
.ow-offer-toolbar input:focus,
.ow-offer-toolbar select:focus {
  border-color: #6aa4ff;
  box-shadow: 0 0 0 4px rgba(20, 93, 255, 0.08);
}
.ow-offer-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.ow-offer-card {
  min-width: 0;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 21px;
  padding: 22px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 7px 25px rgba(25, 45, 77, 0.045);
  transition: 0.2s ease;
}
.ow-offer-card:hover {
  border-color: #c9d6e8;
  transform: translateY(-3px);
  box-shadow: var(--shadow);
}
.ow-offer-card.featured {
  border-color: #8ddfe9;
  box-shadow: inset 0 3px 0 #14b7ce;
}
.ow-offer-card[hidden] {
  display: none;
}
.ow-offer-card header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ow-offer-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: #eaf5ff;
  color: #1357be;
  font-weight: 900;
  font-size: 12px;
}
.ow-featured {
  padding: 6px 9px;
  border-radius: 20px;
  background: #e6faf7;
  color: #087d60;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  font-weight: 900;
}
.ow-offer-card h2 {
  font-size: 18px;
  line-height: 1.35;
  margin: 18px 0 5px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ow-offer-client {
  margin: 0;
  color: #8a96a8;
  font-size: 11px;
}
.ow-offer-description {
  display: -webkit-box;
  min-height: 38px;
  margin: 10px 0 0;
  overflow: hidden;
  color: #64748a;
  font-size: 11px;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.ow-offer-meta {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
  margin: 21px 0;
}
.ow-offer-meta span {
  padding: 10px 7px;
  border-radius: 11px;
  background: #f5f8fb;
  display: grid;
  gap: 3px;
}
.ow-offer-meta small {
  font-size: 8px;
  text-transform: uppercase;
  letter-spacing: 0.7px;
  color: #93a0b2;
  font-weight: 800;
}
.ow-offer-meta strong {
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ow-offer-meta strong em {
  color: #64748a;
  font-size: 8px;
  font-style: normal;
  text-transform: uppercase;
}
.ow-offer-tags {
  min-height: 25px;
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}
.ow-offer-tags span {
  padding: 5px 8px;
  border: 1px solid #e7ebf0;
  border-radius: 20px;
  color: #69768a;
  font-size: 9px;
}
.ow-start {
  height: 43px;
  margin-top: 20px;
  border-radius: 12px;
  background: #112d54;
  color: #fff;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 12px;
  font-weight: 800;
}
.ow-start:hover {
  background: #145dff;
}
.ow-empty,
.ow-no-results {
  padding: 75px 25px;
  text-align: center;
  border: 1px dashed #cbd5e1;
  border-radius: 23px;
  background: #fff;
  color: var(--muted);
}
.ow-empty > span {
  font-size: 34px;
}
.ow-empty h2 {
  color: var(--ink);
}
.ow-result-shell {
  min-height: calc(100vh - 180px);
  padding: 55px 24px;
  display: grid;
  place-items: center;
}
.ow-result-card {
  width: min(600px, 100%);
  padding: 48px;
  border-radius: 27px;
  background: #fff;
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
  text-align: center;
}
.ow-result-icon {
  width: 76px;
  height: 76px;
  margin: 0 auto 25px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #eaf2ff;
  color: #1b61d5;
  font-size: 32px;
  font-weight: 900;
}
.ow-result-card.success .ow-result-icon {
  background: #e8f8f1;
  color: var(--green);
}
.ow-result-card.no-credit .ow-result-icon {
  background: #fff0f2;
  color: var(--red);
}
.ow-result-card h1 {
  margin: 14px 0 10px;
  font-size: 32px;
  letter-spacing: -1px;
}
.ow-result-card > p {
  margin: 0 auto;
  color: var(--muted);
  line-height: 1.65;
  max-width: 460px;
}
.ow-result-card dl {
  margin: 30px 0;
  text-align: left;
  border: 1px solid var(--line);
  border-radius: 16px;
  overflow: hidden;
}
.ow-result-card dl div {
  padding: 13px 15px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid var(--line);
}
.ow-result-card dl div:first-child {
  border-top: 0;
}
.ow-result-card dt {
  color: #8995a7;
  font-size: 11px;
}
.ow-result-card dd {
  margin: 0;
  text-align: right;
  font-size: 11px;
  font-weight: 800;
  max-width: 65%;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mono {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}
.wide {
  width: 100%;
}
.ow-result-card .secondary {
  color: var(--ink);
  border-color: var(--line);
  background: #f7f9fb;
}

/* Phase 5: placement-owned embed themes and SDK surfaces */
.ow-embed-body {
  --ow-surface: #f4f7fb;
  --ow-card: #ffffff;
  --ow-card-soft: #f5f8fb;
  --ow-text: #12233f;
  --ow-subtle: #6f7f95;
  --ow-border: #dce5ef;
  --ow-heading-from: #102343;
  --ink: var(--ow-text);
  --muted: var(--ow-subtle);
  --line: var(--ow-border);
  min-height: 100vh;
  color: var(--ow-text);
  background: var(--ow-surface);
}
.ow-embed-stage { min-height: 100vh; overflow: hidden; }
.ow-embed-body .ow-wall-shell { margin-top: 24px; margin-bottom: 32px; }
.ow-embed-body .ow-wall-heading { background: linear-gradient(135deg, var(--ow-heading-from), var(--ow-accent)); }
.ow-embed-body .ow-offer-card,
.ow-embed-body .ow-empty,
.ow-embed-body .ow-no-results,
.ow-embed-body .ow-result-card,
.ow-embed-body .ow-respondent-card,
.ow-embed-body .ow-profile-completion { border-color: var(--ow-border); background: var(--ow-card); color: var(--ow-text); }
.ow-embed-body .ow-offer-toolbar input,
.ow-embed-body .ow-offer-toolbar select,
.ow-embed-body .ow-respondent-form input:not([type="checkbox"]),
.ow-embed-body .ow-respondent-form select,
.ow-embed-body .ow-feedback-card input,
.ow-embed-body .ow-feedback-card select,
.ow-embed-body .ow-feedback-card textarea { border-color: var(--ow-border); background: var(--ow-card); color: var(--ow-text); }
.ow-embed-body .ow-offer-meta span,
.ow-embed-body .ow-feedback-card { border-color: var(--ow-border); background: var(--ow-card-soft); }
.ow-embed-body .ow-start,
.ow-embed-body .ow-respondent-form button,
.ow-embed-body .ow-button.primary,
.ow-embed-body .ow-router-actions a { background: var(--ow-accent); }
.ow-embed-body .ow-start:hover,
.ow-embed-body .ow-respondent-form button:hover { filter: brightness(.9); }
.ow-embed-body .ow-offer-card.featured { border-color: var(--ow-accent); box-shadow: inset 0 3px 0 var(--ow-accent); }
.ow-embed-body .ow-offer-icon { color: var(--ow-accent); }
.ow-embed-body[data-ow-theme="dark"] {
  --ow-surface: #0b1220;
  --ow-card: #111c2d;
  --ow-card-soft: #172438;
  --ow-text: #edf4ff;
  --ow-subtle: #9badc5;
  --ow-border: #293a51;
  --ow-heading-from: #07111f;
  color-scheme: dark;
}
.ow-embed-body[data-ow-theme="dark"] .ow-offer-client,
.ow-embed-body[data-ow-theme="dark"] .ow-offer-meta small,
.ow-embed-body[data-ow-theme="dark"] .ow-offer-tags span,
.ow-embed-body[data-ow-theme="dark"] .ow-profile-completion > small,
.ow-embed-body[data-ow-theme="dark"] .ow-respondent-form label:not(.ow-respondent-consent),
.ow-embed-body[data-ow-theme="dark"] .ow-respondent-privacy { color: var(--ow-subtle); }
.ow-embed-body[data-ow-theme="dark"] .ow-offer-tags span,
.ow-embed-body[data-ow-theme="dark"] .ow-why-matched,
.ow-embed-body[data-ow-theme="dark"] .ow-result-card dl { border-color: var(--ow-border); background: var(--ow-card-soft); }
@media (prefers-color-scheme: dark) {
  .ow-embed-body[data-ow-theme="auto"] {
    --ow-surface: #0b1220;
    --ow-card: #111c2d;
    --ow-card-soft: #172438;
    --ow-text: #edf4ff;
    --ow-subtle: #9badc5;
    --ow-border: #293a51;
    --ow-heading-from: #07111f;
    color-scheme: dark;
  }
  .ow-embed-body[data-ow-theme="auto"] .ow-offer-client,
  .ow-embed-body[data-ow-theme="auto"] .ow-offer-meta small,
  .ow-embed-body[data-ow-theme="auto"] .ow-offer-tags span,
  .ow-embed-body[data-ow-theme="auto"] .ow-profile-completion > small,
  .ow-embed-body[data-ow-theme="auto"] .ow-respondent-form label:not(.ow-respondent-consent),
  .ow-embed-body[data-ow-theme="auto"] .ow-respondent-privacy { color: var(--ow-subtle); }
}

.ow-growth-design-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:20px; }
.ow-growth-design-grid > label:not(.ow-ou-checkbox) { display:grid; gap:7px; color:#555d6a; font-size:11px; font-weight:750; }
.ow-growth-design-grid select,
.ow-growth-design-grid input[type="text"] { width:100%; min-height:42px; border:1px solid #dfe2e8; border-radius:7px; padding:0 11px; color:#343942; background:#fff; }
.ow-growth-design-grid input[type="color"] { width:100%; height:42px; border:1px solid #dfe2e8; border-radius:7px; padding:4px; background:#fff; cursor:pointer; }
.ow-growth-design-grid .wide { grid-column:1 / -1; }
.ow-growth-sdk-actions,
.ow-growth-download { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:14px 0; padding:13px 15px; border:1px solid #e3e5e9; border-radius:8px; background:#fafbfc; }
.ow-growth-sdk-actions code,
.ow-growth-download code { min-width:0; overflow:hidden; color:#6b7280; text-overflow:ellipsis; white-space:nowrap; }
.ow-growth-sdk-actions a,
.ow-growth-download a { flex:0 0 auto; border-radius:6px; padding:9px 12px; color:#fff; background:#145dff; text-decoration:none; font-size:10px; font-weight:800; }
.ow-growth-wrapper-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:16px; }
.ow-growth-wrapper-grid a { display:grid; gap:5px; border:1px solid #e2e5ea; border-radius:9px; padding:17px; color:#303640; background:#fafbfc; text-decoration:none; }
.ow-growth-wrapper-grid a:hover { border-color:#f36b21; }
.ow-growth-wrapper-grid strong { font-size:12px; }
.ow-growth-wrapper-grid span { color:#7d8490; font-size:10px; }
@media(max-width:700px){.ow-growth-design-grid,.ow-growth-wrapper-grid{grid-template-columns:1fr}.ow-growth-design-grid .wide{grid-column:auto}.ow-growth-sdk-actions,.ow-growth-download{align-items:stretch;flex-direction:column}.ow-growth-sdk-actions code,.ow-growth-download code{width:100%;white-space:normal;overflow-wrap:anywhere}}
.ow-result-card.router-active,
.ow-result-card:has(.ow-feedback-grid) { width: min(780px, 100%); }
.ow-profiler-reward-banner,
.ow-partial-reward { display: flex; align-items: center; gap: 13px; border: 1px solid #a6dfca; border-radius: 16px; background: #ecfaf4; color: #087454; }
.ow-profiler-reward-banner { margin-bottom: 18px; padding: 15px 18px; }
.ow-profiler-reward-banner > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: #0c916a; color: #fff; font-weight: 900; }
.ow-profiler-reward-banner p { margin: 3px 0 0; color: #397c69; font-size: 12px; }
.ow-partial-reward { margin-top: 22px; padding: 14px 16px; display: grid; grid-template-columns: 1fr auto; text-align: left; }
.ow-partial-reward span { font-size: 18px; font-weight: 900; }
.ow-partial-reward small { grid-column: 1 / -1; color: #4d806f; }
.ow-router-panel { margin-top: 24px; padding: 22px; border: 1px solid #b7d2ff; border-radius: 18px; background: linear-gradient(145deg, #f4f8ff, #edf8fb); text-align: left; }
.ow-router-panel > span,
.ow-feedback-card > span { color: #1764d4; font-size: 10px; font-weight: 900; letter-spacing: .9px; text-transform: uppercase; }
.ow-router-panel h2,
.ow-feedback-card h2 { margin: 7px 0; font-size: 18px; }
.ow-router-panel p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.ow-router-progress { height: 7px; margin: 17px 0 10px; overflow: hidden; border-radius: 999px; background: #d8e4f4; }
.ow-router-progress i { display: block; width: 100%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #145dff, #15a6a0); transition: width 1s linear; }
.ow-router-actions { margin-top: 16px; display: flex; gap: 10px; }
.ow-router-actions a,
.ow-router-actions button,
.ow-feedback-card button { min-height: 40px; padding: 0 15px; border: 1px solid #145dff; border-radius: 10px; background: #145dff; color: #fff; font: inherit; font-size: 11px; font-weight: 850; cursor: pointer; text-decoration: none; }
.ow-router-actions button { border-color: #c7d4e6; background: #fff; color: var(--ink); }
.ow-router-panel.paused .ow-router-progress { opacity: .45; }
.ow-feedback-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 22px 0; text-align: left; }
.ow-feedback-card { padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: #fafcfe; }
.ow-feedback-card form { display: grid; gap: 9px; margin-top: 13px; }
.ow-feedback-card select,
.ow-feedback-card input,
.ow-feedback-card textarea { width: 100%; box-sizing: border-box; border: 1px solid var(--line); border-radius: 10px; background: #fff; padding: 10px 11px; color: var(--ink); font: inherit; font-size: 12px; }
.ow-feedback-card details { margin-top: 13px; }
.ow-feedback-card summary { color: #145dff; cursor: pointer; font-size: 12px; font-weight: 800; }
.ow-case-status { color: var(--muted); font-size: 11px; }
@media (max-width: 900px) {
  .ow-hero {
    margin: 20px;
    grid-template-columns: 1fr;
    padding: 45px;
    gap: 35px;
  }
  .ow-feature-grid {
    margin: 16px 20px;
    grid-template-columns: 1fr;
  }
  .ow-offer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ow-wall-heading {
    align-items: flex-start;
    flex-direction: column;
  }
}
@media (max-width: 620px) {
  .ow-topbar {
    height: 68px;
    padding: 0 18px;
  }
  .ow-secure {
    display: none;
  }
  .ow-footer {
    margin-top: 30px;
    display: grid;
    gap: 7px;
    padding: 22px 18px;
  }
  .ow-hero {
    padding: 30px 24px;
    border-radius: 24px;
  }
  .ow-hero h1 {
    font-size: 38px;
    letter-spacing: -1.5px;
  }
  .ow-trust-card {
    padding: 21px;
  }
  .ow-wall-shell {
    margin-top: 18px;
    padding: 0 14px;
  }
  .ow-wall-heading {
    padding: 28px 22px;
    border-radius: 20px;
  }
  .ow-wall-heading h1 {
    font-size: 32px;
  }
  .ow-offer-toolbar {
    grid-template-columns: 1fr;
  }
  .ow-offer-grid {
    grid-template-columns: 1fr;
  }
  .ow-offer-card {
    padding: 20px;
  }
  .ow-result-card {
    padding: 34px 22px;
  }
  .ow-result-card dl div {
    display: grid;
    gap: 5px;
  }
  .ow-result-card dd {
    max-width: 100%;
    text-align: left;
  }
  .ow-feedback-grid { grid-template-columns: 1fr; }
  .ow-router-actions { display: grid; }
}

.ow-portal-nav {
  display: flex;
  align-items: center;
  gap: 14px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}
.ow-portal-nav form {
  margin: 0;
}
.ow-portal-nav button {
  min-height: 36px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  color: var(--ink);
  padding: 0 13px;
  cursor: pointer;
  font-weight: 750;
}
.ow-messages {
  width: min(1124px, calc(100% - 32px));
  margin: 18px auto 0;
}
.ow-messages div {
  padding: 13px 16px;
  border: 1px solid #bbd7ff;
  border-radius: 13px;
  background: #edf5ff;
  color: #174d96;
  font-size: 13px;
}
.ow-messages .success {
  border-color: #a8e0ca;
  background: #eaf8f2;
  color: #087653;
}
.ow-messages .error {
  border-color: #f1bbc3;
  background: #fff0f2;
  color: #a62d40;
}
.ow-publisher-shell {
  max-width: 1180px;
  margin: 34px auto 0;
  padding: 0 28px;
}
.ow-publisher-heading {
  padding: 35px 40px;
  border-radius: 26px;
  background: linear-gradient(135deg, #102343, #164e85);
  color: #fff;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
}
.ow-publisher-heading h1 {
  margin: 12px 0 5px;
  font-size: 36px;
  letter-spacing: -1.2px;
}
.ow-publisher-heading p {
  margin: 0;
  color: #c7d5e8;
}
.ow-publisher-heading .ow-session-pill strong {
  margin-left: 5px;
}
.ow-wallet-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0 14px;
}
.ow-wallet-grid article {
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  display: grid;
  gap: 7px;
}
.ow-wallet-grid article.primary {
  border-color: #a7dce5;
  background: linear-gradient(145deg, #102e56, #126c7d);
  color: #fff;
}
.ow-wallet-grid small {
  color: #8090a6;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  font-weight: 850;
}
.ow-wallet-grid .primary small,
.ow-wallet-grid .primary span {
  color: #b9dce3;
}
.ow-wallet-grid strong {
  font-size: 24px;
  letter-spacing: -0.7px;
}
.ow-wallet-grid span {
  color: var(--muted);
  font-size: 11px;
}
.ow-publisher-stats {
  display: flex;
  gap: 7px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.ow-publisher-stats span {
  padding: 9px 13px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
  font-size: 11px;
}
.ow-publisher-stats strong {
  color: var(--ink);
  margin-right: 4px;
}
.ow-publisher-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.75fr);
  gap: 14px;
}
.ow-panel {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
  overflow: hidden;
}
.ow-panel > header {
  padding: 20px 22px 14px;
}
.ow-panel h2 {
  margin: 9px 0 0;
  font-size: 18px;
}
.ow-table-wrap {
  overflow-x: auto;
}
.ow-panel table {
  width: 100%;
  border-collapse: collapse;
  font-size: 11px;
}
.ow-panel th,
.ow-panel td {
  padding: 12px 14px;
  border-top: 1px solid var(--line);
  text-align: left;
  white-space: nowrap;
}
.ow-panel th {
  color: #8996a9;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.6px;
}
.ow-money {
  color: var(--green);
  font-weight: 850;
}
.ow-money.negative {
  color: var(--red);
}
.ow-status {
  display: inline-flex;
  padding: 5px 8px;
  border-radius: 999px;
  background: #edf4ff;
  color: #195bb7;
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
}
.ow-status.credit,
.ow-status.paid,
.ow-status.approved {
  background: #e7f8f1;
  color: #087654;
}
.ow-status.reversal,
.ow-status.rejected,
.ow-status.canceled {
  background: #fff0f2;
  color: #ab3043;
}
.ow-table-empty {
  padding: 38px !important;
  text-align: center !important;
  color: var(--muted);
}
.ow-withdrawal-panel > p {
  margin: -5px 22px 17px;
  color: var(--muted);
  font-size: 11px;
}
.ow-withdrawal-form {
  padding: 0 22px 22px;
  display: grid;
  gap: 13px;
}
.ow-withdrawal-form label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
}
.ow-withdrawal-form input,
.ow-withdrawal-form select,
.ow-withdrawal-form textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: #f9fbfd;
  color: var(--ink);
  padding: 11px 12px;
  font: inherit;
  font-size: 12px;
  resize: vertical;
}
.ow-withdrawal-form input:focus,
.ow-withdrawal-form select:focus,
.ow-withdrawal-form textarea:focus {
  outline: 0;
  border-color: #6aa4ff;
  box-shadow: 0 0 0 4px rgba(20, 93, 255, 0.08);
}
.ow-button:disabled {
  cursor: not-allowed;
  opacity: 0.5;
  transform: none;
}
.ow-payout-history {
  margin-top: 14px;
}
@media (max-width: 900px) {
  .ow-wallet-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ow-publisher-layout {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 620px) {
  .ow-portal-nav > span {
    display: none;
  }
  .ow-publisher-shell {
    margin-top: 18px;
    padding: 0 14px;
  }
  .ow-publisher-heading {
    padding: 27px 22px;
    align-items: flex-start;
    flex-direction: column;
  }
  .ow-publisher-heading h1 {
    font-size: 30px;
  }
  .ow-wallet-grid {
    grid-template-columns: 1fr;
  }
}

/* Supplier workspace */
.ow-supplier-body {
  background: #f2f6fa;
}
.ow-supplier-app {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 252px minmax(0, 1fr);
}
.ow-supplier-sidebar {
  min-width: 0;
  position: sticky;
  top: 0;
  height: 100vh;
  padding: 24px 18px 18px;
  display: flex;
  flex-direction: column;
  background: linear-gradient(180deg, #102f57 0%, #0b2445 100%);
  color: #fff;
  overflow-y: auto;
}
.ow-supplier-brand {
  padding: 0 8px 24px;
  display: flex;
  align-items: center;
  gap: 11px;
  color: #fff;
  text-decoration: none;
}
.ow-supplier-brand .ow-brand-mark {
  width: 39px;
  height: 39px;
  border-radius: 12px;
  background: linear-gradient(145deg, #23c2ce, #226df2);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.18);
}
.ow-supplier-brand strong,
.ow-supplier-brand small {
  display: block;
}
.ow-supplier-brand strong {
  font-size: 16px;
}
.ow-supplier-brand small {
  margin-top: 2px;
  color: #96b1d0;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}
.ow-supplier-nav {
  display: grid;
  gap: 4px;
}
.ow-supplier-nav a {
  min-height: 43px;
  padding: 0 12px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  gap: 11px;
  color: #b9c9dc;
  text-decoration: none;
  font-size: 12px;
  font-weight: 750;
  transition: background .16s ease, color .16s ease, transform .16s ease;
}
.ow-supplier-nav a > span {
  width: 24px;
  height: 24px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 7px;
  display: grid;
  place-items: center;
  color: #84a5c9;
  font-size: 14px;
}
.ow-supplier-nav a:hover,
.ow-supplier-nav a.active {
  background: rgba(255,255,255,.1);
  color: #fff;
}
.ow-supplier-nav a.active {
  box-shadow: inset 3px 0 #22c2cf;
}
.ow-supplier-nav a.active > span {
  border-color: rgba(44,208,217,.38);
  background: rgba(35,194,206,.14);
  color: #59dce3;
}
.ow-supplier-account {
  margin-top: auto;
  padding: 17px 8px 0;
  border-top: 1px solid rgba(255,255,255,.1);
}
.ow-supplier-account > div {
  display: flex;
  align-items: center;
  gap: 9px;
}
.ow-supplier-account > div > span {
  width: 33px;
  height: 33px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: #e9f8fa;
  color: #0c6574;
  font-weight: 900;
}
.ow-supplier-account p,
.ow-supplier-account strong,
.ow-supplier-account small {
  min-width: 0;
  margin: 0;
  display: block;
}
.ow-supplier-account p {
  overflow: hidden;
}
.ow-supplier-account strong {
  overflow: hidden;
  color: #fff;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ow-supplier-account small {
  margin-top: 2px;
  color: #83a0c0;
  font-size: 9px;
}
.ow-supplier-account form {
  margin-top: 12px;
}
.ow-supplier-account button {
  width: 100%;
  min-height: 35px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 10px;
  background: rgba(255,255,255,.06);
  color: #d3dfec;
  cursor: pointer;
  font-size: 10px;
  font-weight: 800;
}
.ow-supplier-stage {
  min-width: 0;
}
.ow-supplier-toolbar {
  min-height: 72px;
  padding: 0 30px;
  border-bottom: 1px solid #dfe7ee;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(14px);
}
.ow-supplier-toolbar small,
.ow-supplier-toolbar strong {
  display: block;
}
.ow-supplier-toolbar small {
  color: #8a98aa;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .8px;
  text-transform: uppercase;
}
.ow-supplier-toolbar strong {
  margin-top: 4px;
  color: #19314f;
  font-size: 13px;
}
.ow-supplier-toolbar > a {
  min-height: 38px;
  padding: 0 14px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  background: #123d70;
  color: #fff;
  text-decoration: none;
  font-size: 11px;
  font-weight: 850;
  box-shadow: 0 8px 20px rgba(18,61,112,.16);
}
.ow-supplier-main {
  min-width: 0;
  padding: 28px;
}
.ow-supplier-main > .ow-messages {
  width: 100%;
  margin: 0 0 16px;
}
.ow-supplier-main .ow-publisher-shell,
.ow-portal-page {
  max-width: 1460px;
  margin: 0 auto;
  padding: 0;
}
.ow-supplier-main .ow-publisher-heading {
  padding: 30px 34px;
}
.ow-page-heading {
  margin-bottom: 18px;
  padding: 27px 30px;
  border: 1px solid #dce5ec;
  border-radius: 22px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  background: #fff;
  box-shadow: 0 12px 35px rgba(28,48,72,.06);
}
.ow-page-heading h1 {
  margin: 10px 0 6px;
  color: #142b49;
  font-size: 31px;
  letter-spacing: -.8px;
}
.ow-page-heading p {
  margin: 0;
  color: #6e7f92;
  font-size: 12px;
}
.ow-page-metrics {
  display: flex;
  gap: 8px;
}
.ow-page-metrics span {
  min-width: 82px;
  padding: 10px 12px;
  border: 1px solid #dce5ec;
  border-radius: 12px;
  color: #8795a6;
  font-size: 9px;
  font-weight: 800;
  text-align: center;
  text-transform: uppercase;
}
.ow-page-metrics strong {
  margin-bottom: 2px;
  display: block;
  color: #153150;
  font-size: 17px;
}
.ow-placement-builder,
.ow-placement-list {
  border: 1px solid #dce5ec;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 12px 35px rgba(28,48,72,.05);
  overflow: hidden;
}
.ow-placement-builder > header,
.ow-placement-list > header {
  padding: 22px 26px;
  border-bottom: 1px solid #e5ebf0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.ow-placement-builder header small,
.ow-placement-list header small {
  color: #1594a1;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .8px;
  text-transform: uppercase;
}
.ow-placement-builder h2,
.ow-placement-list h2 {
  margin: 6px 0 0;
  color: #17304d;
  font-size: 18px;
}
.ow-placement-builder > header > span,
.ow-coming-pill {
  padding: 7px 10px;
  border-radius: 999px;
  background: #e8f8f4;
  color: #08745b;
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
}
.ow-placement-form {
  padding: 26px;
}
.ow-placement-form-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px 16px;
}
.ow-placement-form-grid label {
  min-width: 0;
  display: grid;
  gap: 7px;
  color: #5d7189;
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
}
.ow-placement-form input,
.ow-placement-form select,
.ow-placement-form textarea {
  width: 100%;
  min-height: 45px;
  border: 1px solid #d5dfe8;
  border-radius: 11px;
  background: #fbfcfe;
  color: #1c3553;
  padding: 0 13px;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  text-transform: none;
}
.ow-placement-form textarea {
  min-height: 88px;
  padding-block: 12px;
  resize: vertical;
}
.ow-placement-form input:focus,
.ow-placement-form select:focus,
.ow-placement-form textarea:focus {
  outline: 0;
  border-color: #27a6b4;
  box-shadow: 0 0 0 4px rgba(39,166,180,.1);
}
.ow-form-span-2 {
  grid-column: span 2;
}
.ow-placement-form label > small {
  color: #8a98a8;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.45;
  text-transform: none;
}
.ow-check-field {
  min-height: 45px;
  align-content: center;
  grid-template-columns: 18px 1fr;
  padding: 0 13px;
  border: 1px solid #d5dfe8;
  border-radius: 11px;
  background: #fbfcfe;
}
.ow-check-field input {
  width: 16px;
  min-height: 16px;
  margin: 0;
}
.ow-check-field > span {
  color: #1c3553;
  font-size: 11px;
  text-transform: none;
}
.ow-placement-form .errorlist,
.ow-field-errors .errorlist {
  margin: 0;
  padding: 0;
  list-style: none;
  color: #b33046;
  font-size: 9px;
  font-weight: 750;
  text-transform: none;
}
.ow-form-wide {
  margin-bottom: 16px;
}
.ow-variable-mapping {
  margin: 26px 0 0;
  padding: 25px 0 0;
  border: 0;
  border-top: 1px solid #e3e9ef;
}
.ow-variable-mapping legend {
  width: 100%;
  margin-bottom: 19px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}
.ow-variable-mapping legend span {
  color: #1a3858;
  font-size: 16px;
  font-weight: 850;
}
.ow-variable-mapping legend small {
  color: #8795a5;
  font-size: 10px;
}
.ow-placement-submit {
  margin-top: 25px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.ow-placement-submit p {
  margin: 0;
  color: #7b899a;
  font-size: 10px;
}
.ow-placement-submit button {
  min-height: 43px;
  border: 0;
  border-radius: 11px;
  background: #123d70;
  color: #fff;
  padding: 0 18px;
  cursor: pointer;
  font-size: 11px;
  font-weight: 850;
  box-shadow: 0 8px 20px rgba(18,61,112,.18);
}
.ow-placement-submit-actions,
.ow-placement-head-actions,
.ow-placement-controls,
.ow-placement-controls form {
  display: flex;
  align-items: center;
  gap: 8px;
}
.ow-placement-submit-actions a,
.ow-placement-head-actions a {
  color: #17677c;
  font-size: 10px;
  font-weight: 800;
  text-decoration: none;
}
.ow-placement-list {
  margin-top: 18px;
}
.ow-placement-card {
  padding: 24px 26px;
  border-top: 1px solid #e5ebf0;
}
.ow-placement-list > header + .ow-placement-card {
  border-top: 0;
}
.ow-placement-card > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}
.ow-placement-platform {
  color: #168d99;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .7px;
  text-transform: uppercase;
}
.ow-placement-card h3 {
  margin: 5px 0 4px;
  color: #17314f;
  font-size: 18px;
}
.ow-placement-card header p {
  margin: 0;
  color: #7c8a9b;
  font-size: 10px;
}
.ow-placement-state {
  padding: 7px 10px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #778596;
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
}
.ow-placement-state.active {
  background: #e8f8f2;
  color: #087654;
}
.ow-placement-state.paused {
  background: #fff4db;
  color: #8b5d00;
}
.ow-placement-state.archived {
  background: #f3f0f5;
  color: #74677b;
}
.ow-placement-head-actions {
  align-items: flex-end;
  flex-direction: column;
}
.ow-placement-card-stats {
  margin: 18px 0;
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}
.ow-placement-card-stats span {
  padding: 8px 10px;
  border: 1px solid #dfe7ee;
  border-radius: 9px;
  color: #8491a1;
  font-size: 9px;
}
.ow-placement-card-stats strong {
  margin-right: 4px;
  color: #17314f;
}
.ow-placement-controls {
  margin: -5px 0 18px;
  justify-content: space-between;
}
.ow-placement-controls button,
.ow-postback-panel button {
  min-height: 31px;
  border: 1px solid #cfdbe6;
  border-radius: 8px;
  background: #fff;
  color: #315b78;
  padding: 0 10px;
  cursor: pointer;
  font-size: 9px;
  font-weight: 800;
}
.ow-placement-controls button.primary {
  border-color: #1c7d87;
  background: #1c7d87;
  color: #fff;
}
.ow-placement-controls button.danger {
  color: #a33b4c;
}
.ow-placement-controls > span {
  color: #8795a4;
  font-size: 9px;
}
.ow-placement-controls code {
  color: #4b6278;
  font-size: 8px;
}
.ow-iframe-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
  gap: 14px;
}
.ow-code-panel,
.ow-iframe-preview,
.ow-postback-panel {
  min-width: 0;
  padding: 17px;
  border: 1px solid #dfe7ee;
  border-radius: 14px;
  background: #f8fafc;
}
.ow-code-panel > div,
.ow-iframe-preview > div,
.ow-postback-panel > div:first-child {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.ow-code-panel h4,
.ow-iframe-preview h4,
.ow-postback-panel h4 {
  margin: 0;
  color: #1d3754;
  font-size: 11px;
}
.ow-placement-lower-grid {
  margin-top: 14px;
}
.ow-postback-panel > div:first-child > span {
  padding: 5px 8px;
  border-radius: 999px;
  background: #e8f8f2;
  color: #087654;
  font-size: 8px;
  font-weight: 800;
  text-transform: uppercase;
}
.ow-postback-panel p,
.ow-placement-offline p {
  color: #748396;
  font-size: 9px;
  line-height: 1.6;
}
.ow-postback-panel code {
  color: #0d6977;
  font: 9px Consolas, monospace;
}
.ow-secret-reveal {
  margin: 12px 0;
  padding: 12px;
  border: 1px solid #f0d68b;
  border-radius: 10px;
  display: grid !important;
  gap: 8px !important;
  background: #fffae9;
}
.ow-secret-reveal strong {
  color: #785700;
  font-size: 9px;
}
.ow-secret-reveal textarea {
  width: 100%;
  border: 1px solid #dfcb93;
  border-radius: 8px;
  padding: 9px;
  resize: none;
  font: 9px/1.5 Consolas, monospace;
}
.ow-secret-reveal button {
  justify-self: start;
}
.ow-placement-offline {
  padding: 18px;
  border: 1px dashed #ccd7e1;
  border-radius: 12px;
  background: #f8fafc;
}
.ow-placement-offline strong {
  color: #344b62;
  font-size: 11px;
}
.ow-placement-offline p {
  margin: 5px 0 0;
}
.ow-code-panel button {
  min-height: 30px;
  border: 1px solid #cfdbe6;
  border-radius: 8px;
  background: #fff;
  color: #16567b;
  padding: 0 10px;
  cursor: pointer;
  font-size: 9px;
  font-weight: 850;
}
.ow-code-panel textarea {
  width: 100%;
  min-height: 126px;
  border: 1px solid #d5e0ea;
  border-radius: 10px;
  background: #102641;
  color: #c8f2ef;
  padding: 13px;
  resize: vertical;
  font: 10px/1.65 Consolas, monospace;
}
.ow-code-panel p {
  margin: 9px 0 0;
  color: #748396;
  font-size: 9px;
  line-height: 1.5;
}
.ow-code-panel code {
  color: #0e6b79;
  font-weight: 800;
}
.ow-iframe-preview > div span {
  max-width: 170px;
  overflow: hidden;
  color: #92a0af;
  font: 8px Consolas, monospace;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ow-iframe-preview iframe {
  width: 100%;
  height: 250px;
  border: 1px solid #d8e3ec;
  border-radius: 10px;
  background: #fff;
}
.ow-placement-empty,
.ow-module-placeholder {
  padding: 60px 24px;
  text-align: center;
}
.ow-placement-empty > span,
.ow-module-placeholder > span {
  width: 48px;
  height: 48px;
  margin: 0 auto 14px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  background: #eaf5f7;
  color: #177987;
  font-size: 23px;
}
.ow-placement-empty h3,
.ow-module-placeholder h2 {
  margin: 0 0 7px;
  color: #1a3552;
}
.ow-placement-empty p,
.ow-module-placeholder p {
  max-width: 580px;
  margin: 0 auto;
  color: #7c899a;
  font-size: 11px;
  line-height: 1.65;
}
.ow-module-placeholder {
  border: 1px solid #dce5ec;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 12px 35px rgba(28,48,72,.05);
}
.ow-module-placeholder a {
  margin-top: 20px;
  display: inline-flex;
  color: #126c7d;
  font-size: 11px;
  font-weight: 850;
  text-decoration: none;
}
@media (max-width: 1080px) {
  .ow-supplier-app {
    grid-template-columns: 218px minmax(0, 1fr);
  }
  .ow-supplier-nav a {
    padding-inline: 9px;
    font-size: 11px;
  }
  .ow-placement-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ow-iframe-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  .ow-supplier-app {
    display: block;
  }
  .ow-supplier-sidebar {
    position: static;
    width: 100%;
    height: auto;
    padding: 14px;
    overflow: hidden;
  }
  .ow-supplier-brand {
    padding: 0 3px 13px;
  }
  .ow-supplier-nav {
    margin: 0 -14px;
    padding: 0 14px 5px;
    display: flex;
    gap: 6px;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .ow-supplier-nav::-webkit-scrollbar {
    display: none;
  }
  .ow-supplier-nav a {
    min-height: 38px;
    flex: 0 0 auto;
    white-space: nowrap;
  }
  .ow-supplier-nav a > span {
    width: 21px;
    height: 21px;
  }
  .ow-supplier-account {
    display: none;
  }
  .ow-supplier-toolbar {
    min-height: 61px;
    padding: 0 14px;
    top: 0;
  }
  .ow-supplier-toolbar > a {
    min-height: 35px;
    padding-inline: 11px;
  }
  .ow-supplier-main {
    padding: 14px;
  }
  .ow-page-heading,
  .ow-placement-builder > header,
  .ow-placement-list > header {
    align-items: flex-start;
  }
  .ow-page-heading {
    padding: 22px;
    display: grid;
  }
  .ow-page-heading h1 {
    font-size: 27px;
  }
  .ow-placement-form {
    padding: 21px;
  }
  .ow-placement-form-grid {
    grid-template-columns: 1fr;
  }
  .ow-form-span-2 {
    grid-column: auto;
  }
  .ow-variable-mapping legend,
  .ow-placement-submit {
    align-items: flex-start;
    flex-direction: column;
  }
  .ow-placement-submit button {
    width: 100%;
  }
  .ow-placement-card {
    padding: 21px;
  }
  .ow-placement-card > header {
    display: grid;
  }
  .ow-placement-head-actions {
    align-items: flex-start;
    flex-direction: row;
  }
  .ow-placement-controls {
    align-items: flex-start;
    flex-direction: column;
  }
  .ow-supplier-main .ow-wallet-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 470px) {
  .ow-supplier-toolbar small {
    display: none;
  }
  .ow-supplier-toolbar strong {
    max-width: 170px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .ow-page-metrics {
    width: 100%;
  }
  .ow-page-metrics span {
    flex: 1;
  }
  .ow-placement-builder > header,
  .ow-placement-list > header {
    padding: 19px;
  }
  .ow-variable-mapping legend small {
    line-height: 1.5;
  }
  .ow-supplier-main .ow-wallet-grid {
    grid-template-columns: 1fr;
  }
}

/* Supplier acquisition and authentication */
.ow-public-nav {
  display: flex;
  align-items: center;
  gap: 7px;
}
.ow-public-nav a {
  min-height: 40px;
  padding: 0 14px;
  border-radius: 11px;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  font-size: 12px;
  font-weight: 800;
}
.ow-nav-link {
  color: #54647c;
}
.ow-nav-link:hover {
  color: var(--ink);
  background: #eaf0f6;
}
.ow-nav-cta {
  color: #fff;
  background: #112d54;
  box-shadow: 0 8px 22px rgba(17, 45, 84, 0.16);
}
.ow-home-hero {
  width: min(1180px, calc(100% - 40px));
  margin: 38px auto 0;
  padding: 72px 68px;
  border: 1px solid #dce6ef;
  border-radius: 34px;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(340px, 0.75fr);
  align-items: center;
  gap: 74px;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 8%, rgba(17, 183, 205, 0.14), transparent 25rem),
    linear-gradient(145deg, #fafdff 0%, #eef5fb 100%);
  box-shadow: 0 30px 80px rgba(24, 48, 80, 0.09);
}
.ow-home-hero:after {
  content: "";
  width: 360px;
  height: 360px;
  position: absolute;
  right: -170px;
  bottom: -210px;
  border-radius: 50%;
  border: 70px solid rgba(20, 93, 255, 0.045);
}
.ow-home-copy,
.ow-revenue-preview {
  min-width: 0;
  position: relative;
  z-index: 1;
}
.ow-home-copy .ow-eyebrow,
.ow-section-heading .ow-eyebrow,
.ow-how-copy .ow-eyebrow,
.ow-auth-story .ow-eyebrow,
.ow-signup-intro .ow-eyebrow,
.ow-status-card .ow-eyebrow {
  color: #087d87;
}
.ow-home-copy h1 {
  max-width: 690px;
  margin: 22px 0 19px;
  font-size: clamp(43px, 5.2vw, 70px);
  line-height: 0.99;
  letter-spacing: -3.2px;
}
.ow-home-copy h1 em {
  color: #12758b;
  font-style: normal;
}
.ow-home-copy > p {
  max-width: 640px;
  margin: 0;
  color: #596c86;
  font-size: 16px;
  line-height: 1.72;
}
.ow-home-actions {
  margin-top: 31px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.ow-button.large {
  min-height: 54px;
  padding: 0 23px;
  border-radius: 14px;
  gap: 17px;
}
.ow-button.light {
  border: 1px solid #d6e0ea;
  background: rgba(255, 255, 255, 0.76);
  color: var(--ink);
}
.ow-home-proof {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  color: #6c7c91;
  font-size: 11px;
  font-weight: 750;
}
.ow-home-proof b {
  color: #0d9e73;
  margin-right: 4px;
}
.ow-revenue-preview {
  padding: 25px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 25px;
  color: #fff;
  background: linear-gradient(145deg, #102746, #155d73);
  box-shadow: 0 28px 55px rgba(19, 52, 78, 0.23);
}
.ow-preview-top,
.ow-preview-top > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ow-preview-top > div {
  justify-content: flex-start;
  gap: 8px;
}
.ow-preview-top small {
  text-transform: uppercase;
  letter-spacing: 1.1px;
  font-size: 9px;
  color: #b9cadb;
  font-weight: 850;
}
.ow-preview-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #2bdd9f;
  box-shadow: 0 0 0 5px rgba(43, 221, 159, 0.1);
}
.ow-preview-live {
  padding: 6px 9px;
  border-radius: 999px;
  color: #9fe7ce;
  background: rgba(42, 220, 158, 0.1);
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
}
.ow-preview-balance {
  margin: 21px 0 16px;
  padding: 23px;
  display: grid;
  gap: 7px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.08);
}
.ow-preview-balance span,
.ow-preview-metrics span {
  color: #a8bdcf;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  font-weight: 800;
}
.ow-preview-balance strong {
  font-size: 20px;
  line-height: 1.25;
}
.ow-preview-balance small,
.ow-preview-metrics small {
  color: #9eb2c5;
  font-size: 10px;
}
.ow-preview-metrics {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.ow-preview-metrics > div {
  padding: 17px;
  display: grid;
  gap: 4px;
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.055);
}
.ow-preview-metrics strong {
  font-size: 21px;
}
.ow-preview-flow {
  margin-top: 18px;
  display: grid;
  grid-template-columns: auto 1fr auto 1fr auto;
  align-items: center;
  gap: 8px;
  color: #9fb1c4;
  font-size: 8px;
  white-space: nowrap;
}
.ow-preview-flow span:before {
  content: "";
  width: 6px;
  height: 6px;
  margin-right: 5px;
  border-radius: 50%;
  display: inline-block;
  background: #5c7892;
}
.ow-preview-flow .done {
  color: #b9e6d6;
}
.ow-preview-flow .done:before {
  background: #2bdd9f;
}
.ow-preview-flow i {
  height: 1px;
  background: rgba(255, 255, 255, 0.13);
}
.ow-home-strip {
  width: min(1110px, calc(100% - 60px));
  margin: -1px auto 0;
  padding: 31px 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-bottom: 1px solid var(--line);
}
.ow-home-strip div {
  padding: 0 26px;
  display: grid;
  gap: 4px;
  border-left: 1px solid var(--line);
}
.ow-home-strip div:first-child {
  border-left: 0;
}
.ow-home-strip strong {
  font-size: 20px;
}
.ow-home-strip span {
  color: var(--muted);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.65px;
  font-weight: 750;
}
.ow-home-section {
  width: min(1180px, calc(100% - 40px));
  margin: 94px auto 0;
}
.ow-section-heading {
  max-width: 680px;
}
.ow-section-heading h2,
.ow-how-copy h2 {
  margin: 17px 0 13px;
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1.05;
  letter-spacing: -1.8px;
}
.ow-section-heading > p,
.ow-how-copy > p {
  margin: 0;
  color: var(--muted);
  line-height: 1.7;
  font-size: 14px;
}
.ow-benefit-grid {
  margin-top: 36px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.ow-benefit-grid article {
  min-height: 235px;
  padding: 27px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(24, 48, 80, 0.035);
}
.ow-benefit-icon {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  color: #0c8490;
  background: #e8f8f8;
  font-size: 10px;
  font-weight: 900;
}
.ow-benefit-grid h3 {
  margin: 26px 0 10px;
  font-size: 17px;
}
.ow-benefit-grid p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
  font-size: 12px;
}
.ow-how-section {
  width: min(1180px, calc(100% - 40px));
  margin: 90px auto 0;
  padding: 55px 60px;
  border-radius: 28px;
  display: grid;
  grid-template-columns: 1fr 0.85fr;
  gap: 70px;
  color: #fff;
  background: #102746;
}
.ow-how-copy .ow-eyebrow {
  color: #67d9e5;
}
.ow-how-copy > p {
  color: #b8c6d7;
}
.ow-how-copy > a {
  margin-top: 24px;
  display: inline-flex;
  gap: 15px;
  color: #69dfeb;
  text-decoration: none;
  font-size: 12px;
  font-weight: 850;
}
.ow-how-list {
  padding: 0;
  margin: 0;
  list-style: none;
  display: grid;
}
.ow-how-list li {
  display: grid;
  grid-template-columns: 40px 1fr;
  gap: 15px;
  align-items: start;
  padding: 17px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.09);
}
.ow-how-list li:first-child {
  border-top: 0;
}
.ow-how-list li > span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #72e4dc;
  background: rgba(114, 228, 220, 0.1);
  font-size: 11px;
  font-weight: 900;
}
.ow-how-list strong {
  font-size: 14px;
}
.ow-how-list p {
  margin: 5px 0 0;
  color: #9fb0c5;
  font-size: 11px;
}
.ow-home-cta {
  width: min(1180px, calc(100% - 40px));
  margin: 24px auto 0;
  padding: 38px 45px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fff;
}
.ow-home-cta > div:last-child {
  display: flex;
  gap: 9px;
}
.ow-home-cta > div > span {
  color: #0b8b8e;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 900;
}
.ow-home-cta h2 {
  margin: 7px 0 0;
  font-size: 24px;
  letter-spacing: -0.7px;
}

.ow-auth-shell,
.ow-signup-shell {
  width: min(1100px, calc(100% - 40px));
  min-height: calc(100vh - 200px);
  margin: 32px auto 0;
  border: 1px solid var(--line);
  border-radius: 30px;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(420px, 0.72fr);
  overflow: hidden;
  background: #fff;
  box-shadow: 0 30px 80px rgba(24, 48, 80, 0.1);
}
.ow-auth-story,
.ow-signup-intro {
  padding: 68px;
  color: #fff;
  background:
    radial-gradient(circle at 10% 0%, rgba(34, 210, 196, 0.17), transparent 25rem),
    linear-gradient(145deg, #102746, #154e6a);
}
.ow-auth-back {
  margin-bottom: 70px;
  display: block;
  color: #aebed0;
  text-decoration: none;
  font-size: 11px;
  font-weight: 750;
}
.ow-auth-story .ow-eyebrow,
.ow-signup-intro .ow-eyebrow {
  color: #6ce0e7;
}
.ow-auth-story h1,
.ow-signup-intro h1 {
  margin: 20px 0 15px;
  font-size: clamp(35px, 4vw, 51px);
  line-height: 1.04;
  letter-spacing: -2px;
}
.ow-auth-story > p,
.ow-signup-intro > p {
  margin: 0;
  color: #bac8d8;
  line-height: 1.7;
  font-size: 13px;
}
.ow-auth-story ul {
  padding: 0;
  margin: 39px 0 0;
  list-style: none;
  display: grid;
  gap: 19px;
}
.ow-auth-story li {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 10px;
}
.ow-auth-story li > span {
  width: 23px;
  height: 23px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #8ee9d0;
  background: rgba(46, 218, 158, 0.11);
  font-size: 10px;
}
.ow-auth-story li div {
  display: grid;
  gap: 4px;
}
.ow-auth-story li strong {
  font-size: 12px;
}
.ow-auth-story li small {
  color: #9fafc1;
  font-size: 10px;
}
.ow-auth-card,
.ow-signup-card {
  padding: 68px 58px;
  align-self: center;
}
.ow-auth-card-head > span,
.ow-signup-card > header > span {
  color: #0b8b8e;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 1.1px;
  font-weight: 900;
}
.ow-auth-card h2,
.ow-signup-card h2 {
  margin: 10px 0 7px;
  font-size: 30px;
  letter-spacing: -1px;
}
.ow-auth-card-head p,
.ow-signup-card header p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}
.ow-auth-form {
  margin-top: 29px;
  display: grid;
  gap: 16px;
}
.ow-auth-form > label:not(.ow-check) {
  display: grid;
  gap: 7px;
  color: #53647b;
  font-size: 10px;
  font-weight: 850;
}
.ow-auth-form input:not([type="checkbox"]),
.ow-auth-form select,
.ow-auth-form textarea {
  width: 100%;
  height: 50px;
  padding: 0 14px;
  border: 1px solid #dfe5ec;
  border-radius: 12px;
  outline: none;
  background: #f8fafc;
  color: var(--ink);
  font: inherit;
  font-size: 12px;
}
.ow-auth-form input:focus,
.ow-auth-form select:focus,
.ow-auth-form textarea:focus {
  border-color: #4f9ea8;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(21, 151, 158, 0.08);
}
.ow-check {
  display: grid;
  grid-template-columns: 16px 1fr;
  align-items: start;
  gap: 9px;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.45;
}
.ow-check input {
  margin: 1px 0 0;
  accent-color: #137e89;
}
.ow-submit {
  min-height: 51px;
  border: 0;
  border-radius: 13px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 19px;
  color: #fff;
  background: linear-gradient(135deg, #126f7d, #1669ad);
  box-shadow: 0 15px 28px rgba(17, 102, 128, 0.2);
  cursor: pointer;
  font-weight: 850;
}
.ow-form-alert,
.ow-field-error {
  color: #a92f43;
}
.ow-form-alert {
  padding: 11px 13px;
  border: 1px solid #f2c0c7;
  border-radius: 10px;
  background: #fff2f4;
  font-size: 10px;
}
.ow-field-error {
  font-size: 9px;
  font-weight: 700;
}
.ow-auth-switch {
  margin: 22px 0 0;
  color: var(--muted);
  text-align: center;
  font-size: 11px;
}
.ow-auth-switch a {
  color: #0d7581;
  font-weight: 850;
}
.ow-signup-shell {
  width: min(1180px, calc(100% - 40px));
  grid-template-columns: minmax(330px, 0.6fr) minmax(0, 1fr);
}
.ow-signup-intro {
  padding: 54px;
}
.ow-signup-intro .ow-auth-back {
  margin-bottom: 50px;
}
.ow-review-steps {
  margin-top: 35px;
  display: grid;
  gap: 14px;
}
.ow-review-steps div {
  display: flex;
  align-items: center;
  gap: 11px;
  color: #d4dfeb;
  font-size: 11px;
}
.ow-review-steps span {
  width: 29px;
  height: 29px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #7ce3dd;
  background: rgba(124, 227, 221, 0.1);
  font-size: 9px;
}
.ow-signup-card {
  padding: 45px 52px;
}
.ow-signup-form {
  grid-template-columns: 1fr 1fr;
  column-gap: 13px;
}
.ow-signup-form .full {
  grid-column: 1 / -1;
}

.ow-status-shell {
  min-height: calc(100vh - 200px);
  padding: 60px 20px;
  display: grid;
  place-items: center;
}
.ow-status-card {
  width: min(640px, 100%);
  padding: 52px;
  border: 1px solid var(--line);
  border-radius: 27px;
  background: #fff;
  box-shadow: var(--shadow);
  text-align: center;
}
.ow-status-icon {
  width: 68px;
  height: 68px;
  margin: 0 auto 24px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #0e8b70;
  background: #e8f8f2;
  font-size: 25px;
  font-weight: 900;
}
.ow-status-card.rejected .ow-status-icon {
  color: #b2384d;
  background: #fff0f2;
}
.ow-status-card h1 {
  margin: 15px 0 10px;
  font-size: 33px;
  letter-spacing: -1.2px;
}
.ow-status-card > p {
  margin: 0 auto;
  max-width: 500px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}
.ow-status-card dl {
  margin: 30px 0 20px;
  border: 1px solid var(--line);
  border-radius: 15px;
  overflow: hidden;
  text-align: left;
}
.ow-status-card dl div {
  padding: 13px 15px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid var(--line);
}
.ow-status-card dl div:first-child {
  border-top: 0;
}
.ow-status-card dt {
  color: var(--muted);
  font-size: 10px;
}
.ow-status-card dd {
  margin: 0;
  font-size: 10px;
  font-weight: 850;
}
.ow-status-note {
  font-size: 10px !important;
}

@media (max-width: 980px) {
  .ow-home-hero {
    padding: 52px 45px;
    grid-template-columns: 1fr;
    gap: 45px;
  }
  .ow-revenue-preview {
    max-width: 580px;
  }
  .ow-benefit-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .ow-how-section {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .ow-auth-shell,
  .ow-signup-shell {
    grid-template-columns: 1fr;
  }
  .ow-auth-story,
  .ow-signup-intro {
    padding: 48px;
  }
  .ow-auth-back {
    margin-bottom: 34px;
  }
}
@media (max-width: 680px) {
  .ow-public-nav {
    gap: 3px;
  }
  .ow-public-nav .ow-nav-link:first-child {
    display: none;
  }
  .ow-public-nav a {
    min-height: 36px;
    padding: 0 10px;
    font-size: 10px;
  }
  .ow-home-hero {
    width: calc(100% - 24px);
    margin-top: 14px;
    padding: 36px 23px;
    border-radius: 24px;
  }
  .ow-home-copy h1 {
    font-size: 40px;
    letter-spacing: -2px;
  }
  .ow-home-copy > p {
    font-size: 14px;
  }
  .ow-home-actions,
  .ow-home-actions a,
  .ow-home-cta > div:last-child,
  .ow-home-cta a {
    width: 100%;
  }
  .ow-home-proof {
    gap: 11px;
  }
  .ow-revenue-preview {
    padding: 18px;
  }
  .ow-preview-flow {
    display: none;
  }
  .ow-home-strip {
    width: calc(100% - 30px);
    grid-template-columns: 1fr 1fr;
  }
  .ow-home-strip div {
    padding: 17px 14px;
    border-top: 1px solid var(--line);
  }
  .ow-home-strip div:nth-child(odd) {
    border-left: 0;
  }
  .ow-home-strip div:nth-child(-n + 2) {
    border-top: 0;
  }
  .ow-home-section,
  .ow-how-section,
  .ow-home-cta {
    width: calc(100% - 24px);
  }
  .ow-home-section {
    margin-top: 65px;
  }
  .ow-benefit-grid {
    grid-template-columns: 1fr;
  }
  .ow-benefit-grid article {
    min-height: 0;
  }
  .ow-how-section {
    margin-top: 60px;
    padding: 36px 24px;
  }
  .ow-home-cta {
    padding: 29px 23px;
    display: grid;
  }
  .ow-home-cta > div:last-child {
    display: grid;
  }
  .ow-auth-shell,
  .ow-signup-shell {
    width: calc(100% - 24px);
    margin-top: 13px;
    border-radius: 23px;
  }
  .ow-auth-story,
  .ow-signup-intro,
  .ow-auth-card,
  .ow-signup-card {
    padding: 34px 23px;
  }
  .ow-auth-story h1,
  .ow-signup-intro h1 {
    font-size: 35px;
  }
  .ow-auth-story ul {
    display: none;
  }
  .ow-signup-form {
    grid-template-columns: 1fr;
  }
  .ow-signup-form .full {
    grid-column: auto;
  }
  .ow-status-card {
    padding: 38px 22px;
  }
  .ow-status-card h1 {
    font-size: 28px;
  }
  .ow-status-card dl div {
    display: grid;
    gap: 5px;
  }
}

/* Supplier general details */
.ow-general-details-page {
  max-width: 1320px;
}

.ow-general-heading {
  align-items: flex-end;
}

.ow-account-state {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 13px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
}

.ow-account-state::before {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  content: "";
}

.ow-account-state.approved {
  color: #08765f;
  background: #e9f8f3;
  border: 1px solid #c6ecdf;
}

.ow-general-layout {
  display: grid;
  grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.ow-profile-summary,
.ow-general-card,
.ow-general-actions {
  border: 1px solid #dce6ee;
  background: #fff;
  box-shadow: 0 14px 38px rgba(27, 52, 77, .06);
}

.ow-profile-summary {
  position: sticky;
  top: 24px;
  padding: 28px;
  border-radius: 20px;
}

.ow-profile-monogram {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin-bottom: 18px;
  border-radius: 17px;
  color: #fff;
  background: linear-gradient(145deg, #173f70, #1b91a2);
  box-shadow: 0 12px 28px rgba(20, 75, 116, .2);
  font-size: 23px;
  font-weight: 850;
}

.ow-profile-summary h2 {
  margin: 0 0 6px;
  color: #17304d;
  font-size: 20px;
}

.ow-profile-summary > p {
  margin: 0;
  color: #718197;
  overflow-wrap: anywhere;
}

.ow-profile-summary dl {
  display: grid;
  gap: 0;
  margin: 25px 0 0;
}

.ow-profile-summary dl div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 13px 0;
  border-top: 1px solid #edf2f6;
}

.ow-profile-summary dt {
  color: #7c8b9e;
  font-size: 12px;
}
.ow-offer-image {
  width: 54px;
  height: 54px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #f4f7fb;
  object-fit: cover;
}

.ow-profile-summary dd {
  margin: 0;
  color: #1d3956;
  font-size: 12px;
  font-weight: 800;
  text-align: right;
  overflow-wrap: anywhere;
}

.ow-profile-lock-note {
  margin-top: 18px;
  padding: 16px;
  border-radius: 14px;
  background: #f2f7fa;
}

.ow-profile-lock-note strong {
  display: block;
  color: #1c526a;
  font-size: 12px;
}

.ow-profile-lock-note p {
  margin: 6px 0 0;
  color: #6b7e90;
  font-size: 11px;
  line-height: 1.6;
}

.ow-general-form {
  display: grid;
  gap: 18px;
}

.ow-general-card {
  padding: 26px;
  border-radius: 20px;
}

.ow-general-card > header {
  display: flex;
  gap: 13px;
  align-items: flex-start;
  padding-bottom: 20px;
  border-bottom: 1px solid #e8eef3;
}

.ow-general-card > header > span {
  display: grid;
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 10px;
  color: #176d7f;
  background: #e7f5f7;
  font-size: 11px;
  font-weight: 900;
}

.ow-general-card h2 {
  margin: 0;
  color: #183451;
  font-size: 17px;
}

.ow-general-card header p {
  margin: 5px 0 0;
  color: #7b8999;
  font-size: 12px;
}

.ow-general-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  padding-top: 22px;
}

.ow-general-grid label {
  display: grid;
  gap: 8px;
  min-width: 0;
  color: #40566e;
  font-size: 12px;
  font-weight: 750;
}

.ow-general-grid label.wide {
  grid-column: 1 / -1;
}

.ow-general-grid label > span b {
  color: #df6255;
}

.ow-general-grid input {
  width: 100%;
  min-height: 46px;
  padding: 0 14px;
  border: 1px solid #ccd9e4;
  border-radius: 11px;
  outline: none;
  color: #183451;
  background: #fbfdfe;
  font: inherit;
  font-weight: 550;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.ow-general-grid input:focus {
  border-color: #2b8fa0;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(43, 143, 160, .1);
}

.ow-general-grid .errorlist,
.ow-form-wide-error .errorlist {
  margin: 0;
  padding: 0;
  list-style: none;
  color: #b53f3b;
  font-size: 11px;
  font-weight: 650;
}

.ow-form-wide-error {
  padding: 13px 16px;
  border: 1px solid #efc2c0;
  border-radius: 12px;
  background: #fff2f1;
}

.ow-general-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 20px 24px;
  border-radius: 18px;
}

.ow-general-actions p {
  display: grid;
  gap: 4px;
  margin: 0;
}

.ow-general-actions p strong {
  color: #23405d;
  font-size: 12px;
}

.ow-general-actions p span {
  color: #7c8a99;
  font-size: 11px;
}

.ow-general-actions button {
  min-height: 46px;
  padding: 0 18px;
  border: 0;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(135deg, #173f70, #187f91);
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
  box-shadow: 0 12px 25px rgba(23, 63, 112, .18);
}

.ow-general-actions button span {
  margin-left: 8px;
}

@media (max-width: 980px) {
  .ow-general-layout {
    grid-template-columns: 1fr;
  }

  .ow-profile-summary {
    position: static;
  }
}

@media (max-width: 640px) {
  .ow-general-grid {
    grid-template-columns: 1fr;
  }

  .ow-general-grid label.wide {
    grid-column: auto;
  }

  .ow-general-actions {
    align-items: stretch;
    flex-direction: column;
  }
}

/* OpinionUniverse-style Apps / Placements workflow */
.ow-apps-page {
  width: min(1440px, 100%);
  margin: 0 auto;
}
.ow-apps-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 26px;
}
.ow-apps-heading h1 {
  margin: 8px 0 5px;
  font-size: clamp(28px, 3vw, 40px);
  letter-spacing: -0.04em;
}
.ow-apps-heading p {
  margin: 0;
  color: var(--muted);
}
.ow-add-placement,
.ow-apps-empty button {
  border: 0;
  border-radius: 10px;
  padding: 13px 19px;
  color: #fff;
  background: #17467b;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 10px 24px rgba(23, 70, 123, 0.2);
}
.ow-add-placement span {
  margin-right: 6px;
  font-size: 18px;
}
.ow-apps-table-card {
  position: relative;
  border: 1px solid #e4e9f1;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 14px 40px rgba(25, 44, 75, 0.07);
}
.ow-apps-summary {
  display: flex;
  gap: 34px;
  padding: 20px 24px;
  border-bottom: 1px solid #edf0f5;
}
.ow-apps-summary div {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.ow-apps-summary strong {
  font-size: 22px;
}
.ow-apps-summary span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
}
.ow-apps-table-wrap {
  overflow: visible;
}
.ow-apps-table {
  width: 100%;
  border-collapse: collapse;
}
.ow-apps-table th {
  padding: 16px 20px;
  color: #69778d;
  background: #f8fafc;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 11px;
  font-weight: 850;
}
.ow-apps-table td {
  padding: 18px 20px;
  border-top: 1px solid #edf0f5;
  color: #40506a;
  font-size: 14px;
  vertical-align: middle;
}
.ow-apps-table tbody tr:hover {
  background: #fbfcfe;
}
.ow-app-cell {
  min-width: 260px;
  display: flex;
  align-items: center;
  gap: 13px;
}
.ow-app-favicon {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  display: grid;
  place-items: center;
  border: 1px solid #dbe4f0;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(145deg, #1b4275, #2478d9);
  font-weight: 900;
}
.ow-app-cell div {
  display: grid;
  gap: 4px;
}
.ow-app-cell strong {
  color: var(--ink);
  font-size: 15px;
}
.ow-app-cell small {
  color: #8390a3;
  font-size: 11px;
}
.ow-platform-pill {
  display: inline-flex;
  border-radius: 999px;
  padding: 6px 10px;
  color: #315c8d;
  background: #eef5fc;
  font-size: 12px;
  font-weight: 800;
}
.ow-platform-pill.android {
  color: #227651;
  background: #eaf8f1;
}
.ow-platform-pill.ios {
  color: #5e4a94;
  background: #f1edfb;
}
.ow-placement-state {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border-radius: 999px;
  padding: 7px 11px;
  font-size: 12px;
  font-weight: 850;
}
.ow-placement-state i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
}
.ow-placement-state.active {
  color: #187a56;
  background: #eaf8f2;
}
.ow-placement-state.paused {
  color: #a36a14;
  background: #fff6df;
}
.ow-placement-state.archived {
  color: #7b8798;
  background: #eef1f5;
}
.ow-placement-revenue {
  color: #172a47;
  white-space: nowrap;
}
.ow-actions-column {
  width: 88px;
  text-align: center !important;
}
.ow-placement-actions {
  position: relative;
  display: inline-block;
}
.ow-placement-actions summary {
  width: 36px;
  height: 34px;
  display: grid;
  place-items: center;
  border: 1px solid #e1e7ef;
  border-radius: 9px;
  color: #65748a;
  background: #fff;
  cursor: pointer;
  list-style: none;
  letter-spacing: 1px;
  font-weight: 900;
}
.ow-placement-actions summary::-webkit-details-marker {
  display: none;
}
.ow-placement-actions > div {
  position: absolute;
  z-index: 12;
  top: calc(100% + 7px);
  right: 0;
  width: 150px;
  padding: 7px;
  border: 1px solid #e2e7ee;
  border-radius: 11px;
  background: #fff;
  box-shadow: 0 18px 40px rgba(20, 35, 60, 0.17);
  text-align: left;
}
.ow-placement-actions a,
.ow-placement-actions button {
  width: 100%;
  display: block;
  border: 0;
  border-radius: 7px;
  padding: 9px 10px;
  color: #31415b;
  background: transparent;
  text-align: left;
  text-decoration: none;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}
.ow-placement-actions a:hover,
.ow-placement-actions button:hover {
  background: #f2f6fa;
}
.ow-placement-actions button.danger {
  color: #b44051;
}
.ow-apps-footer {
  padding: 16px 22px;
  border-top: 1px solid #edf0f5;
  color: #7a879a;
  font-size: 12px;
}
.ow-apps-empty {
  min-height: 330px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 9px;
  text-align: center;
}
.ow-apps-empty > span {
  color: #bfd0e2;
  font-size: 44px;
}
.ow-apps-empty h2,
.ow-apps-empty p {
  margin: 0;
}
.ow-apps-empty p {
  margin-bottom: 12px;
  color: var(--muted);
}
.ow-placement-modal {
  width: min(580px, calc(100% - 30px));
  padding: 0;
  border: 0;
  border-radius: 18px;
  color: var(--ink);
  background: #fff;
  box-shadow: 0 30px 90px rgba(15, 30, 55, 0.28);
}
.ow-placement-modal::backdrop {
  background: rgba(15, 27, 47, 0.58);
  backdrop-filter: blur(3px);
}
.ow-placement-create-form > header {
  display: flex;
  justify-content: space-between;
  padding: 24px 26px 19px;
  border-bottom: 1px solid #e9edf3;
}
.ow-placement-create-form header small {
  color: #17708b;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 10px;
  font-weight: 900;
}
.ow-placement-create-form h2 {
  margin: 5px 0 0;
  font-size: 23px;
}
.ow-modal-close {
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  color: #718096;
  background: #f1f4f8;
  font-size: 24px;
  cursor: pointer;
}
.ow-placement-create-form fieldset,
.ow-placement-url-field {
  margin: 0;
  padding: 22px 26px 0;
  border: 0;
}
.ow-placement-create-form legend,
.ow-placement-url-field > span {
  display: block;
  margin-bottom: 10px;
  color: #42516a;
  font-size: 12px;
  font-weight: 850;
}
.ow-placement-url-field b {
  color: #d34a5c;
}
.ow-platform-options > div {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.ow-platform-options label {
  position: relative;
  min-height: 74px;
  display: grid;
  place-items: center;
  border: 1px solid #dce3ec;
  border-radius: 12px;
  color: #53627a;
  background: #fbfcfe;
  font-weight: 800;
  cursor: pointer;
}
.ow-platform-options input {
  position: absolute;
  opacity: 0;
}
.ow-platform-options label:has(input:checked) {
  border-color: #1d67ad;
  color: #174f85;
  background: #edf6ff;
  box-shadow: inset 0 0 0 1px #1d67ad;
}
.ow-placement-url-field input {
  width: 100%;
  border: 1px solid #d7dfe9;
  border-radius: 10px;
  padding: 13px 14px;
  color: var(--ink);
  background: #fff;
  font: inherit;
}
.ow-placement-url-field small {
  display: block;
  margin-top: 8px;
  color: #7b889a;
  font-size: 11px;
}
.ow-placement-create-form > footer {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 24px;
  padding: 17px 26px;
  border-top: 1px solid #e9edf3;
}
.ow-placement-create-form > footer button {
  border: 0;
  border-radius: 9px;
  padding: 11px 20px;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.ow-modal-cancel {
  color: #5e6b7f;
  background: #eff2f6;
}
.ow-modal-submit {
  color: #fff;
  background: #17467b;
}
.ow-settings-back {
  color: #42668e;
  text-decoration: none;
  font-size: 13px;
  font-weight: 800;
}
.ow-settings-shell {
  border: 1px solid #e2e7ef;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 14px 40px rgba(25, 44, 75, 0.07);
}
.ow-settings-tabs {
  display: flex;
  gap: 5px;
  padding: 12px 18px;
  border-bottom: 1px solid #e8edf3;
  background: #f8fafc;
}
.ow-settings-tabs a {
  border-radius: 8px;
  padding: 10px 14px;
  color: #65748a;
  text-decoration: none;
  font-size: 13px;
  font-weight: 800;
}
.ow-settings-tabs a.active,
.ow-settings-tabs a:hover {
  color: #174f85;
  background: #eaf3fc;
}
.ow-settings-form,
.ow-settings-integration {
  padding: 24px;
}
.ow-settings-form fieldset {
  margin: 0 0 24px;
  padding: 22px;
  border: 1px solid #e4e9f0;
  border-radius: 13px;
}
.ow-settings-form legend span,
.ow-settings-form legend small {
  display: block;
}
.ow-settings-form legend span {
  font-size: 15px;
  font-weight: 900;
}
.ow-settings-form legend small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
}
.ow-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.ow-settings-grid label {
  display: grid;
  gap: 7px;
  color: #4d5c73;
  font-size: 12px;
  font-weight: 800;
}
.ow-settings-grid label.wide {
  grid-column: 1 / -1;
}
.ow-settings-grid input:not([type='checkbox']),
.ow-settings-grid select,
.ow-settings-grid textarea {
  width: 100%;
  border: 1px solid #d7dfe9;
  border-radius: 9px;
  padding: 11px 12px;
  color: var(--ink);
  background: #fff;
  font: inherit;
}
.ow-settings-check {
  display: flex !important;
  grid-auto-flow: column;
  justify-content: start;
  align-items: center;
}
.ow-settings-secret {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  padding: 13px 15px;
  border-radius: 9px;
  color: #285876;
  background: #edf8fb;
  font-size: 12px;
}
.ow-settings-save {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}
.ow-settings-save a,
.ow-settings-save button {
  border: 0;
  border-radius: 9px;
  padding: 11px 18px;
  text-decoration: none;
  font: inherit;
  font-weight: 800;
}
.ow-settings-save a {
  color: #5e6b7f;
  background: #eff2f6;
}
.ow-settings-save button {
  color: #fff;
  background: #17467b;
  cursor: pointer;
}
.ow-settings-integration {
  border-top: 1px solid #e4e9f0;
}
.ow-settings-integration header span {
  color: #16809a;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 10px;
  font-weight: 900;
}
.ow-settings-integration h2 {
  margin: 5px 0 18px;
}
@media (max-width: 900px) {
  .ow-apps-table-wrap {
    overflow-x: auto;
  }
  .ow-apps-table {
    min-width: 920px;
  }
  .ow-settings-grid {
    grid-template-columns: 1fr;
  }
  .ow-settings-grid label.wide {
    grid-column: auto;
  }
}
@media (max-width: 640px) {
  .ow-apps-heading {
    align-items: stretch;
    flex-direction: column;
  }
  .ow-add-placement {
    width: 100%;
  }
  .ow-apps-summary {
    justify-content: space-between;
  }
  .ow-platform-options > div {
    grid-template-columns: 1fr;
  }
  .ow-settings-tabs {
    overflow-x: auto;
  }
  .ow-settings-secret {
    flex-direction: column;
  }
}

/* Placement settings suite */
.ow-placement-settings-page {
  max-width: 1240px;
}
.ow-settings-heading p {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.ow-settings-heading code {
  color: #587089;
  font-size: 10px;
}
.ow-settings-open-wall {
  border: 1px solid #cfdae5;
  border-radius: 9px;
  padding: 10px 14px;
  color: #174f85;
  background: #fff;
  text-decoration: none;
  font-size: 11px;
  font-weight: 850;
}
.ow-settings-tabs button {
  border: 0;
  border-radius: 8px;
  padding: 10px 15px;
  color: #65748a;
  background: transparent;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
  cursor: pointer;
}
.ow-settings-tabs button.active,
.ow-settings-tabs button:hover {
  color: #174f85;
  background: #eaf3fc;
}
.ow-settings-panel[hidden],
.ow-integration-panel[hidden],
[data-subpanel][hidden] {
  display: none !important;
}
.ow-panel-heading {
  padding: 25px 26px 0;
}
.ow-panel-heading > span,
.ow-secret-card header span,
.ow-test-card > span,
.ow-specific-intro span,
.ow-upload-card > div > span,
.ow-guide > span {
  color: #118098;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 9px;
  font-weight: 900;
}
.ow-panel-heading h2 {
  margin: 5px 0 5px;
  color: #183453;
  font-size: 20px;
}
.ow-panel-heading p {
  margin: 0;
  color: #7b899a;
  font-size: 11px;
  line-height: 1.6;
}
.ow-settings-form {
  padding-top: 20px;
}
.ow-settings-form input:disabled {
  color: #728196;
  background: #f4f7fa;
  cursor: not-allowed;
}
.ow-settings-grid label > small,
.ow-field-label > small,
.ow-event-form label > small {
  color: #8995a4;
  font-size: 9px;
  font-weight: 500;
}
.ow-settings-grid label > span b,
.ow-field-label > span b,
.ow-event-form label > span b,
.ow-choice-fieldset legend b,
.ow-content-types legend b {
  color: #dc4c5d;
}
.ow-field-label {
  display: grid;
  gap: 7px;
  margin-top: 20px;
  color: #4d5c73;
  font-size: 11px;
  font-weight: 800;
}
.ow-field-label input,
.ow-field-label textarea,
.ow-event-form input,
.ow-event-form select {
  width: 100%;
  border: 1px solid #d7dfe9;
  border-radius: 9px;
  padding: 11px 12px;
  color: var(--ink);
  background: #fff;
  font: inherit;
}
.ow-choice-fieldset,
.ow-content-types {
  margin: 22px 0 0;
  padding: 0;
  border: 0;
}
.ow-choice-fieldset legend,
.ow-content-types legend {
  color: #4d5c73;
  font-size: 11px;
  font-weight: 850;
}
.ow-choice-fieldset > p,
.ow-content-types > p {
  margin: 5px 0 10px;
  color: #8995a4;
  font-size: 9px;
}
.ow-choice-fieldset ul,
.ow-content-types ul {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.ow-choice-fieldset label,
.ow-content-types label {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 48px;
  border: 1px solid #d9e2ea;
  border-radius: 10px;
  padding: 0 14px;
  color: #435870;
  background: #fafcfd;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}
.ow-choice-fieldset label:has(input:checked),
.ow-content-types label:has(input:checked) {
  border-color: #1c7c8b;
  color: #126776;
  background: #eef9fa;
  box-shadow: inset 0 0 0 1px #1c7c8b;
}
.ow-reward-simulator {
  display: flex;
  align-items: center;
  gap: 22px;
  margin-top: 22px;
  padding: 18px 20px;
  border: 1px solid #d8e7e8;
  border-radius: 12px;
  background: linear-gradient(135deg, #f4fbfb, #f9fbfd);
}
.ow-reward-simulator div {
  display: grid;
  gap: 4px;
}
.ow-reward-simulator div span {
  color: #16808e;
  text-transform: uppercase;
  letter-spacing: .06em;
  font-size: 8px;
  font-weight: 900;
}
.ow-reward-simulator div strong,
.ow-reward-simulator > small {
  color: #718094;
  font-size: 9px;
}
.ow-reward-simulator p {
  margin: 0;
  color: #183b55;
  white-space: nowrap;
}
.ow-reward-simulator p b {
  font-size: 25px;
}
.ow-reward-simulator > small {
  margin-left: auto;
  max-width: 330px;
  line-height: 1.5;
}
.ow-subtabs {
  display: flex;
  gap: 6px;
  margin: 18px 24px 0;
  padding: 5px;
  border: 1px solid #e0e7ee;
  border-radius: 10px;
  background: #f6f8fb;
}
.ow-subtabs button {
  border: 0;
  border-radius: 7px;
  padding: 9px 13px;
  color: #6d7d91;
  background: transparent;
  font: inherit;
  font-size: 10px;
  font-weight: 850;
  cursor: pointer;
}
.ow-subtabs button.active {
  color: #174f85;
  background: #fff;
  box-shadow: 0 2px 8px rgba(22, 49, 79, .08);
}
.ow-switch-row,
.ow-postback-options label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #435870;
}
.ow-switch-row {
  margin-bottom: 20px;
  padding: 15px;
  border: 1px solid #d8e6e8;
  border-radius: 11px;
  background: #f5fbfb;
}
.ow-switch-row input,
.ow-postback-options input {
  margin-top: 2px;
  accent-color: #177d8a;
}
.ow-switch-row span,
.ow-postback-options span {
  display: grid;
  gap: 3px;
}
.ow-switch-row b,
.ow-postback-options b {
  font-size: 11px;
}
.ow-switch-row small,
.ow-postback-options small {
  color: #7d8b9b;
  font-size: 9px;
  line-height: 1.45;
}
.ow-postback-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}
.ow-postback-options label {
  padding: 13px;
  border: 1px solid #e0e7ee;
  border-radius: 10px;
}
.ow-mapping-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 20px;
}
.ow-macro-section {
  margin-top: 22px;
  padding-top: 20px;
  border-top: 1px solid #e9edf2;
}
.ow-macro-section header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ow-macro-section h3 {
  margin: 0;
  color: #29435e;
  font-size: 12px;
}
.ow-macro-section header p {
  color: #8a97a7;
  font-size: 9px;
}
.ow-macro-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}
.ow-macro-grid button {
  display: grid;
  gap: 4px;
  min-width: 0;
  border: 1px solid #dce5ec;
  border-radius: 8px;
  padding: 9px;
  text-align: left;
  background: #f9fbfc;
  cursor: pointer;
}
.ow-macro-grid code {
  color: #087383;
  font-size: 9px;
  font-weight: 850;
}
.ow-macro-grid span {
  overflow: hidden;
  color: #7b899b;
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ow-settings-utility-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(260px, .6fr);
  gap: 14px;
  padding: 0 24px 24px;
}
.ow-secret-card,
.ow-test-card,
.ow-schema-card,
.ow-guide {
  padding: 18px;
  border: 1px solid #dfe7ee;
  border-radius: 13px;
  background: #f9fbfc;
}
.ow-secret-card header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}
.ow-secret-card h3,
.ow-test-card h3,
.ow-specific-intro h3,
.ow-upload-card h3,
.ow-schema-card h3,
.ow-guide h3 {
  margin: 4px 0 0;
  color: #29435e;
  font-size: 12px;
}
.ow-secret-card header > b {
  color: #66788c;
  font: 10px Consolas, monospace;
}
.ow-secret-card > p,
.ow-test-card > p,
.ow-specific-intro > p,
.ow-upload-card p,
.ow-guide p {
  color: #758498;
  font-size: 9px;
  line-height: 1.6;
}
.ow-hash-examples details {
  margin: 8px 0;
  border: 1px solid #dbe4eb;
  border-radius: 8px;
  background: #fff;
}
.ow-hash-examples summary {
  padding: 9px 11px;
  color: #42617b;
  font-size: 9px;
  font-weight: 800;
  cursor: pointer;
}
.ow-hash-examples pre {
  margin: 0;
  padding: 11px;
  overflow-x: auto;
  border-top: 1px solid #e3e9ef;
  color: #bfeceb;
  background: #112942;
  font-size: 8px;
}
.ow-primary-button,
.ow-secondary-button,
.ow-one-time-secret button,
.ow-event-table button {
  border: 0;
  border-radius: 8px;
  padding: 9px 13px;
  font: inherit;
  font-size: 9px;
  font-weight: 850;
  cursor: pointer;
}
.ow-primary-button {
  color: #fff;
  background: #174f85;
}
.ow-secondary-button,
.ow-one-time-secret button {
  border: 1px solid #cddae5;
  color: #315e7b;
  background: #fff;
}
.ow-one-time-secret {
  display: grid;
  gap: 8px;
  margin: 14px 0;
  padding: 12px;
  border: 1px solid #efd48a;
  border-radius: 10px;
  background: #fff9e8;
}
.ow-one-time-secret strong {
  color: #745400;
  font-size: 9px;
}
.ow-one-time-secret textarea {
  width: 100%;
  border: 1px solid #dfcb94;
  border-radius: 7px;
  padding: 8px;
  resize: none;
  font: 9px/1.5 Consolas, monospace;
}
.ow-one-time-secret button {
  justify-self: start;
}
.ow-specific-intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 18px;
}
.ow-specific-intro > p {
  max-width: 470px;
}
.ow-event-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: end;
  gap: 13px;
  padding: 17px;
  border: 1px solid #dce5ec;
  border-radius: 12px;
  background: #f8fafc;
}
.ow-event-form label {
  display: grid;
  gap: 6px;
  color: #53647a;
  font-size: 10px;
  font-weight: 800;
}
.ow-event-form .wide,
.ow-event-form > .wide {
  grid-column: span 2;
}
.ow-event-form button {
  min-height: 39px;
}
.ow-event-table-wrap {
  margin-top: 18px;
  overflow-x: auto;
  border: 1px solid #e1e7ed;
  border-radius: 11px;
}
.ow-event-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 9px;
}
.ow-event-table th,
.ow-event-table td {
  padding: 11px;
  border-bottom: 1px solid #edf0f4;
  text-align: left;
  white-space: nowrap;
}
.ow-event-table th {
  color: #708095;
  background: #f7f9fb;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-size: 8px;
}
.ow-event-table code {
  color: #526e82;
  font-size: 8px;
}
.ow-event-table form {
  display: flex;
  gap: 5px;
}
.ow-event-table button {
  padding: 6px 8px;
  color: #355f7c;
  background: #edf3f7;
}
.ow-event-table button.danger {
  color: #a13e4d;
  background: #fff0f2;
}
.ow-rule-status {
  padding: 4px 7px;
  border-radius: 999px;
  color: #7a8795;
  background: #eef1f4;
  font-weight: 850;
}
.ow-rule-status.active {
  color: #0b7857;
  background: #e8f8f1;
}
.ow-table-empty {
  padding: 28px !important;
  color: #8794a3;
  text-align: center !important;
}
.ow-upload-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 22px;
}
.ow-upload-card {
  display: grid;
  grid-template-columns: 100px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  padding: 18px;
  border: 1px solid #dfe7ed;
  border-radius: 13px;
  background: #f9fbfc;
}
.ow-upload-preview {
  display: grid;
  place-items: center;
  height: 82px;
  overflow: hidden;
  border: 1px dashed #bdcbd7;
  border-radius: 11px;
  color: #21808b;
  background: #fff;
  font-size: 25px;
  font-weight: 900;
}
.ow-upload-preview img {
  max-width: 90%;
  max-height: 70px;
  object-fit: contain;
}
.ow-upload-card input[type='file'] {
  width: 100%;
  color: #6b7a8d;
  font-size: 9px;
}
.ow-integration-tabs {
  overflow-x: auto;
}
.ow-integration-tabs button {
  white-space: nowrap;
}
.ow-integration-panel {
  padding: 20px 24px 24px;
}
.ow-api-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.ow-api-details section {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 13px;
  border: 1px solid #dfe7ed;
  border-radius: 10px;
  background: #f9fbfc;
}
.ow-api-details span {
  color: #79889a;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: 8px;
  font-weight: 850;
}
.ow-api-details strong {
  overflow: hidden;
  color: #2c4a65;
  font: 9px Consolas, monospace;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ow-inline-action {
  margin: 12px 0 16px;
}
.ow-schema-card h3 {
  margin-top: 0;
}
.ow-schema-card dl {
  margin: 8px 0 0;
}
.ow-schema-card dl div {
  display: grid;
  grid-template-columns: 95px 1fr;
  gap: 8px;
  padding: 7px 0;
  border-top: 1px solid #e7ebef;
  font-size: 9px;
}
.ow-schema-card dt {
  color: #087585;
  font-family: Consolas, monospace;
  font-weight: 850;
}
.ow-schema-card dd {
  margin: 0;
  color: #748396;
}
.ow-response-example {
  margin-top: 14px;
}
.ow-guide {
  margin-bottom: 14px;
}
.ow-guide ol {
  margin: 12px 0 0;
  padding-left: 20px;
  color: #63758a;
  font-size: 9px;
  line-height: 1.8;
}
.ow-integration-panel .ow-iframe-preview {
  margin-top: 14px;
}
.ow-wall-logo {
  max-width: 200px;
  max-height: 51px;
  object-fit: contain;
}
.ow-currency-icon {
  width: 20px;
  height: 20px;
  margin-right: 5px;
  object-fit: contain;
  vertical-align: middle;
}
@media (max-width: 980px) {
  .ow-macro-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .ow-settings-utility-grid,
  .ow-upload-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  .ow-settings-heading {
    align-items: stretch;
    flex-direction: column;
  }
  .ow-settings-open-wall {
    text-align: center;
  }
  .ow-choice-fieldset ul,
  .ow-content-types ul,
  .ow-postback-options,
  .ow-mapping-grid,
  .ow-event-form,
  .ow-api-details {
    grid-template-columns: 1fr;
  }
  .ow-event-form .wide,
  .ow-event-form > .wide {
    grid-column: auto;
  }
  .ow-reward-simulator,
  .ow-specific-intro {
    align-items: flex-start;
    flex-direction: column;
  }
  .ow-reward-simulator > small {
    margin-left: 0;
  }
  .ow-macro-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ow-upload-card {
    grid-template-columns: 1fr;
  }
  .ow-settings-tabs,
  .ow-subtabs {
    overflow-x: auto;
  }
}
.ow-monthly-billing-date{display:grid;gap:5px;margin:8px 0 17px;padding:16px;border:1px solid #dce7f5;border-radius:14px;background:linear-gradient(145deg,#f4f8ff,#eef9fb)}.ow-monthly-billing-date small{color:#6f8198;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.ow-monthly-billing-date strong{color:#173a64;font-size:22px}.ow-monthly-billing-rules{display:grid;gap:9px;margin:16px 0 0;padding:0;list-style:none}.ow-monthly-billing-rules li{position:relative;padding-left:20px;color:#667990;font-size:12px;line-height:1.5}.ow-monthly-billing-rules li:before{content:'✓';position:absolute;left:0;color:#1aa878;font-weight:800}

.ow-respondent-gate {
  min-height: calc(100vh - 180px);
  display: grid;
  place-items: center;
  padding: 30px 18px;
}
.ow-respondent-card {
  width: min(660px, 100%);
  border: 1px solid #dce5ef;
  border-radius: 24px;
  padding: 34px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(18, 34, 60, 0.12);
}
.ow-respondent-card > header {
  display: flex;
  align-items: center;
  gap: 15px;
}
.ow-respondent-mark {
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 16px;
  color: #fff;
  background: linear-gradient(145deg, #123d70, #147f9a);
  font-size: 24px;
}
.ow-respondent-card header small {
  color: #12849a;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.ow-respondent-card h1 {
  margin: 4px 0 0;
  color: #142844;
  font-size: clamp(25px, 4vw, 34px);
}
.ow-respondent-intro,
.ow-respondent-privacy {
  color: #66778c;
  line-height: 1.65;
}
.ow-respondent-intro {
  margin: 22px 0;
}
.ow-respondent-privacy {
  margin: 18px 0 0;
  font-size: 12px;
}
.ow-respondent-form {
  display: grid;
  gap: 16px;
}
.ow-respondent-form label:not(.ow-respondent-consent) {
  display: grid;
  gap: 7px;
  color: #34465e;
  font-size: 13px;
  font-weight: 800;
}
.ow-respondent-form input:not([type="checkbox"]),
.ow-respondent-form select {
  width: 100%;
  min-height: 48px;
  border: 1px solid #ccd8e5;
  border-radius: 10px;
  padding: 0 13px;
  color: #142844;
  background: #fff;
  font: inherit;
}
.ow-respondent-form input:focus,
.ow-respondent-form select:focus {
  border-color: #168da2;
  outline: 3px solid rgba(22, 141, 162, 0.12);
}
.ow-respondent-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.ow-respondent-consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #586a81;
  font-size: 12px;
  line-height: 1.5;
}
.ow-respondent-consent input {
  margin-top: 3px;
}
.ow-respondent-form button {
  min-height: 49px;
  border: 0;
  border-radius: 10px;
  color: #fff;
  background: #123d70;
  cursor: pointer;
  font-weight: 850;
}
.ow-respondent-form .errorlist {
  margin: 0;
  padding: 0;
  color: #b33248;
  list-style: none;
  font-size: 12px;
  font-weight: 650;
}
.ow-verification-form input {
  text-align: center;
  letter-spacing: 0.38em;
  font-size: 22px !important;
  font-weight: 850 !important;
}
.ow-respondent-notice {
  margin: 0 0 18px;
  border: 1px solid #bee7dc;
  border-radius: 10px;
  padding: 12px 14px;
  color: #176b58;
  background: #effaf7;
  font-size: 13px;
}
.ow-respondent-secondary-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 14px;
}
.ow-respondent-secondary-actions form {
  margin: 0;
}
.ow-respondent-secondary-actions button,
.ow-respondent-secondary-actions a {
  border: 0;
  padding: 0;
  color: #126b80;
  background: transparent;
  cursor: pointer;
  font-size: 13px;
  font-weight: 800;
}
.ow-respondent-card > footer {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  margin-top: 22px;
  border-top: 1px solid #e5ebf1;
  padding-top: 15px;
  color: #75849a;
  font-size: 12px;
}
.ow-respondent-card > footer code {
  overflow-wrap: anywhere;
  color: #283e5c;
}
.ow-embed-body[data-ow-theme="dark"] .ow-respondent-card h1,
.ow-embed-body[data-ow-theme="dark"] .ow-respondent-card > footer code { color: var(--ow-text); }
.ow-embed-body[data-ow-theme="dark"] .ow-respondent-intro,
.ow-embed-body[data-ow-theme="dark"] .ow-respondent-privacy,
.ow-embed-body[data-ow-theme="dark"] .ow-respondent-consent,
.ow-embed-body[data-ow-theme="dark"] .ow-respondent-card > footer { color: var(--ow-subtle); }
.ow-embed-body[data-ow-theme="dark"] .ow-respondent-card > footer { border-color: var(--ow-border); }
@media (prefers-color-scheme: dark) {
  .ow-embed-body[data-ow-theme="auto"] .ow-respondent-card h1,
  .ow-embed-body[data-ow-theme="auto"] .ow-respondent-card > footer code { color: var(--ow-text); }
  .ow-embed-body[data-ow-theme="auto"] .ow-respondent-intro,
  .ow-embed-body[data-ow-theme="auto"] .ow-respondent-privacy,
  .ow-embed-body[data-ow-theme="auto"] .ow-respondent-consent,
  .ow-embed-body[data-ow-theme="auto"] .ow-respondent-card > footer { color: var(--ow-subtle); }
  .ow-embed-body[data-ow-theme="auto"] .ow-respondent-card > footer { border-color: var(--ow-border); }
}
.ow-respondent-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 22px 0;
}
.ow-respondent-stats article {
  border: 1px solid #e0e6ed;
  border-radius: 13px;
  padding: 18px;
  background: #fff;
}
.ow-respondent-stats span {
  display: block;
  color: #6c7a8f;
  font-size: 12px;
}
.ow-respondent-stats strong {
  display: block;
  margin-top: 8px;
  color: #173555;
  font-size: 27px;
}
.ow-respondent-filters {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 190px auto;
  gap: 10px;
  margin-bottom: 16px;
}
.ow-respondent-filters input,
.ow-respondent-filters select,
.ow-respondent-filters button {
  min-height: 44px;
  border: 1px solid #d9e1e9;
  border-radius: 9px;
  padding: 0 12px;
  background: #fff;
}
.ow-respondent-filters button {
  border-color: #123d70;
  color: #fff;
  background: #123d70;
  cursor: pointer;
  font-weight: 800;
}
.ow-respondent-table-wrap {
  overflow-x: auto;
  border: 1px solid #e0e6ed;
  border-radius: 13px;
  background: #fff;
}
.ow-respondent-table {
  width: 100%;
  min-width: 1120px;
  border-collapse: collapse;
}
.ow-respondent-table th,
.ow-respondent-table td {
  border-bottom: 1px solid #edf1f5;
  padding: 14px;
  text-align: left;
  vertical-align: top;
  font-size: 12px;
}
.ow-respondent-table th {
  color: #617188;
  background: #f7f9fb;
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.ow-respondent-table td > strong,
.ow-respondent-table td > span,
.ow-respondent-table td > small,
.ow-respondent-table td > code {
  display: block;
  margin-bottom: 4px;
}
.ow-respondent-table td > small {
  color: #728197;
}
.ow-respondent-table td > code {
  color: #1c6f83;
}
.ow-respondent-status {
  display: inline-flex !important;
  border-radius: 999px;
  padding: 6px 9px;
  font-size: 11px;
  font-weight: 850;
}
.ow-respondent-status.verified { color: #087455; background: #e8f8f2; }
.ow-respondent-status.pending { color: #9a6416; background: #fff5df; }
.ow-respondent-status.banned { color: #a52e42; background: #fdecef; }
.ow-respondent-action {
  display: grid;
  gap: 7px;
}
.ow-respondent-action input {
  width: 150px;
  border: 1px solid #d8e0e8;
  border-radius: 7px;
  padding: 7px 8px;
  font-size: 11px;
}
.ow-respondent-action button {
  border: 0;
  border-radius: 7px;
  padding: 8px 11px;
  cursor: pointer;
  font-weight: 800;
}
.ow-respondent-action .ban { color: #fff; background: #be3b50; }
.ow-respondent-action .unban { color: #0b6c53; background: #dcf6ee; }
.ow-respondent-empty {
  padding: 42px !important;
  color: #718096;
  text-align: center !important;
}

.ow-wall-heading-side {
  display: grid;
  justify-items: end;
  gap: 12px;
}

.ow-profile-completion {
  width: min(280px, 100%);
  padding: 12px 14px;
  border: 1px solid #dce8ee;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.88);
}

.ow-profile-completion > span,
.ow-profile-completion > small {
  display: block;
}

.ow-profile-completion > span {
  color: #102544;
  font-size: 12px;
  font-weight: 800;
}

.ow-profile-completion > small {
  margin-top: 7px;
  color: #728098;
  font-size: 10px;
  line-height: 1.4;
}

.ow-profile-completion > i {
  display: block;
  height: 5px;
  margin-top: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e5edf2;
}

.ow-profile-completion > i > b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #08a8c7, #1265cb);
}

.ow-why-matched {
  display: grid;
  gap: 3px;
  margin: 14px 0 2px;
  padding: 10px 12px;
  border: 1px solid #d9edf2;
  border-radius: 11px;
  background: #f4fbfc;
}

.ow-why-matched strong {
  color: #07849d;
  font-size: 9px;
  letter-spacing: .65px;
  text-transform: uppercase;
}

.ow-why-matched span {
  color: #596b80;
  font-size: 10px;
  line-height: 1.45;
}

@media (max-width: 900px) {
  .ow-respondent-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ow-respondent-filters { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .ow-respondent-card { padding: 24px 18px; border-radius: 18px; }
  .ow-respondent-grid,
  .ow-respondent-stats { grid-template-columns: 1fr; }
  .ow-respondent-card > footer { display: grid; }
}

/* OpinionUniverse parity pass */
.ow-support-mode-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 24px;color:#fff;background:linear-gradient(110deg,#7c2d12,#c2410c);box-shadow:0 8px 24px rgba(124,45,18,.2)}
.ow-support-mode-banner div{display:grid;gap:2px}.ow-support-mode-banner strong{font-size:14px}.ow-support-mode-banner span{font-size:12px;opacity:.88}.ow-support-mode-banner button{border:1px solid rgba(255,255,255,.55);border-radius:9px;padding:8px 12px;color:#fff;background:rgba(255,255,255,.12);font:inherit;font-weight:800;cursor:pointer}
.ow-payment-profile-form{max-width:1120px;margin:24px auto 0}.ow-payment-saved{display:grid;gap:4px;margin:0 0 20px;padding:14px 16px;border:1px solid #bfe3d2;border-radius:12px;background:#effaf5}.ow-payment-saved strong{color:#176447}.ow-payment-saved span{font-weight:800;color:#173b32}.ow-payment-saved small{color:#5e746d}
@media(max-width:720px){.ow-support-mode-banner{align-items:flex-start;flex-direction:column;padding:12px 16px}.ow-support-mode-banner form,.ow-support-mode-banner button{width:100%}}

:root {
  --ou-orange: #f36b21;
  --ou-ink: #20242d;
  --ou-muted: #7b8190;
  --ou-border: #e7e8ec;
  --ou-bg: #f8f8fa;
}
.ow-supplier-body {
  background: var(--ou-bg);
}
.ow-supplier-sidebar {
  width: 252px;
  border-right: 1px solid #ececef;
  color: #535865;
  background: #fff;
  box-shadow: none;
}
.ow-supplier-brand {
  min-height: 108px;
  justify-content: center;
  color: var(--ou-orange);
}
.ow-supplier-brand .ow-brand-mark {
  filter: hue-rotate(155deg) saturate(1.4);
}
.ow-supplier-brand span:last-child strong {
  color: #f06822;
}
.ow-supplier-nav {
  padding: 12px 20px;
}
.ow-supplier-nav a {
  min-height: 43px;
  margin: 2px 0;
  border-radius: 8px;
  color: #545b68;
  font-size: 12px;
  font-weight: 650;
}
.ow-supplier-nav a span {
  color: #707785;
}
.ow-supplier-nav a:hover,
.ow-supplier-nav a.active {
  color: var(--ou-orange);
  background: #fff7f2;
}
.ow-supplier-nav a.active::before {
  background: var(--ou-orange);
}
.ow-supplier-account {
  display: none;
}
.ow-supplier-stage {
  margin-left: 252px;
}
.ow-supplier-toolbar {
  min-height: 82px;
  border-bottom: 1px solid #ededf0;
  padding: 0 38px;
  background: #fff;
}
.ow-supplier-toolbar > div:first-child small {
  color: #3c414a;
  text-transform: none;
  letter-spacing: 0;
  font-size: 13px;
  font-weight: 700;
}
.ow-ou-account {
  position: relative;
}
.ow-ou-account summary {
  display: flex;
  align-items: center;
  gap: 16px;
  list-style: none;
  cursor: pointer;
}
.ow-ou-account summary::-webkit-details-marker {
  display: none;
}
.ow-ou-account summary strong {
  border: 1px solid #e4e5e9;
  border-radius: 8px;
  padding: 10px 14px;
  color: var(--ou-orange);
  background: #fff;
  font-size: 13px;
}
.ow-ou-account summary span {
  color: #343842;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}
.ow-ou-account summary i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 9px;
  color: #fff;
  background: var(--ou-orange);
  font-style: normal;
  font-weight: 850;
}
.ow-ou-account form {
  position: absolute;
  z-index: 20;
  top: 48px;
  right: 0;
  min-width: 130px;
  padding: 7px;
  border: 1px solid var(--ou-border);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 25px rgba(20, 25, 35, .1);
}
.ow-ou-account form button {
  width: 100%;
  border: 0;
  padding: 9px;
  color: #555c68;
  background: #fff;
  text-align: left;
  cursor: pointer;
}
.ow-supplier-main {
  max-width: 1180px;
  padding: 40px 28px 70px;
}
.ow-ou-placements-page .ow-apps-heading {
  margin-bottom: 24px;
}
.ow-ou-placements-page .ow-apps-heading h1 {
  color: var(--ou-ink);
  font-size: 24px;
}
.ow-ou-placements-page .ow-apps-heading p {
  color: #777d89;
  font-size: 11px;
}
.ow-ou-placements-page .ow-add-placement,
.ow-ou-orange-button {
  min-height: 38px;
  border: 0;
  border-radius: 6px;
  padding: 0 16px;
  color: #fff;
  background: var(--ou-orange);
  box-shadow: none;
  font-weight: 750;
}
.ow-ou-placements-page .ow-apps-table-card {
  border: 1px solid var(--ou-border);
  border-radius: 8px;
  box-shadow: none;
}
.ow-ou-placements-page .ow-apps-table th {
  padding: 15px 20px;
  color: #747a87;
  background: #fbfbfc;
  font-size: 9px;
}
.ow-ou-placements-page .ow-apps-table td {
  padding: 17px 20px;
  font-size: 10px;
}
.ow-app-favicon-image {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  object-fit: contain;
  background: #f6f6f8;
}
.ow-ou-placements-page .ow-app-cell strong {
  color: #333842;
  font-size: 11px;
}
.ow-ou-placements-page .ow-app-cell small {
  color: #969ba5;
  font-size: 8px;
}
.ow-ou-placements-page .ow-placement-state {
  padding: 5px 9px;
  border-radius: 4px;
  color: #1d915f;
  background: #e9f8f0;
  font-size: 8px;
}
.ow-ou-placements-page .ow-placement-revenue {
  color: #333943;
}
.ow-ou-placements-page .ow-apps-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 20px;
}
.ow-ou-placements-page .ow-apps-footer nav {
  display: flex;
  align-items: center;
  gap: 7px;
}
.ow-ou-placements-page .ow-apps-footer nav a,
.ow-ou-placements-page .ow-apps-footer nav span,
.ow-ou-placements-page .ow-apps-footer nav b {
  border: 1px solid #e0e2e6;
  border-radius: 5px;
  padding: 6px 9px;
  color: #757b87;
  background: #fff;
  text-decoration: none;
  font-size: 8px;
}
.ow-ou-placements-page .ow-apps-footer nav b {
  border-color: var(--ou-orange);
  color: #fff;
  background: var(--ou-orange);
}
.ow-placement-actions div {
  min-width: 105px;
}
.ow-placement-actions div form,
.ow-placement-actions div a {
  display: block;
}
.ow-placement-actions div button,
.ow-placement-actions div a {
  width: 100%;
  border: 0;
  padding: 9px 11px;
  color: #555c69;
  background: #fff;
  text-align: left;
  text-decoration: none;
  font-size: 9px;
  cursor: pointer;
}
.ow-placement-actions div button.danger {
  color: #d6504c;
}
.ow-placement-modal::backdrop {
  background: rgba(21, 24, 30, .42);
}
.ow-placement-create-form header {
  padding: 18px 22px;
}
.ow-placement-create-form header h2 {
  color: #282d36;
  font-size: 15px;
}
.ow-placement-create-form fieldset,
.ow-placement-url-field {
  padding: 20px 22px 0;
}
.ow-platform-options label:has(input:checked) {
  border-color: var(--ou-orange);
  color: var(--ou-orange);
  background: #fff7f2;
  box-shadow: inset 0 0 0 1px var(--ou-orange);
}
.ow-modal-submit {
  background: var(--ou-orange);
}
.ow-ou-settings {
  overflow: hidden;
  border: 1px solid var(--ou-border);
  border-radius: 8px;
  background: #fff;
}
.ow-ou-settings-tabs {
  display: flex;
  min-height: 62px;
  padding: 0 18px;
  border-bottom: 1px solid var(--ou-border);
}
.ow-ou-settings-tabs button {
  position: relative;
  min-width: 120px;
  border: 0;
  padding: 0 18px;
  color: #737985;
  background: transparent;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}
.ow-ou-settings-tabs button i {
  width: 25px;
  height: 25px;
  margin-right: 8px;
  display: inline-grid;
  place-items: center;
  border-radius: 6px;
  color: #6f7681;
  background: #f4f4f6;
  font-style: normal;
}
.ow-ou-settings-tabs button.active {
  color: var(--ou-orange);
}
.ow-ou-settings-tabs button.active::after {
  position: absolute;
  right: 8px;
  bottom: 0;
  left: 8px;
  height: 2px;
  content: '';
  background: var(--ou-orange);
}
.ow-ou-settings-tabs button.active i {
  color: var(--ou-orange);
  background: #fff2e9;
}
.ow-ou-panel {
  padding: 20px;
}
.ow-ou-panel[hidden],
[data-postback-panel][hidden] {
  display: none !important;
}
.ow-ou-info {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
  border: 1px solid #d7e8ff;
  border-radius: 10px;
  padding: 16px;
  color: #3e74ba;
  background: #eef6ff;
  font-size: 10px;
  line-height: 1.6;
}
.ow-ou-card {
  position: relative;
  margin-bottom: 18px;
  border: 1px solid var(--ou-border);
  border-radius: 10px;
  background: #fff;
}
.ow-ou-card > h2 {
  margin: 0;
  padding: 16px 20px;
  border-bottom: 1px solid var(--ou-border);
  color: #252a33;
  text-transform: uppercase;
  letter-spacing: .04em;
  font-size: 11px;
}
.ow-ou-card > form,
.ow-ou-card > p,
.ow-ou-card > .ow-ou-content-types,
.ow-ou-card > div:not(.ow-ou-content-types) {
  margin: 0;
  padding: 20px;
}
.ow-ou-general-grid,
.ow-ou-currency-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.ow-ou-general-grid label,
.ow-ou-currency-grid label,
.ow-ou-field {
  display: grid;
  gap: 8px;
  color: #30343c;
  font-size: 10px;
}
.ow-ou-general-grid label.wide {
  grid-column: 1 / -1;
}
.ow-ou-general-grid b,
.ow-ou-currency-grid b,
.ow-ou-field > b {
  font-size: 10px;
}
.ow-ou-general-grid input,
.ow-ou-currency-grid input,
.ow-ou-currency-grid select,
.ow-ou-field input,
.ow-ou-field select {
  width: 100%;
  min-height: 39px;
  border: 1px solid #e2e4e8;
  border-radius: 7px;
  padding: 0 12px;
  color: #5f6570;
  background: #fff;
  font: inherit;
}
.ow-ou-general-grid input:disabled {
  color: #858a94;
  background: #f3f3f5;
}
.ow-ou-general-grid small,
.ow-ou-currency-grid small {
  color: #a0a4ad;
  font-size: 8px;
  font-style: italic;
  line-height: 1.45;
}
.ow-ou-traffic {
  margin: 22px 0 0;
  padding: 0;
  border: 0;
}
.ow-ou-traffic legend {
  color: #30343c;
  font-size: 10px;
  font-weight: 800;
}
.ow-ou-traffic > div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 10px;
}
.ow-ou-traffic label {
  position: relative;
  min-height: 82px;
  border: 1px solid #e1e3e7;
  border-radius: 8px;
  padding: 13px;
  cursor: pointer;
}
.ow-ou-traffic input {
  position: absolute;
  opacity: 0;
}
.ow-ou-traffic label:has(input:checked) {
  border-color: var(--ou-orange);
  background: #fff9f5;
  box-shadow: inset 0 0 0 1px var(--ou-orange);
}
.ow-ou-traffic span {
  display: grid;
  gap: 4px;
}
.ow-ou-traffic b {
  color: #353943;
  font-size: 11px;
}
.ow-ou-traffic small {
  color: var(--ou-orange);
  font-size: 8px;
  font-weight: 800;
}
.ow-ou-traffic em {
  color: #8b9099;
  font-size: 8px;
  font-style: normal;
}
.ow-ou-traffic > p,
.ow-ou-help {
  margin: 8px 0 0;
  color: #9398a1;
  font-size: 8px;
}
.ow-ou-form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 9px;
  margin-top: 22px;
}
.ow-ou-form-actions.between {
  justify-content: space-between;
}
.ow-ou-form-actions span {
  display: flex;
  gap: 8px;
}
.ow-ou-form-actions button,
.ow-ou-form-actions a,
.ow-reset-secret button {
  min-height: 35px;
  border: 1px solid var(--ou-orange);
  border-radius: 6px;
  padding: 0 14px;
  color: #fff;
  background: var(--ou-orange);
  text-decoration: none;
  font: inherit;
  font-size: 9px;
  font-weight: 750;
  cursor: pointer;
}
.ow-ou-form-actions a {
  display: grid;
  place-items: center;
  border-color: #dadde2;
  color: #666c77;
  background: #fff;
}
.ow-ou-form-actions button.secondary {
  border-color: #dadde2;
  color: #666c77;
  background: #fff;
}
.ow-ou-currency-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.ow-ou-currency-grid i,
.ow-ou-field i {
  color: #e14f45;
  font-style: normal;
}
.ow-input-suffix {
  position: relative;
}
.ow-input-suffix em {
  position: absolute;
  top: 12px;
  right: 12px;
  color: #888e98;
  font-style: normal;
}
.ow-ou-simulation {
  margin-top: 22px;
  border: 1px solid #f1d7c8;
  border-radius: 9px;
  padding: 16px;
  background: #fffaf7;
}
.ow-ou-simulation > strong {
  color: #333842;
  font-size: 10px;
}
.ow-ou-simulation > div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
  padding: 20px 0;
}
.ow-ou-simulation span {
  display: grid;
  gap: 4px;
  text-align: center;
}
.ow-ou-simulation span small {
  color: #90959e;
  font-size: 8px;
}
.ow-ou-simulation span b {
  color: #393e48;
  font-size: 18px;
}
.ow-ou-simulation span.result b,
.ow-ou-simulation span.result em {
  color: var(--ou-orange);
}
.ow-ou-simulation em {
  color: #747a84;
  font-size: 9px;
  font-style: normal;
}
.ow-ou-simulation > p {
  margin: 0;
  border-radius: 6px;
  padding: 10px;
  color: #7e8490;
  background: #fff;
  font-size: 8px;
  text-align: center;
}
.ow-ou-subtabs {
  display: flex;
  gap: 18px;
  margin: -20px -20px 20px;
  padding: 0 20px;
  border-bottom: 1px solid var(--ou-border);
}
.ow-ou-subtabs button {
  position: relative;
  border: 0;
  padding: 16px 8px;
  color: #737984;
  background: transparent;
  font: inherit;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}
.ow-ou-subtabs button.active {
  color: var(--ou-orange);
}
.ow-ou-subtabs button.active::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  content: '';
  background: var(--ou-orange);
}
.ow-ou-postback-card {
  padding-top: 10px;
}
.ow-ou-clearable,
.ow-clearable {
  position: relative;
  display: block;
}
.ow-clearable button {
  position: absolute;
  top: 6px;
  right: 7px;
  width: 27px;
  height: 27px;
  border: 0;
  color: #8a909a;
  background: transparent;
  cursor: pointer;
}
.ow-ou-checkbox {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 13px;
  color: #575d68;
  font-size: 9px;
}
.ow-ou-checkbox input {
  accent-color: var(--ou-orange);
}
.ow-ou-macros,
.ow-ou-security {
  margin-top: 24px;
  border-top: 1px solid var(--ou-border);
  padding-top: 20px;
}
.ow-ou-macros h3,
.ow-ou-security h3,
.ow-ou-specific-list h2,
.ow-ou-doc-section h3 {
  margin: 0 0 14px;
  color: #2c313a;
  font-size: 13px;
}
.ow-ou-macros > p {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 10px;
  margin: 0;
  padding: 7px 0;
  color: #777d88;
  font-size: 8px;
}
.ow-ou-macros strong {
  color: #343943;
  font-family: Consolas, monospace;
}
.ow-ou-macros > div {
  display: grid;
  gap: 7px;
  margin-top: 12px;
  border-radius: 7px;
  padding: 12px;
  color: #5e6570;
  background: #f7f7f9;
  font-size: 8px;
}
.ow-ou-macros code {
  overflow-wrap: anywhere;
  color: #505762;
}
.ow-ou-secret-line {
  display: flex;
  align-items: center;
  gap: 10px;
}
.ow-ou-secret-line > span {
  flex: 1;
  display: grid;
  gap: 6px;
}
.ow-ou-secret-line small,
.ow-ou-hash-grid span {
  color: #777d88;
  font-size: 8px;
}
.ow-ou-secret-line code {
  border: 1px solid #e2e4e8;
  border-radius: 6px;
  padding: 10px;
  color: #3c424c;
  background: #f8f8fa;
  font-size: 8px;
  overflow-wrap: anywhere;
}
.ow-ou-secret-line button,
.ow-ou-hash-grid button {
  border: 0;
  color: var(--ou-orange);
  background: transparent;
  font-size: 8px;
  cursor: pointer;
}
.ow-ou-security > p {
  color: #8a909a;
  font-size: 8px;
}
.ow-ou-hash-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.ow-ou-hash-grid > div {
  position: relative;
}
.ow-ou-hash-grid button {
  position: absolute;
  top: 0;
  right: 0;
}
.ow-ou-hash-grid pre {
  min-height: 105px;
  overflow: auto;
  border-radius: 7px;
  padding: 12px;
  color: #d4e6ef;
  background: #172534;
  font-size: 8px;
  line-height: 1.6;
}
.ow-reset-secret {
  position: absolute;
  top: 12px;
  right: 18px;
}
.ow-reset-secret button {
  min-height: 30px;
  border-color: #d8dbe0;
  color: #606772;
  background: #fff;
  font-size: 8px;
}
.ow-ou-specific-list header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}
.ow-ou-specific-list header h2,
.ow-ou-specific-list header p {
  margin: 0 0 5px;
}
.ow-ou-specific-list header p {
  color: #858b95;
  font-size: 9px;
}
.ow-ou-specific-list header a {
  border-radius: 6px;
  padding: 10px 13px;
  color: #fff;
  background: var(--ou-orange);
  text-decoration: none;
  font-size: 9px;
  font-weight: 750;
}
.ow-event-table td strong,
.ow-event-table td small,
.ow-event-table td code {
  display: block;
  margin: 2px 0;
}
.ow-ou-design-title {
  margin-bottom: 20px;
}
.ow-ou-design-title h2,
.ow-ou-integrations > h2 {
  margin: 0 0 5px;
  color: #2c313a;
  font-size: 14px;
}
.ow-ou-design-title p {
  margin: 0;
  color: #858b96;
  font-size: 9px;
}
.ow-ou-content-types > div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.ow-ou-content-types > div > div label {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
  border: 1px solid #dfe2e7;
  border-radius: 7px;
  color: #5d636f;
  background: #fff;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}
.ow-ou-content-types label:has(input:checked) {
  border-color: var(--ou-orange);
  color: var(--ou-orange);
  background: #fff8f3;
}
.ow-ou-content-types input {
  position: absolute;
  opacity: 0;
}
.ow-ou-branding > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.ow-ou-branding article {
  border: 1px solid #e2e4e8;
  border-radius: 8px;
  padding: 16px;
}
.ow-ou-branding article h3 {
  margin: 0 0 5px;
  color: #343943;
  font-size: 11px;
}
.ow-ou-branding article p,
.ow-ou-branding article li {
  color: #858b96;
  font-size: 8px;
  line-height: 1.5;
}
.ow-ou-branding article img {
  max-width: 25px;
  max-height: 25px;
  object-fit: contain;
}
.ow-ou-branding article img.logo {
  max-width: 200px;
  max-height: 51px;
}
.ow-ou-branding article > label {
  display: inline-grid;
  margin-top: 10px;
  border: 1px solid #dcdfe4;
  border-radius: 6px;
  padding: 8px 11px;
  color: #626974;
  font-size: 8px;
  font-weight: 750;
  cursor: pointer;
}
.ow-ou-branding input[type=file] {
  display: none;
}
.ow-ou-integrations {
  padding: 24px;
}
.ow-ou-quick-label,
.ow-ou-section-kicker {
  color: var(--ou-orange);
  font-size: 8px;
  font-weight: 850;
  text-transform: uppercase;
}
.ow-ou-integration-jumps {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 9px;
  margin: 10px 0;
}
.ow-ou-integration-jumps button {
  border: 1px solid #e0e2e6;
  border-radius: 6px;
  padding: 10px 7px;
  color: #656b76;
  background: #fff;
  font: inherit;
  font-size: 8px;
  font-weight: 750;
  cursor: pointer;
}
.ow-ou-integration-jumps button:hover {
  border-color: var(--ou-orange);
  color: var(--ou-orange);
}
.ow-ou-jump-help,
.ow-ou-warning {
  color: #8c919b;
  font-size: 8px;
  text-align: center;
}
.ow-ou-doc-section {
  scroll-margin-top: 20px;
  margin-top: 25px;
  border-top: 1px solid var(--ou-border);
  padding-top: 24px;
}
.ow-ou-doc-section h4 {
  margin: 20px 0 8px;
  color: #333842;
  font-size: 11px;
}
.ow-ou-doc-section > p,
.ow-ou-doc-section > ul {
  color: #737a86;
  font-size: 8px;
  line-height: 1.7;
}
.ow-iframe-preview {
  margin-top: 18px;
  border: 1px solid #dfe4eb;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}
.ow-iframe-preview summary {
  padding: 14px 16px;
  color: #26364d;
  background: #f7f9fc;
  cursor: pointer;
  font-size: 13px;
  font-weight: 800;
}
.ow-iframe-preview > div {
  padding: 12px;
}
.ow-iframe-preview iframe {
  display: block;
  min-height: 600px;
  border: 0;
  border-radius: 8px;
  background: #f5f7fb;
}
.ow-ou-api-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}
.ow-ou-api-details p {
  display: grid;
  grid-template-columns: 100px 1fr;
  align-items: center;
  gap: 8px;
  margin: 0;
  border: 1px solid #e1e3e7;
  border-radius: 7px;
  padding: 11px;
  color: #747a85;
  font-size: 8px;
}
.ow-ou-api-details code {
  overflow: hidden;
  color: #3b414b;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ow-ou-api-details em {
  justify-self: start;
  border-radius: 4px;
  padding: 3px 5px;
  color: #2d9668;
  background: #e9f8f1;
  font-style: normal;
  font-weight: 800;
}
.ow-ou-warning {
  color: #d45e33;
  text-align: left;
}
.ow-ou-param-list {
  border: 1px solid #e2e4e8;
  border-radius: 8px;
  overflow: hidden;
}
.ow-ou-param-list article {
  display: grid;
  grid-template-columns: 100px 80px 130px 1fr;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border-bottom: 1px solid #eceef1;
  font-size: 8px;
}
.ow-ou-param-list article:last-child {
  border-bottom: 0;
}
.ow-ou-param-list code {
  color: var(--ou-orange);
  font-weight: 850;
}
.ow-ou-param-list b {
  color: #c04f2d;
  font-size: 7px;
}
.ow-ou-param-list p {
  margin: 0;
  color: #767c87;
}
.ow-ou-url-code {
  display: block;
  margin: 10px 0 18px;
  border: 1px solid #e0e3e7;
  border-radius: 7px;
  padding: 12px;
  color: #4c5360;
  background: #f7f8fa;
  overflow-wrap: anywhere;
  font-size: 8px;
}
.ow-ou-specific-create {
  border: 1px solid var(--ou-border);
  border-radius: 9px;
  padding: 22px;
  background: #fff;
}
.ow-ou-specific-create > header h1 {
  margin: 0 0 5px;
  color: #2d323b;
  font-size: 18px;
}
.ow-ou-specific-create > header p {
  margin: 0 0 22px;
  color: #858b96;
  font-size: 9px;
}
.ow-ou-specific-create .ow-ou-field {
  margin-top: 16px;
}
@media (max-width: 900px) {
  .ow-supplier-sidebar {
    width: 210px;
  }
  .ow-supplier-stage {
    margin-left: 210px;
  }
  .ow-ou-settings-tabs,
  .ow-ou-integration-jumps {
    overflow-x: auto;
  }
  .ow-ou-settings-tabs button {
    min-width: 105px;
  }
  .ow-ou-integration-jumps {
    display: flex;
  }
  .ow-ou-integration-jumps button {
    min-width: 110px;
  }
  .ow-ou-general-grid,
  .ow-ou-traffic > div {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 700px) {
  .ow-supplier-stage {
    margin-left: 0;
  }
  .ow-supplier-toolbar {
    padding: 0 15px;
  }
  .ow-ou-account summary span {
    display: none;
  }
  .ow-ou-panel,
  .ow-ou-integrations {
    padding: 13px;
  }
  .ow-ou-currency-grid,
  .ow-ou-branding > div,
  .ow-ou-hash-grid,
  .ow-ou-api-details {
    grid-template-columns: 1fr;
  }
  .ow-ou-simulation > div {
    align-items: stretch;
    flex-direction: column;
  }
  .ow-ou-param-list article {
    grid-template-columns: 1fr;
  }
}

/* Analytics-first supplier dashboard and scalable table controls. */
.ow-analytics-dashboard {
  display: grid;
  gap: 18px;
  max-width: 1500px;
  margin: 0 auto;
}
.ow-dashboard-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}
.ow-dashboard-heading h1 {
  margin: 8px 0 4px;
  color: #122b49;
  font: 800 34px/1.12 'Manrope', sans-serif;
  letter-spacing: -.035em;
}
.ow-dashboard-heading p {
  margin: 0;
  color: #75859a;
  font-size: 14px;
}
.ow-dashboard-period {
  display: flex;
  gap: 4px;
  padding: 5px;
  border: 1px solid #dfe7f0;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(19, 43, 73, .05);
}
.ow-dashboard-period button {
  min-width: 54px;
  height: 35px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: #718197;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
.ow-dashboard-period button.active {
  color: #1763ce;
  background: #eaf2ff;
}
.ow-dashboard-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.ow-dashboard-metrics article {
  display: grid;
  gap: 6px;
  min-height: 128px;
  padding: 20px;
  border: 1px solid #e0e7ef;
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(20, 43, 72, .045);
}
.ow-dashboard-metrics article.primary {
  border-color: transparent;
  color: #fff;
  background: linear-gradient(145deg, #1762cd, #2782eb);
}
.ow-dashboard-metrics article.success {
  border-color: #cceadf;
  background: linear-gradient(145deg, #f5fffb, #eaf9f3);
}
.ow-dashboard-metrics article.balance {
  border-color: transparent;
  color: #fff;
  background: linear-gradient(145deg, #10375f, #155781);
}
.ow-dashboard-metrics span {
  color: #687990;
  font-size: 13px;
  font-weight: 700;
}
.ow-dashboard-metrics strong {
  color: #142d4a;
  font: 800 29px/1.1 'Manrope', sans-serif;
}
.ow-dashboard-metrics small {
  align-self: end;
  color: #8b99aa;
  font-size: 12px;
}
.ow-dashboard-metrics .primary span,
.ow-dashboard-metrics .primary strong,
.ow-dashboard-metrics .primary small,
.ow-dashboard-metrics .balance span,
.ow-dashboard-metrics .balance strong,
.ow-dashboard-metrics .balance small {
  color: #fff;
}
.ow-dashboard-metrics .primary small,
.ow-dashboard-metrics .balance small {
  opacity: .75;
}
.ow-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(340px, .75fr);
  gap: 18px;
}
.ow-dashboard-grid-wide {
  grid-template-columns: minmax(0, 1.7fr) minmax(360px, .72fr);
}
.ow-dashboard-card {
  min-width: 0;
  padding: 22px;
  border: 1px solid #e0e7ef;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(20, 43, 72, .045);
}
.ow-dashboard-card > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.ow-dashboard-card > header > div {
  display: grid;
  gap: 3px;
}
.ow-dashboard-card > header span,
.ow-dashboard-card > header small {
  color: #8090a5;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.ow-dashboard-card > header h2 {
  margin: 0;
  color: #19334f;
  font: 750 19px/1.25 'Manrope', sans-serif;
}
.ow-dashboard-card > header a {
  color: #1767d6;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}
.ow-dashboard-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  margin-top: 20px;
}
.ow-dashboard-legend span {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #61738b;
  font-size: 12px;
  font-weight: 650;
}
.ow-dashboard-legend span::before {
  width: 18px;
  height: 3px;
  border-radius: 5px;
  background: #a6b5c8;
  content: '';
}
.ow-dashboard-legend .click::before,
.ow-dashboard-legend .credit::before { background: #2471e8; }
.ow-dashboard-legend .complete::before { background: #1b9d71; }
.ow-dashboard-legend .reversal::before { background: #dc5368; }
.ow-dashboard-line-chart {
  margin-top: 14px;
}
.ow-dashboard-line-chart svg {
  display: block;
  width: 100%;
  height: 250px;
  overflow: visible;
}
.ow-dashboard-line-chart.compact svg { height: 225px; }
.ow-dashboard-line-chart line {
  stroke: #e8edf3;
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}
.ow-dashboard-line-chart polyline {
  fill: none;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
.ow-dashboard-line-chart .visit-line { stroke: #a5b4c6; }
.ow-dashboard-line-chart .click-line,
.ow-dashboard-line-chart .credit-line { stroke: #2471e8; }
.ow-dashboard-line-chart .complete-line { stroke: #1b9d71; }
.ow-dashboard-line-chart .reversal-line { stroke: #dc5368; }
.ow-dashboard-chart-labels {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  margin-top: 7px;
}
.ow-dashboard-chart-labels span {
  color: #8a98aa;
  font-size: 10px;
  text-align: center;
  white-space: nowrap;
}
.ow-dashboard-donut-wrap {
  display: grid;
  grid-template-columns: 145px minmax(0, 1fr);
  align-items: center;
  gap: 22px;
  margin-top: 29px;
}
.ow-dashboard-donut {
  display: grid;
  width: 145px;
  height: 145px;
  place-items: center;
  border-radius: 50%;
}
.ow-dashboard-donut > span {
  display: grid;
  width: 96px;
  height: 96px;
  place-items: center;
  align-content: center;
  border-radius: 50%;
  background: #fff;
}
.ow-dashboard-donut strong {
  color: #17324f;
  font: 800 25px 'Manrope', sans-serif;
}
.ow-dashboard-donut small {
  color: #8a98aa;
  font-size: 10px;
  font-weight: 800;
}
.ow-dashboard-outcome-list {
  display: grid;
  gap: 10px;
}
.ow-dashboard-outcome-list > div {
  display: grid;
  grid-template-columns: 8px minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
}
.ow-dashboard-outcome-list i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.ow-dashboard-outcome-list span,
.ow-dashboard-outcome-list strong,
.ow-dashboard-outcome-list small {
  font-size: 12px;
}
.ow-dashboard-outcome-list small { color: #8897aa; }
.ow-dashboard-country-list {
  display: grid;
  gap: 16px;
  margin-top: 24px;
}
.ow-dashboard-country-row {
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr) 50px;
  align-items: center;
  gap: 12px;
}
.ow-dashboard-country-row > div:first-child {
  display: grid;
  gap: 3px;
}
.ow-dashboard-country-row strong { color: #203a57; font-size: 13px; }
.ow-dashboard-country-row small { color: #8795a7; font-size: 10px; }
.ow-dashboard-country-row > span {
  color: #203a57;
  font-size: 12px;
  font-weight: 800;
  text-align: right;
}
.ow-dashboard-country-track {
  height: 8px;
  overflow: hidden;
  border-radius: 8px;
  background: #edf1f6;
}
.ow-dashboard-country-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #246fe8, #1ab1bf);
}
.ow-dashboard-empty {
  color: #8795a7;
  font-size: 13px;
}
.ow-dashboard-table-card { padding-bottom: 10px; }
.ow-dashboard-table-wrap {
  overflow: auto;
  margin-top: 18px;
}
.ow-dashboard-table-wrap table {
  width: 100%;
  min-width: 880px;
  border-collapse: collapse;
}
.ow-dashboard-table-wrap th {
  padding: 11px 12px;
  border-bottom: 1px solid #dfe7ef;
  color: #8492a4;
  font-size: 10px;
  letter-spacing: .07em;
  text-align: left;
  text-transform: uppercase;
}
.ow-dashboard-table-wrap td {
  padding: 14px 12px;
  border-bottom: 1px solid #edf1f5;
  color: #52647b;
  font-size: 13px;
}
.ow-dashboard-table-wrap tbody tr:hover,
.ow-apps-table tbody tr:hover,
.ow-result-table tbody tr:hover,
.ow-respondent-table tbody tr:hover,
.ow-billing-table tbody tr:hover {
  background: #f8fbff;
}
.ow-dashboard-table-wrap td strong,
.ow-dashboard-table-wrap td small { display: block; }
.ow-dashboard-table-wrap td strong { color: #1c3652; }
.ow-dashboard-table-wrap td small { margin-top: 3px; color: #8b98aa; }
.ow-dashboard-table-wrap tr:last-child td { border-bottom: 0; }

.ow-apps-filters {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) repeat(3, minmax(145px, auto)) auto auto;
  gap: 10px;
  align-items: center;
  padding: 18px 20px;
  border-bottom: 1px solid #e2e9f0;
  background: #fbfdff;
}
.ow-apps-filters input,
.ow-apps-filters select {
  width: 100%;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid #d8e2ec;
  border-radius: 10px;
  background: #fff;
  color: #2d455f;
  font-size: 13px;
}
.ow-apps-filters button,
.ow-apps-filters > a {
  display: grid;
  min-height: 42px;
  padding: 0 15px;
  place-items: center;
  border: 0;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}
.ow-apps-filters button {
  color: #fff;
  background: #1767d6;
  cursor: pointer;
}
.ow-apps-filters > a {
  color: #65768b;
  background: #edf2f7;
}
.ow-apps-table td > small {
  display: block;
  margin-top: 4px;
  color: #8b98a9;
  font-size: 11px;
}
.ow-apps-table-wrap,
.ow-result-table-wrap,
.ow-respondent-table-wrap,
.ow-billing-ledger .ow-table-wrap {
  border: 1px solid #e3eaf1;
  border-radius: 12px;
  background: #fff;
}
.ow-apps-table-wrap thead th,
.ow-result-table-wrap thead th,
.ow-respondent-table-wrap thead th,
.ow-billing-ledger .ow-table-wrap thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: #f8faff;
  box-shadow: inset 0 -1px 0 #dfe7ef;
}
.ow-result-filters input:focus,
.ow-result-filters select:focus,
.ow-respondent-filters input:focus,
.ow-respondent-filters select:focus,
.ow-billing-filters input:focus,
.ow-billing-filters select:focus,
.ow-apps-filters input:focus,
.ow-apps-filters select:focus {
  border-color: #4a84e8;
  box-shadow: 0 0 0 3px rgba(36, 111, 232, .09);
  outline: 0;
}

@media (max-width: 1180px) {
  .ow-dashboard-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ow-dashboard-grid,
  .ow-dashboard-grid-wide { grid-template-columns: 1fr; }
  .ow-apps-filters { grid-template-columns: 1fr 1fr 1fr; }
  .ow-apps-filters .search { grid-column: 1 / -1; }
}
@media (max-width: 700px) {
  .ow-dashboard-heading { align-items: stretch; flex-direction: column; }
  .ow-dashboard-period { align-self: stretch; }
  .ow-dashboard-period button { flex: 1; }
  .ow-dashboard-metrics { grid-template-columns: 1fr; }
  .ow-dashboard-donut-wrap { grid-template-columns: 1fr; justify-items: center; }
  .ow-dashboard-outcome-list { width: 100%; }
  .ow-dashboard-country-row { grid-template-columns: 90px minmax(0, 1fr) 48px; }
  .ow-dashboard-line-chart svg { height: 190px; }
  .ow-apps-filters { grid-template-columns: 1fr; }
  .ow-apps-filters .search { grid-column: auto; }
}

/* Supplier survey results */
.ow-results-heading {
  align-items: center;
}
.ow-results-heading-actions {
  display: grid;
  justify-items: end;
  gap: 10px;
}
.ow-results-heading-actions small {
  color: #718198;
  font-size: 12px;
}
.ow-results-heading-actions a {
  border-radius: 10px;
  padding: 11px 16px;
  color: #fff;
  background: linear-gradient(135deg, #123d70, #1769c2);
  box-shadow: 0 8px 20px rgba(18,61,112,.18);
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}
.ow-result-stats {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
  margin: 18px 0;
}
.ow-result-stats article {
  position: relative;
  overflow: hidden;
  min-width: 0;
  border: 1px solid #dfe7ef;
  border-radius: 16px;
  padding: 17px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(28,48,72,.04);
}
.ow-result-stats article::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: #6d829a;
  content: "";
}
.ow-result-stats article.success::before { background: #16956c; }
.ow-result-stats article.danger::before { background: #c44a5f; }
.ow-result-stats article.warning::before { background: #d68a23; }
.ow-result-stats article.quality::before { background: #7359bc; }
.ow-result-stats article.earnings::before { background: #168ca2; }
.ow-result-stats span,
.ow-result-stats small {
  display: block;
  overflow: hidden;
  color: #6e7d91;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ow-result-stats span {
  font-weight: 750;
}
.ow-result-stats strong {
  display: block;
  overflow: hidden;
  margin: 7px 0 4px;
  color: #173555;
  font-size: 25px;
  letter-spacing: -.4px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ow-results-panel {
  overflow: hidden;
  border: 1px solid #dfe7ef;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 35px rgba(28,48,72,.05);
}
.ow-results-panel > header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  padding: 21px 23px 17px;
}
.ow-results-panel h2 {
  margin: 0 0 4px;
  color: #173555;
  font-size: 19px;
}
.ow-results-panel header p {
  margin: 0;
  color: #718198;
  font-size: 12px;
}
.ow-result-quick-tabs {
  display: flex;
  gap: 5px;
  padding: 4px;
  border: 1px solid #e0e7ee;
  border-radius: 11px;
  background: #f6f9fc;
}
.ow-result-quick-tabs a {
  border-radius: 8px;
  padding: 8px 11px;
  color: #63758b;
  font-size: 11px;
  font-weight: 750;
  text-decoration: none;
  white-space: nowrap;
}
.ow-result-quick-tabs a.active {
  color: #fff;
  background: #123d70;
  box-shadow: 0 4px 10px rgba(18,61,112,.16);
}
.ow-result-filters {
  display: grid;
  grid-template-columns: minmax(210px, 1.35fr) minmax(220px, 1fr) 170px 145px 145px auto;
  align-items: end;
  gap: 10px;
  padding: 16px 23px;
  border-top: 1px solid #edf1f5;
  border-bottom: 1px solid #e5ebf1;
  background: #f8fafc;
}
.ow-result-filters label > span {
  display: block;
  margin-bottom: 6px;
  color: #526a84;
  font-size: 11px;
  font-weight: 800;
}
.ow-result-filters input,
.ow-result-filters select {
  width: 100%;
  height: 42px;
  border: 1px solid #d6e0e9;
  border-radius: 9px;
  padding: 0 11px;
  color: #29435f;
  background: #fff;
  font: inherit;
  font-size: 12px;
}
.ow-result-filters input:focus,
.ow-result-filters select:focus {
  border-color: #2c78c9;
  outline: 3px solid rgba(44,120,201,.1);
}
.ow-result-filters .actions {
  display: flex;
  align-items: center;
  gap: 7px;
}
.ow-result-filters button,
.ow-result-filters .actions a {
  min-height: 42px;
  border: 0;
  border-radius: 9px;
  padding: 0 13px;
  display: inline-grid;
  place-items: center;
  cursor: pointer;
  font-size: 11px;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}
.ow-result-filters button {
  color: #fff;
  background: #123d70;
}
.ow-result-filters .actions a {
  border: 1px solid #d6e0e9;
  color: #63758b;
  background: #fff;
}
.ow-result-table-wrap {
  overflow-x: auto;
}
.ow-result-table {
  width: 100%;
  min-width: 1540px;
  border-collapse: collapse;
}
.ow-result-table th,
.ow-result-table td {
  border-bottom: 1px solid #edf1f5;
  padding: 13px 14px;
  text-align: left;
  vertical-align: top;
  font-size: 11px;
}
.ow-result-table th {
  color: #617188;
  background: #fbfcfd;
  font-size: 10px;
  letter-spacing: .045em;
  text-transform: uppercase;
  white-space: nowrap;
}
.ow-result-table tbody tr:hover {
  background: #f9fbfd;
}
.ow-result-table td > strong,
.ow-result-table td > small,
.ow-result-table td > code,
.ow-result-table td > em {
  display: block;
  margin-bottom: 4px;
}
.ow-result-table td > strong {
  max-width: 240px;
  overflow: hidden;
  color: #243d59;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ow-result-table td > small {
  color: #718198;
}
.ow-result-table td > small.verified {
  color: #087455;
  font-weight: 750;
}
.ow-result-table td > code {
  max-width: 240px;
  overflow: hidden;
  color: #176f85;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ow-result-table td > em {
  max-width: 200px;
  overflow: hidden;
  color: #a24050;
  font-size: 10px;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ow-result-status,
.ow-postback-state {
  display: inline-flex;
  margin-bottom: 5px;
  border-radius: 999px;
  padding: 5px 8px;
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
  white-space: nowrap;
}
.ow-result-status.completed,
.ow-postback-state.delivered { color: #087455; background: #e7f8f1; }
.ow-result-status.terminated,
.ow-postback-state.failed { color: #aa3044; background: #fff0f2; }
.ow-result-status.over-quota { color: #996414; background: #fff4dc; }
.ow-result-status.quality { color: #6547ac; background: #f1ecff; }
.ow-result-status.progress,
.ow-postback-state.pending { color: #195ba7; background: #eaf3ff; }
.ow-postback-state.skipped,
.ow-postback-state.none { color: #66758a; background: #eef2f6; }
.ow-result-money {
  color: #087455 !important;
}
.ow-result-money.negative {
  color: #aa3044 !important;
}
.ow-result-transaction {
  max-width: 170px !important;
}
.ow-result-empty {
  padding: 50px 20px !important;
  text-align: center !important;
}
.ow-result-empty strong,
.ow-result-empty span {
  display: block;
}
.ow-result-empty strong {
  margin-bottom: 6px;
  color: #29435f;
  font-size: 15px;
}
.ow-result-empty span {
  color: #718198;
}
.ow-result-footer {
  min-height: 58px;
  padding: 12px 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  color: #718198;
  font-size: 11px;
}
.ow-result-footer nav {
  display: flex;
  align-items: center;
  gap: 10px;
}
.ow-result-footer a,
.ow-result-footer nav strong {
  border: 1px solid #dce4ec;
  border-radius: 8px;
  padding: 7px 10px;
  color: #385572;
  background: #fff;
  text-decoration: none;
}
.ow-result-footer nav strong {
  color: #718198;
  font-weight: 700;
}

@media (max-width: 1300px) {
  .ow-result-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ow-result-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .ow-results-heading,
  .ow-results-panel > header,
  .ow-result-footer { align-items: stretch; flex-direction: column; }
  .ow-results-heading-actions { justify-items: stretch; }
  .ow-results-heading-actions a { text-align: center; }
  .ow-result-stats,
  .ow-result-filters { grid-template-columns: 1fr; }
  .ow-result-quick-tabs { overflow-x: auto; }
  .ow-result-filters .actions { display: grid; grid-template-columns: 1fr 1fr; }
  .ow-result-footer nav { justify-content: space-between; }
}

.ow-ou-general-grid textarea {
  width: 100%;
  min-height: 112px;
  resize: vertical;
  border: 1px solid #d8e3ed;
  border-radius: 8px;
  padding: 13px 14px;
  color: #29445f;
  background: #fff;
  font: inherit;
  font-size: 15px;
  line-height: 1.55;
}
.ow-ou-general-grid textarea:focus {
  border-color: var(--rm-blue);
  outline: 3px solid rgba(34, 109, 242, .11);
}

/* Final visual alignment against the live OpinionUniverse placement screens. */
.ow-supplier-app {
  grid-template-columns: 296px minmax(0, 1fr);
}
.ow-supplier-sidebar {
  width: 296px;
  padding: 0 16px 18px;
}
.ow-supplier-brand {
  min-height: 112px;
  padding: 0;
}
.ow-supplier-brand > span:last-child {
  display: none;
}
.ow-supplier-brand .ow-brand-mark {
  width: 46px;
  height: 46px;
}
.ow-supplier-nav {
  padding: 8px 0;
}
.ow-supplier-nav a,
.ow-ou-nav-group > summary {
  min-height: 49px;
  padding: 0 14px;
  gap: 12px;
  color: #555c69;
  font-size: 15px;
  font-weight: 650;
}
.ow-supplier-nav a.active {
  box-shadow: none;
}
.ow-supplier-nav a > span,
.ow-ou-nav-group > summary > span {
  width: 24px;
  height: 24px;
  border: 0;
  color: #747b89;
  background: transparent;
}
.ow-supplier-nav a.active > span {
  border: 0;
  color: var(--ou-orange);
  background: transparent;
}
.ow-ou-nav-group {
  margin: 2px 0;
}
.ow-ou-nav-group > summary {
  display: flex;
  align-items: center;
  border-radius: 8px;
  list-style: none;
  cursor: pointer;
}
.ow-ou-nav-group > summary::-webkit-details-marker {
  display: none;
}
.ow-ou-nav-group > summary b {
  margin-left: auto;
  font-size: 12px;
}
.ow-ou-nav-group[open] > summary b {
  transform: rotate(180deg);
}
.ow-ou-nav-group > div {
  display: grid;
  padding: 2px 0 6px 49px;
}
.ow-ou-nav-group > div a {
  min-height: 30px;
  padding: 0;
  color: #747b87;
  font-size: 12px;
}
.ow-supplier-stage {
  margin-left: 0;
}
.ow-supplier-toolbar {
  min-height: 96px;
  padding: 0 36px;
}
.ow-supplier-toolbar > div:first-child small {
  font-size: 26px;
  font-weight: 500;
}
.ow-ou-notification {
  margin-left: auto;
  color: #8b919c;
  font-size: 21px;
}
.ow-app-favicon-wrap {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  position: relative;
}
.ow-app-favicon-wrap .ow-app-favicon,
.ow-app-favicon-wrap .ow-app-favicon-image {
  position: absolute;
  inset: 0;
  width: 38px;
  height: 38px;
}
.ow-app-favicon-wrap .ow-app-favicon-image {
  z-index: 1;
}
.ow-ou-account summary b {
  color: #9ba0a9;
  font-size: 11px;
}
.ow-ou-account-menu {
  position: absolute;
  z-index: 20;
  top: 52px;
  right: 0;
  min-width: 145px;
  display: none;
  border: 1px solid var(--ou-border);
  border-radius: 9px;
  padding: 7px;
  background: #fff;
  box-shadow: 0 10px 25px rgba(20, 25, 35, .1);
}
.ow-ou-account[open] .ow-ou-account-menu {
  display: grid;
}
.ow-ou-account-menu a,
.ow-ou-account-menu form button {
  width: 100%;
  display: block;
  border: 0;
  border-radius: 6px;
  padding: 9px;
  color: #555c68;
  background: #fff;
  text-align: left;
  text-decoration: none;
  font: inherit;
  font-size: 12px;
  cursor: pointer;
}
.ow-ou-account-menu form {
  position: static;
  min-width: 0;
  padding: 0;
  border: 0;
  box-shadow: none;
}
.ow-supplier-main {
  width: 100%;
  max-width: none;
  padding: 38px 32px 70px;
}
.ow-apps-page {
  width: 100%;
  max-width: none;
}
.ow-ou-placements-page .ow-apps-heading {
  min-height: 106px;
  align-items: center;
  margin-bottom: 22px;
  border: 1px solid var(--ou-border);
  border-radius: 12px;
  padding: 24px 25px;
  background: #fff;
  box-shadow: 0 2px 6px rgba(30, 34, 42, .025);
}
.ow-ou-placements-page .ow-apps-heading h1 {
  margin: 0 0 5px;
  font-size: 28px;
}
.ow-ou-placements-page .ow-apps-heading p {
  font-size: 14px;
}
.ow-ou-placements-page .ow-add-placement {
  min-width: 190px;
  min-height: 46px;
  border-radius: 9px;
  font-size: 14px;
}
.ow-ou-placements-page .ow-apps-table-card {
  border-radius: 12px;
}
.ow-ou-placements-page .ow-apps-table th {
  padding: 18px 24px;
  font-size: 13px;
}
.ow-ou-placements-page .ow-apps-table td {
  min-height: 72px;
  padding: 18px 24px;
  font-size: 14px;
}
.ow-app-favicon-image {
  width: 38px;
  height: 38px;
}
.ow-ou-placements-page .ow-app-cell strong {
  font-size: 15px;
}
.ow-ou-placements-page .ow-app-cell small {
  font-size: 11px;
}
.ow-ou-placements-page .ow-platform-pill {
  padding: 6px 10px;
  color: #2866c7;
  background: #eef4ff;
  font-size: 13px;
}
.ow-ou-placements-page .ow-placement-state {
  padding: 6px 10px;
  font-size: 12px;
  text-transform: uppercase;
}
.ow-ou-placements-page .ow-placement-revenue {
  display: inline-block;
  border: 1px solid #ccebd9;
  border-radius: 7px;
  padding: 7px 11px;
  color: #177b4d;
  background: #effbf4;
}
.ow-ou-placements-page .ow-placement-actions summary {
  border-color: transparent;
  background: transparent;
  font-size: 0;
}
.ow-ou-placements-page .ow-placement-actions summary::after {
  content: '⋮';
  color: #777e89;
  font-size: 22px;
}
.ow-ou-placements-page .ow-apps-footer {
  min-height: 80px;
  padding: 18px 24px;
  font-size: 14px;
}
.ow-ou-placements-page .ow-apps-footer nav a,
.ow-ou-placements-page .ow-apps-footer nav span,
.ow-ou-placements-page .ow-apps-footer nav b {
  padding: 9px 13px;
  font-size: 12px;
}
.ow-placement-modal {
  width: min(674px, calc(100% - 30px));
  min-height: 620px;
  border-radius: 16px;
  overflow: hidden;
}
.ow-placement-create-form {
  min-height: 620px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.ow-placement-create-form > header {
  padding: 20px 25px 17px;
}
.ow-placement-create-form header h2 {
  margin: 0;
  font-size: 26px;
}
.ow-modal-close {
  color: #8f96a1;
  background: transparent;
  font-size: 25px;
}
.ow-placement-create-form fieldset,
.ow-placement-url-field {
  padding: 28px 25px 0;
}
.ow-placement-create-form legend,
.ow-placement-url-field > span {
  color: #272c35;
  font-size: 14px;
}
.ow-platform-options {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.ow-platform-options > div {
  width: 100%;
}
.ow-platform-options label {
  min-width: 0;
  min-height: 94px;
  align-content: center;
  gap: 5px;
  border-radius: 11px;
  font-size: 15px;
}
.ow-platform-options label > span {
  color: #949aa5;
  font-size: 31px;
  line-height: 1;
}
.ow-platform-options label:has(input:checked) > span,
.ow-platform-options label:has(input:checked) > b {
  color: var(--ou-orange);
}
.ow-placement-url-field > i {
  position: relative;
  display: block;
  font-style: normal;
}
.ow-placement-url-field input {
  min-height: 48px;
  padding-right: 54px;
  font-size: 15px;
}
.ow-placement-url-field em {
  position: absolute;
  top: 0;
  right: 0;
  width: 52px;
  height: 48px;
  display: grid;
  place-items: center;
  border-left: 1px solid #eceef1;
  color: var(--ou-orange);
  font-size: 26px;
  font-style: normal;
}
.ow-placement-create-form > footer {
  margin-top: auto;
  padding: 18px 25px 26px;
}
.ow-placement-create-form > footer button {
  min-height: 46px;
  padding: 0 24px;
  border: 1px solid #dcdfe4;
  border-radius: 8px;
  font-size: 15px;
}
.ow-modal-cancel {
  background: #fff;
}
.ow-modal-submit:disabled {
  color: #fff;
  background: #a5abb5;
  cursor: not-allowed;
}
.ow-ou-settings-tabs {
  min-height: 72px;
  justify-content: flex-start;
}
.ow-ou-settings-tabs button {
  min-width: 145px;
  font-size: 14px;
}
.ow-ou-settings-tabs button i {
  width: 31px;
  height: 31px;
  font-size: 15px;
}
.ow-ou-panel {
  padding: 24px;
}
.ow-ou-info {
  margin-bottom: 24px;
  padding: 20px;
  font-size: 14px;
}
.ow-ou-card > h2 {
  padding: 19px 24px;
  font-size: 14px;
}
.ow-ou-card > form,
.ow-ou-card > p,
.ow-ou-card > .ow-ou-content-types,
.ow-ou-card > div:not(.ow-ou-content-types) {
  padding: 24px;
}
.ow-ou-general-grid,
.ow-ou-currency-grid {
  gap: 22px;
}
.ow-ou-general-grid label,
.ow-ou-currency-grid label,
.ow-ou-field,
.ow-ou-general-grid b,
.ow-ou-currency-grid b,
.ow-ou-field > b,
.ow-ou-traffic legend {
  font-size: 14px;
}
.ow-ou-general-grid input,
.ow-ou-currency-grid input,
.ow-ou-currency-grid select,
.ow-ou-field input,
.ow-ou-field select {
  min-height: 46px;
  font-size: 14px;
}
.ow-ou-general-grid small,
.ow-ou-currency-grid small,
.ow-ou-help,
.ow-ou-traffic > p {
  font-size: 11px;
}
.ow-ou-traffic label {
  min-height: 100px;
  padding: 17px;
}
.ow-ou-traffic b {
  font-size: 14px;
}
.ow-ou-traffic small,
.ow-ou-traffic em {
  font-size: 11px;
}
.ow-ou-form-actions button,
.ow-ou-form-actions a,
.ow-reset-secret {
  min-height: 42px;
  padding: 0 17px;
  font-size: 13px;
}
.ow-ou-subtabs {
  width: min(445px, calc(100% - 32px));
  min-height: 48px;
  gap: 0;
  margin: 0 auto 32px;
  border: 1px solid #e1e2e6;
  border-radius: 12px;
  padding: 4px;
  background: #f4f4f6;
}
.ow-ou-subtabs button {
  flex: 1;
  border-radius: 9px;
  padding: 0 16px;
  font-size: 14px;
}
.ow-ou-subtabs button.active {
  background: #fff;
  box-shadow: 0 1px 4px rgba(25, 28, 35, .08);
}
.ow-ou-subtabs button.active::after {
  display: none;
}
.ow-ou-postback-card {
  border: 0;
  padding-top: 0;
}
.ow-ou-postback-card > form {
  padding: 0;
}
.ow-ou-postback-url-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 12px;
}
.ow-ou-ip-check {
  min-height: 46px;
  margin: 0;
  border: 1px solid #e1e3e7;
  border-radius: 8px;
  padding: 0 14px;
  background: #fafafa;
  font-size: 13px;
}
.ow-ou-optout-card {
  margin-top: 24px;
  border: 1px solid #e1e3e7;
  border-radius: 10px;
  padding: 15px 17px;
  background: #fcfcfd;
}
.ow-ou-optout-card .ow-ou-checkbox {
  margin: 0;
  font-size: 13px;
}
.ow-ou-optout-card .ow-ou-checkbox span {
  display: grid;
  gap: 4px;
}
.ow-ou-optout-card small {
  color: #9398a1;
  font-size: 11px;
  font-weight: 400;
}
.ow-ou-macros,
.ow-ou-security {
  margin-top: 26px;
  padding-top: 22px;
}
.ow-ou-macros h3,
.ow-ou-security h3,
.ow-ou-specific-list h2,
.ow-ou-doc-section h3 {
  font-size: 16px;
}
.ow-ou-macros h3 i {
  display: inline-grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 7px;
  color: var(--ou-orange);
  background: #fff2ea;
  font-size: 13px;
  font-style: normal;
}
.ow-ou-macros > p {
  grid-template-columns: 150px 1fr;
  padding: 9px 0;
  font-size: 12px;
}
.ow-ou-macros > div,
.ow-ou-secret-line small,
.ow-ou-hash-grid span,
.ow-ou-security > p {
  font-size: 11px;
}
.ow-ou-security > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ow-reset-secret {
  position: static;
  border: 1px solid #d8dbe0;
  border-radius: 7px;
  color: #606772;
  background: #fff;
  font: inherit;
  cursor: pointer;
}

@media (max-width: 1080px) {
  .ow-supplier-app {
    grid-template-columns: 220px minmax(0, 1fr);
  }
  .ow-supplier-sidebar {
    width: 220px;
  }
  .ow-supplier-stage {
    margin-left: 0;
  }
  .ow-supplier-nav a,
  .ow-ou-nav-group > summary {
    font-size: 12px;
  }
}
@media (max-width: 760px) {
  .ow-supplier-app {
    display: block;
  }
  .ow-supplier-sidebar {
    width: 100%;
    padding: 14px;
  }
  .ow-supplier-stage {
    margin-left: 0;
  }
  .ow-supplier-brand {
    min-height: 64px;
  }
  .ow-supplier-main {
    padding: 14px;
  }
  .ow-ou-placements-page .ow-apps-heading {
    align-items: flex-start;
    flex-direction: column;
  }
  .ow-ou-postback-url-row {
    grid-template-columns: 1fr;
  }
  .ow-ou-ip-check {
    width: 100%;
  }
}

/* RM Wins identity pass: placement workflow keeps the useful structure without
   carrying another product's navigation, palette or undersized typography. */
:root {
  --ou-orange: #226df2;
  --ou-ink: #142b49;
  --ou-muted: #66778d;
  --ou-border: #dce5ee;
  --ou-bg: #f2f6fa;
  --rm-navy: #102f57;
  --rm-deep-navy: #0b2445;
  --rm-blue: #226df2;
  --rm-cyan: #23c2ce;
}
.ow-supplier-body {
  color: #243a55;
  background: var(--ou-bg);
}
.ow-supplier-app {
  grid-template-columns: 270px minmax(0, 1fr);
}
.ow-supplier-sidebar {
  width: auto;
  padding: 24px 18px 18px;
  border-right: 0;
  color: #fff;
  background: linear-gradient(180deg, var(--rm-navy) 0%, var(--rm-deep-navy) 100%);
  box-shadow: 12px 0 34px rgba(9, 34, 67, .08);
}
.ow-supplier-brand {
  min-height: 0;
  justify-content: flex-start;
  gap: 12px;
  padding: 0 8px 24px;
  color: #fff;
}
.ow-supplier-brand > span:last-child {
  display: block;
}
.ow-supplier-brand .ow-brand-mark {
  width: 42px;
  height: 42px;
  filter: none;
  background: linear-gradient(145deg, var(--rm-cyan), var(--rm-blue));
}
.ow-supplier-brand span:last-child strong {
  color: #fff;
  font-size: 18px;
}
.ow-supplier-brand span:last-child small {
  margin-top: 3px;
  color: #9db8d6;
  font-size: 10px;
}
.ow-supplier-nav {
  gap: 5px;
  padding: 4px 0 18px;
}
.ow-supplier-nav a {
  min-height: 48px;
  margin: 0;
  gap: 12px;
  padding: 0 13px;
  border-radius: 12px;
  color: #c1d0e1;
  font-size: 15px;
  font-weight: 700;
}
.ow-supplier-nav a > span {
  width: 27px;
  height: 27px;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 8px;
  color: #8eaccd;
  background: rgba(255, 255, 255, .025);
}
.ow-supplier-nav a:hover,
.ow-supplier-nav a.active {
  color: #fff;
  background: rgba(255, 255, 255, .10);
}
.ow-supplier-nav a.active {
  box-shadow: inset 3px 0 var(--rm-cyan);
}
.ow-supplier-nav a.active::before {
  display: none;
}
.ow-supplier-nav a.active > span {
  border-color: rgba(89, 220, 227, .45);
  color: #67e2e8;
  background: rgba(35, 194, 206, .14);
}
.ow-supplier-account {
  display: block;
}
.ow-supplier-account strong {
  font-size: 13px;
}
.ow-supplier-account small,
.ow-supplier-account button {
  font-size: 11px;
}
.ow-supplier-stage {
  margin-left: 0;
}
.ow-supplier-toolbar {
  min-height: 82px;
  padding: 0 32px;
  border-bottom-color: #dce5ee;
  background: rgba(255, 255, 255, .94);
}
.ow-supplier-toolbar > div:first-child small {
  color: #6f8197;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .9px;
  text-transform: uppercase;
}
.ow-supplier-toolbar > div:first-child strong {
  margin-top: 5px;
  color: #173555;
  font-size: 15px;
}
.ow-supplier-toolbar > a,
.ow-ou-placements-page .ow-add-placement,
.ow-ou-orange-button,
.ow-modal-submit,
.ow-ou-form-actions button:not(.secondary) {
  color: #fff;
  background: linear-gradient(135deg, #123d70, var(--rm-blue));
  box-shadow: 0 10px 24px rgba(34, 109, 242, .18);
}
.ow-supplier-toolbar > a {
  min-height: 42px;
  padding: 0 17px;
  font-size: 13px;
}
.ow-supplier-main {
  padding: 32px 30px 70px;
}
.ow-ou-placements-page .ow-apps-heading {
  border-color: #d9e5f0;
  background: linear-gradient(135deg, #fff 0%, #f6fbff 100%);
  box-shadow: 0 12px 32px rgba(26, 66, 108, .06);
}
.ow-ou-placements-page .ow-apps-heading h1 {
  color: #142f4f;
  font-size: 31px;
}
.ow-ou-placements-page .ow-apps-heading p {
  color: #65778e;
  font-size: 16px;
  line-height: 1.5;
}
.ow-ou-placements-page .ow-add-placement {
  min-height: 48px;
  font-size: 15px;
}
.ow-ou-placements-page .ow-apps-table-card,
.ow-ou-settings,
.ow-ou-card,
.ow-ou-specific-create {
  border-color: #dce6ef;
  box-shadow: 0 12px 32px rgba(26, 58, 93, .055);
}
.ow-ou-placements-page .ow-apps-table th {
  padding: 19px 24px;
  color: #5b7089;
  background: #f5f9fc;
  font-size: 14px;
}
.ow-ou-placements-page .ow-apps-table td {
  padding: 20px 24px;
  color: #344a62;
  font-size: 15px;
}
.ow-ou-placements-page .ow-app-cell strong {
  color: #173555;
  font-size: 16px;
}
.ow-ou-placements-page .ow-app-cell small {
  font-size: 12px;
}
.ow-ou-placements-page .ow-platform-pill,
.ow-ou-placements-page .ow-placement-state {
  font-size: 13px;
}
.ow-ou-placements-page .ow-apps-footer,
.ow-ou-placements-page .ow-apps-footer nav a,
.ow-ou-placements-page .ow-apps-footer nav span,
.ow-ou-placements-page .ow-apps-footer nav b,
.ow-placement-actions div button,
.ow-placement-actions div a {
  font-size: 13px;
}
.ow-platform-options label:has(input:checked),
.ow-ou-traffic label:has(input:checked),
.ow-ou-content-types label:has(input:checked) {
  border-color: var(--rm-blue);
  color: var(--rm-blue);
  background: #eef5ff;
  box-shadow: inset 0 0 0 1px var(--rm-blue);
}
.ow-placement-create-form legend,
.ow-placement-url-field > span,
.ow-placement-url-field input,
.ow-platform-options label {
  font-size: 16px;
}
.ow-ou-settings-tabs {
  min-height: 78px;
  border-bottom-color: #dce6ef;
  background: #fbfdff;
}
.ow-ou-settings-tabs button {
  min-width: 150px;
  color: #66788e;
  font-size: 16px;
}
.ow-ou-settings-tabs button i {
  width: 34px;
  height: 34px;
  color: #58708c;
  background: #edf3f8;
  font-size: 16px;
}
.ow-ou-settings-tabs button.active i {
  color: var(--rm-blue);
  background: #eaf2ff;
}
.ow-ou-panel {
  padding: 28px;
}
.ow-ou-info {
  margin-bottom: 26px;
  padding: 20px;
  color: #2c68ad;
  background: #edf6ff;
  font-size: 15px;
  line-height: 1.65;
}
.ow-ou-card > h2 {
  padding: 20px 25px;
  color: #183654;
  font-size: 17px;
  letter-spacing: .025em;
}
.ow-ou-card > form,
.ow-ou-card > p,
.ow-ou-card > .ow-ou-content-types,
.ow-ou-card > div:not(.ow-ou-content-types) {
  padding: 26px;
}
.ow-ou-general-grid label,
.ow-ou-currency-grid label,
.ow-ou-field,
.ow-ou-general-grid b,
.ow-ou-currency-grid b,
.ow-ou-field > b,
.ow-ou-traffic legend {
  color: #29445f;
  font-size: 15px;
}
.ow-ou-general-grid input,
.ow-ou-currency-grid input,
.ow-ou-currency-grid select,
.ow-ou-field input,
.ow-ou-field select {
  min-height: 48px;
  border-color: #d8e3ed;
  font-size: 15px;
}
.ow-ou-general-grid small,
.ow-ou-currency-grid small,
.ow-ou-help,
.ow-ou-traffic > p,
.ow-ou-traffic small,
.ow-ou-traffic em,
.ow-ou-optout-card small {
  font-size: 12px;
  line-height: 1.55;
}
.ow-ou-traffic b,
.ow-ou-checkbox,
.ow-ou-ip-check,
.ow-ou-optout-card .ow-ou-checkbox {
  font-size: 14px;
}
.ow-ou-simulation {
  border-color: #d8e6f5;
  background: #f5f9ff;
}
.ow-ou-simulation > strong {
  font-size: 15px;
}
.ow-ou-simulation span small,
.ow-ou-simulation em,
.ow-ou-simulation > p {
  font-size: 12px;
}
.ow-ou-simulation span b {
  font-size: 21px;
}
.ow-ou-form-actions button,
.ow-ou-form-actions a,
.ow-reset-secret,
.ow-reset-secret button {
  min-height: 44px;
  font-size: 14px;
}
.ow-ou-subtabs button {
  font-size: 15px;
}
.ow-ou-macros h3,
.ow-ou-security h3,
.ow-ou-specific-list h2,
.ow-ou-doc-section h3,
.ow-ou-design-title h2,
.ow-ou-integrations > h2 {
  color: #183654;
  font-size: 18px;
}
.ow-ou-macros h3 i {
  color: var(--rm-blue);
  background: #eaf2ff;
}
.ow-ou-macros > p {
  grid-template-columns: 170px 1fr;
  font-size: 13px;
}
.ow-ou-macros > div,
.ow-ou-secret-line small,
.ow-ou-hash-grid span,
.ow-ou-security > p,
.ow-ou-secret-line code,
.ow-ou-secret-line button,
.ow-ou-hash-grid button,
.ow-ou-hash-grid pre {
  font-size: 12px;
}
.ow-ou-specific-list header p,
.ow-ou-specific-create > header p,
.ow-ou-design-title p {
  font-size: 13px;
}
.ow-ou-specific-list header a {
  padding: 11px 15px;
  background: linear-gradient(135deg, #123d70, var(--rm-blue));
  font-size: 13px;
}
.ow-ou-content-types > div > div label {
  min-height: 64px;
  font-size: 14px;
}
.ow-ou-branding article h3 {
  font-size: 15px;
}
.ow-ou-branding article p,
.ow-ou-branding article li,
.ow-ou-branding article > label {
  font-size: 12px;
}
.ow-ou-quick-label,
.ow-ou-section-kicker {
  color: var(--rm-blue);
  font-size: 12px;
}
.ow-ou-integration-jumps button {
  padding: 12px 8px;
  color: #526a84;
  font-size: 13px;
}
.ow-ou-jump-help,
.ow-ou-warning {
  font-size: 12px;
  line-height: 1.6;
}
.ow-ou-doc-section h4 {
  color: #28435f;
  font-size: 15px;
}
.ow-ou-doc-section > p,
.ow-ou-doc-section > ul,
.ow-ou-api-details p,
.ow-ou-param-list article,
.ow-ou-url-code {
  font-size: 13px;
}
.ow-ou-param-list article {
  grid-template-columns: 120px 90px 150px 1fr;
}
.ow-ou-param-list b {
  font-size: 11px;
}
.ow-ou-specific-create > header h1 {
  color: #173555;
  font-size: 25px;
}

@media (max-width: 1080px) {
  .ow-supplier-app {
    grid-template-columns: 230px minmax(0, 1fr);
  }
  .ow-supplier-sidebar {
    width: auto;
  }
  .ow-supplier-nav a {
    font-size: 14px;
  }
  .ow-ou-settings-tabs button {
    min-width: 132px;
    font-size: 14px;
  }
}
@media (max-width: 760px) {
  .ow-supplier-app {
    display: block;
  }
  .ow-supplier-sidebar {
    width: 100%;
    height: auto;
  }
  .ow-supplier-account {
    margin-top: 14px;
  }
  .ow-supplier-main {
    padding: 18px 14px 50px;
  }
  .ow-ou-settings-tabs {
    overflow-x: auto;
  }
  .ow-ou-param-list article {
    grid-template-columns: 1fr;
  }
}
