/* OutreachPro Newsroom: marketplace + commerce screens */
.opm, .opm-commerce .woocommerce {
  --bg:#F6F7F4; --surface:#FFFFFF; --ink:#142230; --muted:#5B6874; --line:#DCE1E3;
  --accent:#1C8BDB; --accent-ink:#0E5E9C; --accent-dark:#0B4B7D; --tint:#E8F2FA;
  --success:#1F7A4D; --warning:#A15C07; --danger:#B3261E; --r:4px;
  --fh:'Schibsted Grotesk', system-ui, sans-serif; --fb:'Source Sans 3', system-ui, sans-serif; --fm:'IBM Plex Mono', ui-monospace, monospace;
}
body.opm-page, body.opm-page #content, body.opm-page .site-content { background:#F6F7F4; }
body.opm-page .entry-header, body.opm-page .ast-breadcrumbs-wrapper { display:none; }
body.opm-page .site-content > .ast-container { max-width:none; padding:0; display:block; }
body.opm-page .entry-content > p:empty { display:none; }

.opm { font-family:var(--fb); color:var(--ink); font-size:16px; line-height:1.5; max-width:1360px; margin:0 auto; padding:40px 24px 120px; }
.opm *, .opm *::before, .opm *::after { box-sizing:border-box; }
.opm h1, .opm h2 { font-family:var(--fh); color:var(--ink); letter-spacing:-0.01em; margin:0; }
.opm h1 { font-size:clamp(1.9rem, 1.4rem + 1.6vw, 2.6rem); line-height:1.08; font-weight:700; }
.opm h2 { font-size:1.15rem; line-height:1.2; font-weight:700; }
.opm .mono, .opm .num { font-family:var(--fm); font-variant-numeric:tabular-nums; }
.opm-muted { color:var(--muted); }
.opm-small { font-size:.875rem; }
.opm-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.opm-hp { position:absolute; left:-9999px; width:1px; height:1px; opacity:0; }

/* buttons + inputs */
.opm-btn { font:600 1rem/1 var(--fb); background:var(--accent-ink); color:#fff; border:1px solid var(--accent-ink); border-radius:var(--r); padding:12px 18px; cursor:pointer; white-space:nowrap; transition:background .15s, transform .05s; }
.opm-btn:hover { background:var(--accent-dark); border-color:var(--accent-dark); color:#fff; }
.opm-btn:active { transform:translateY(1px); }
.opm-btn:disabled { opacity:.6; cursor:progress; }
.opm-btn-block { width:100%; }
.opm-btn-outline { font:600 .95rem/1 var(--fb); background:transparent; color:var(--ink); border:1px solid var(--ink); border-radius:var(--r); padding:10px 14px; cursor:pointer; }
.opm-link { background:none; border:0; padding:0; font:600 .95rem var(--fb); color:var(--accent-ink); text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.opm input[type=text], .opm input[type=email], .opm input[type=url], .opm input[type=search], .opm input[type=number], .opm select, .opm textarea {
  width:100%; font:400 1rem/1.3 var(--fb); color:var(--ink); background:var(--surface); border:1px solid #B9C2C7; border-radius:var(--r); padding:10px 12px; min-height:44px; box-shadow:none; }
.opm textarea { min-height:88px; resize:vertical; }
.opm input::placeholder, .opm textarea::placeholder { color:#6B7680; }
.opm :focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.opm input:focus, .opm select:focus, .opm textarea:focus { border-color:var(--accent); outline:2px solid var(--accent); outline-offset:0; }

/* header */
.opm-head { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:32px; align-items:end; padding-bottom:28px; border-bottom:1px solid var(--line); margin-bottom:28px; }
.opm-lede { margin:12px 0 0; color:var(--muted); font-size:1.125rem; max-width:52ch; }
.opm-signin { background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:18px 20px; }
.opm-signin p { margin:0 0 12px; font-size:.95rem; }
.opm-signin form { display:flex; gap:8px; }
.opm-form-msg { margin:10px 0 0 !important; font-weight:600; color:var(--accent-ink); }
.opm-form-msg:empty { display:none; }
.opm-signed { margin:0; text-align:right; color:var(--muted); }
.opm-signed a { color:var(--accent-ink); font-weight:600; }

/* layout */
.opm-layout { display:grid; grid-template-columns:220px minmax(0,1fr) 300px; gap:32px; align-items:start; }
.opm-filters { position:sticky; top:24px; display:grid; gap:20px; }
.opm-fgroup { border:0; margin:0; padding:0; min-width:0; }
.opm-fgroup > label, .opm-fgroup legend, .opm-label { display:block; font:600 .875rem/1.2 var(--fb); margin:0 0 6px; padding:0; color:var(--ink); }
.opm-hint { margin:4px 0 0; font-size:.85rem; color:var(--muted); }
.opm-check { display:flex; align-items:center; gap:8px; font-size:.95rem; cursor:pointer; padding:3px 0; }
.opm-check input { width:16px; height:16px; accent-color:var(--accent-ink); margin:0; flex:none; }
.opm-niche-list { display:grid; gap:0; max-height:340px; overflow:auto; padding-right:4px; }
.opm-niche-list .opm-check span:first-of-type { flex:1; }
.opm-n { font-size:.75rem; color:var(--muted); }
.opm-money { position:relative; }
.opm-money span { position:absolute; left:12px; top:50%; transform:translateY(-50%); color:var(--muted); }
.opm-money input { padding-left:26px !important; }
.opm-filter-toggle { display:none; }

/* table */
.opm-toolbar { display:flex; align-items:center; gap:12px; margin-bottom:8px; }
.opm-toolbar p { margin:0 auto 0 0; font-weight:600; }
.opm-sort { display:flex; align-items:center; gap:8px; font-size:.9rem; color:var(--muted); }
.opm-sort select { width:auto; min-height:38px; padding:6px 10px; }
.opm-table { width:100%; border-collapse:collapse; background:transparent; border:0; margin:0; }
.opm-table th, .opm-table td { border:0; border-bottom:1px solid var(--line); padding:12px 10px; text-align:left; vertical-align:middle; background:transparent; }
.opm-table thead th { font:600 .8rem/1.2 var(--fb); color:var(--muted); text-transform:uppercase; letter-spacing:.04em; border-bottom:1px solid var(--ink); padding-top:6px; }
.opm-th-sub { display:block; text-transform:none; letter-spacing:0; font-weight:400; font-size:.75rem; margin-top:2px; }
.opm-table .num { text-align:right; }
.opm-table thead .num { text-align:right; }
.opm-site { font-weight:400; }
.opm-domain, .opm-masked { display:block; font-weight:600; font-size:1rem; color:var(--ink); }
.opm-masked { color:var(--ink); }
.opm-code { display:block; font:500 .75rem var(--fm); color:var(--muted); margin-top:2px; }
.opm-table tbody tr { transition:background .2s; }
.opm-table tbody tr:hover { background:#FFFFFF; }
.opm-table tbody tr.is-hit { background:var(--tint); }
.opm-chip { display:inline-block; font-size:.78rem; line-height:1; color:var(--muted); border:1px solid var(--line); border-radius:var(--r); padding:4px 6px; margin:2px 4px 2px 0; background:var(--surface); white-space:nowrap; }
.opm-chip-more { cursor:help; }
.opm-price { display:inline-flex; align-items:center; justify-content:flex-end; gap:6px; min-width:96px; font:500 .95rem var(--fm); color:var(--accent-ink); background:var(--surface); border:1px solid #B9C2C7; border-radius:var(--r); padding:9px 12px; cursor:pointer; transition:border-color .15s, background .15s; }
.opm-price:hover { border-color:var(--accent-ink); background:var(--tint); }
.opm-price.is-on { background:var(--accent-ink); border-color:var(--accent-ink); color:#fff; }
.opm-price:disabled { opacity:.55; cursor:progress; }
.opm-ico { width:14px; height:14px; }
.opm-na { font-size:.85rem; color:var(--muted); }
.opm-empty { padding:40px 0; text-align:center; color:var(--muted); }

/* basket */
.opm-basket { position:sticky; top:24px; }
.opm-basket-in { background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:20px; box-shadow:0 8px 24px -12px rgba(20,34,48,.18); }
.opm-basket-in h2 { margin-bottom:12px; }
.opm-basket-in > p { margin:0; }
.opm-bitems { list-style:none; margin:0 0 12px; padding:0; }
.opm-bitems li { display:grid; grid-template-columns:1fr auto auto; gap:8px; align-items:center; padding:10px 0; border-bottom:1px solid var(--line); }
.opm-bmain { min-width:0; }
.opm-bname { display:block; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.opm-bpkg { display:block; font-size:.8rem; color:var(--muted); }
.opm-x { width:32px; height:32px; border:0; background:transparent; color:var(--muted); font-size:1.3rem; line-height:1; border-radius:var(--r); cursor:pointer; }
.opm-x:hover { background:#EEF1F2; color:var(--ink); }
.opm-bline, .opm-btotal { display:flex; justify-content:space-between; margin:6px 0 !important; }
.opm-btotal { font-weight:700; font-size:1.05rem; padding-top:6px; }
.opm-basket .opm-small { margin:0 0 14px !important; }
.opm-bar { display:none; }

/* sheet */
.opm-sheet { width:min(760px, 100vw); max-width:100vw; height:100vh; max-height:100vh; margin:0 0 0 auto; padding:0; border:0; border-left:1px solid var(--line); background:var(--bg); color:var(--ink); font-family:var(--fb); }
.opm-sheet::backdrop { background:rgba(20,34,48,.45); }
.opm-sheet-in { display:grid; grid-template-rows:auto 1fr auto; height:100%; }
.opm-sheet-head { display:flex; justify-content:space-between; align-items:center; padding:18px 24px; border-bottom:1px solid var(--line); background:var(--surface); }
.opm-sheet-head h2 { font-size:1.35rem; }
.opm-sheet-body { overflow:auto; padding:20px 24px 40px; }
.opm-copy { margin:0 0 12px; }
.opm-item { background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:18px 20px 8px; margin:0 0 16px; min-width:0; }
.opm-item.has-error { border-color:var(--danger); }
.opm-item legend { padding:0 6px; margin-left:-6px; }
.opm-item legend .opm-bname, .opm-item legend .opm-bpkg { display:inline; }
.opm-item legend .opm-bpkg { margin-left:6px; }
.opm-row2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.opm-field { margin-bottom:14px; min-width:0; }
.opm-field > label { display:block; font:600 .9rem var(--fb); margin-bottom:6px; }
.opm-opt { font-weight:400; color:var(--muted); font-size:.8rem; }
.opm-seg { display:flex; flex-wrap:wrap; gap:8px; }
.opm-seg-opt { position:relative; cursor:pointer; }
.opm-seg-opt input { position:absolute; opacity:0; inset:0; margin:0; cursor:pointer; }
.opm-seg-opt > span { display:inline-block; border:1px solid #B9C2C7; border-radius:var(--r); padding:9px 14px; font-weight:600; font-size:.95rem; background:var(--surface); }
.opm-seg-opt input:checked + span { border-color:var(--accent-ink); background:var(--tint); color:var(--accent-dark); box-shadow:inset 0 0 0 1px var(--accent-ink); }
.opm-seg-opt input:focus-visible + span { outline:2px solid var(--accent); outline-offset:2px; }
.opm-panel { margin-bottom:12px; }
.opm-file { display:block; border:1px dashed #9AA6AD; border-radius:var(--r); padding:16px; text-align:center; cursor:pointer; background:var(--bg); position:relative; }
.opm-file input { position:absolute; inset:0; opacity:0; cursor:pointer; }
.opm-file:hover { border-color:var(--accent-ink); }
.opm-err { color:var(--danger); font-size:.875rem; font-weight:600; margin:6px 0 0; }
.opm-err:empty { display:none; }
.opm-sheet-foot { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:16px 24px; border-top:1px solid var(--line); background:var(--surface); }
.opm-sheet-foot p { margin:0; font-size:1.05rem; }

.opm-toast { position:fixed; left:50%; bottom:24px; transform:translateX(-50%); background:var(--ink); color:#fff; padding:12px 18px; border-radius:var(--r); z-index:100000; max-width:90vw; font-weight:600; }
.opm-error { padding:40px; text-align:center; }

/* loading skeleton */
.opm-skel-head { height:56px; width:45%; background:#E6E9EA; border-radius:var(--r); margin-bottom:32px; }
.opm-skel-row { height:52px; border-bottom:1px solid var(--line); background:linear-gradient(90deg, transparent 0 22%, #ECEFEF 22% 60%, transparent 60%); }

/* commerce screens (checkout, account) */
.opm-commerce .woocommerce { font-family:var(--fb); color:var(--ink); }
.opm-checkout-back { margin:0 0 16px; }
.opm-checkout-back a { font-weight:600; color:#0E5E9C; }
.opm-track { margin:8px 0 4px; display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.opm-badge { display:inline-block; font:600 .78rem/1 'Source Sans 3', sans-serif; padding:5px 8px; border-radius:4px; background:#EEF1F2; color:#142230; }
.opm-badge-ready { background:#E3F1EA; color:#1F7A4D; }
.opm-badge-pending, .opm-badge-content_ready { background:#FBF0DF; color:#A15C07; }
.opm-badge-in_progress, .opm-badge-pending_approval { background:#E8F2FA; color:#0E5E9C; }
.opm-badge-rejected { background:#F9E5E3; color:#B3261E; }
.opm-live { font-weight:600; color:#0E5E9C; }
.opm-upload { flex-basis:100%; display:grid; gap:8px; background:#F6F7F4; border:1px solid #DCE1E3; border-radius:4px; padding:12px; margin-top:6px; }
.opm-agree { font-size:.875rem; }

/* responsive */
@media (max-width:1180px) {
  .opm-layout { grid-template-columns:200px minmax(0,1fr); }
  .opm-basket { position:fixed; left:0; right:0; bottom:0; top:auto; z-index:9999; }
  .opm-basket .opm-basket-in { display:none; }
  .opm-basket.has-items .opm-bar { display:flex; justify-content:space-between; align-items:center; gap:12px; background:var(--surface); border-top:1px solid var(--line); padding:12px 24px; box-shadow:0 -6px 20px -12px rgba(20,34,48,.25); }
}
@media (max-width:860px) {
  .opm { padding:24px 16px 120px; }
  .opm-head { grid-template-columns:1fr; gap:20px; }
  .opm-signed { text-align:left; }
  .opm-signin form { flex-direction:column; }
  .opm-layout { grid-template-columns:1fr; gap:16px; }
  .opm-filters { position:static; display:none; background:var(--surface); border:1px solid var(--line); border-radius:var(--r); padding:16px; }
  .opm-filters.is-open { display:grid; }
  .opm-filter-toggle { display:inline-block; }
  .opm-table thead { display:none; }
  .opm-table, .opm-table tbody, .opm-table tr { display:block; }
  .opm-table tr { display:grid; grid-template-columns:1fr auto; gap:6px 12px; padding:14px 0; border-bottom:1px solid var(--line); }
  .opm-table th, .opm-table td { border:0; padding:0; }
  .opm-table .opm-site { grid-column:1; }
  .opm-table td[data-label=DA] { grid-column:2; grid-row:1; align-self:start; }
  .opm-table td[data-label=DA]::before { content:'DA '; color:var(--muted); font-size:.8rem; }
  .opm-niches-cell { grid-column:1 / -1; }
  .opm-table td[data-label=Standard], .opm-table td[data-label=Restricted] { text-align:left; display:flex; align-items:center; gap:8px; }
  .opm-table td[data-label=Standard]::before { content:'Standard'; font:.8rem var(--fb); color:var(--muted); min-width:64px; }
  .opm-table td[data-label=Restricted]::before { content:'Restricted'; font:.8rem var(--fb); color:var(--muted); min-width:64px; }
  .opm-row2 { grid-template-columns:1fr; gap:0; }
  .opm-sheet { width:100vw; border-left:0; }
  .opm-sheet-head, .opm-sheet-body, .opm-sheet-foot { padding-left:16px; padding-right:16px; }
  .opm-basket.has-items .opm-bar { padding:12px 16px; }
}
@media (prefers-reduced-motion:reduce) { .opm * { transition:none !important; scroll-behavior:auto !important; } }
.opm-checkout-note { background:#E8F2FA; border-left:3px solid #0E5E9C; padding:12px 16px; margin:0 0 12px; font-family:'Source Sans 3',sans-serif; color:#142230; }

/* refinements after first render */
body.opm-page .site-content .ast-container, body.opm-page #content .ast-container { max-width:none !important; padding-left:0; padding-right:0; }
.opm-table thead th, .opm-table thead .num { font-family:var(--fb); }
.opm-th-sub { font-family:var(--fb); }
.opm-layout { grid-template-columns:210px minmax(0,1fr) 290px; gap:28px; }
.opm .opm-check input[type=checkbox] { appearance:auto; -webkit-appearance:checkbox; position:static; width:16px; height:16px; min-height:0; padding:0; margin:0; border:0; box-shadow:none; background:none; }
.opm-fgroup .opm-check { font-weight:400; font-size:.95rem; }
.opm-site { min-width:180px; }
.opm-niches-cell { min-width:200px; }
@media (max-width:1180px) { .opm-layout { grid-template-columns:200px minmax(0,1fr); } }
@media (max-width:860px) { .opm-layout { grid-template-columns:1fr; } .opm-site, .opm-niches-cell { min-width:0; } }
.opm-bname { white-space:normal; }
.opm-x { padding:0 !important; min-height:0; box-shadow:none !important; background:transparent !important; color:var(--muted) !important; }
.opm-x:hover { background:#EEF1F2 !important; color:var(--ink) !important; }
.opm-price, .opm-btn, .opm-btn-outline, .opm-link, .opm-seg-opt > span { box-shadow:none; }
.opm .opm-price { padding:9px 12px; line-height:1; }
.opm .opm-btn { padding:12px 18px; line-height:1; }
.opm .opm-link { padding:0; background:none; color:var(--accent-ink); }
.opm .opm-link:hover { background:none; color:var(--accent-dark); }
.opm .opm-btn-outline { padding:10px 14px; background:transparent; color:var(--ink); }

/* tabs + national syndication */
.opm-tabs { display:flex; gap:4px; border-bottom:1px solid var(--line); margin:0 0 24px; }
.opm .opm-tabs button { font:600 1rem/1 var(--fb); background:none; border:0; border-bottom:2px solid transparent; color:var(--muted); padding:12px 14px 14px; margin-bottom:-1px; cursor:pointer; border-radius:0; box-shadow:none; }
.opm .opm-tabs button:hover { color:var(--ink); background:none; }
.opm .opm-tabs button.is-on { color:var(--ink); border-bottom-color:var(--accent-ink); }
.opm-tab-n { font-size:.75rem; color:var(--muted); margin-left:4px; }
.opm.is-synd .opm-layout { grid-template-columns:minmax(0,1fr) 290px; }
.opm-synd { min-width:0; }
.opm-bundle { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:32px; align-items:center; background:#0B1622; color:#C9D4DC; border-radius:var(--r); padding:32px; }
.opm-bundle.is-on { box-shadow:inset 0 0 0 2px #2EA3F2; }
.opm .opm-bundle h2 { color:#F4F7F9; font-size:clamp(1.5rem,1.1rem + 1vw,2.1rem); line-height:1.08; margin:0 0 10px; font-weight:800; letter-spacing:-.02em; }
.opm-bundle p { margin:0; }
.opm-bundle-copy p { color:#B4C3CE; font-size:1.05rem; max-width:48ch; }
.opm-bundle-buy { display:grid; gap:10px; justify-items:start; }
.opm-bundle-price { font-size:2.6rem; line-height:1; color:#fff; }
.opm-bundle-price .opm-muted, .opm-bundle-save { color:#9FB3C2; font-size:.95rem; }
.opm .opm-bundle .opm-btn-outline { color:#fff; border-color:rgba(255,255,255,.5); }
.opm-synd-terms { margin:14px 0 32px; font-size:.9rem; color:var(--muted); }
.opm .opm-synd-h { font-size:1.2rem; margin:0 0 16px; }
.opm-synd-h .opm-muted { font:400 1rem var(--fb); margin-left:6px; }
.opm-regions { columns:2 300px; column-gap:40px; }
.opm-region { break-inside:avoid; margin:0 0 28px; }
.opm .opm-region h3 { font:700 .82rem/1 var(--fb); text-transform:uppercase; letter-spacing:.07em; color:var(--muted); margin:0 0 6px; padding-bottom:8px; border-bottom:1px solid var(--ink); }
.opm-region ul { list-style:none; margin:0; padding:0; }
.opm-region li { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:7px 0; border-bottom:1px solid var(--line); }
.opm-tname { font-weight:600; }
.opm-region .opm-price { min-width:80px; padding:7px 10px; font-size:.88rem; }
.opm-incl { font-size:.8rem; color:var(--success); font-weight:600; }
@media (max-width:1180px) { .opm.is-synd .opm-layout { grid-template-columns:1fr; } }
@media (max-width:860px) { .opm-bundle { grid-template-columns:1fr; padding:24px; gap:20px; } .opm-tabs { overflow-x:auto; } }
.opm [hidden]{display:none !important}

/* ===== checkout, account, thank-you in the Newsroom style ===== */
body.opm-commerce, body.opm-commerce #content, body.opm-commerce .site-content { background:#F6F7F4; }
body.opm-commerce .site-content .ast-container { max-width:1180px; }
body.opm-commerce .entry-title, body.opm-commerce .entry-header h1 { font:800 clamp(30px,1.6vw + 18px,44px)/1.05 'Schibsted Grotesk',sans-serif; letter-spacing:-.03em; color:#142230; }
body.opm-commerce .woocommerce, body.opm-commerce .woocommerce input, body.opm-commerce .woocommerce select, body.opm-commerce .woocommerce textarea { font-family:'Source Sans 3',system-ui,sans-serif; color:#142230; }
body.opm-commerce .woocommerce h2, body.opm-commerce .woocommerce h3, body.opm-commerce #order_review_heading { font:700 22px/1.2 'Schibsted Grotesk',sans-serif; color:#142230; letter-spacing:-.01em; }
body.opm-commerce .woocommerce input.input-text, body.opm-commerce .woocommerce select, body.opm-commerce .woocommerce textarea, body.opm-commerce .select2-container .select2-selection { border:1px solid #B9C2C7 !important; border-radius:4px !important; background:#fff !important; box-shadow:none !important; min-height:44px; }
body.opm-commerce .woocommerce input.input-text:focus, body.opm-commerce .woocommerce textarea:focus { border-color:#1C8BDB !important; outline:2px solid #2EA3F2; outline-offset:0; }
body.opm-commerce .woocommerce form .form-row label { font-weight:600; font-size:15px; color:#142230; }
body.opm-commerce .woocommerce button.button, body.opm-commerce .woocommerce a.button, body.opm-commerce .woocommerce input.button, body.opm-commerce #place_order { background:#0E5E9C !important; background-image:none !important; color:#fff !important; border:1px solid #0E5E9C !important; border-radius:4px !important; font:600 16px/1 'Source Sans 3',sans-serif !important; padding:15px 22px !important; box-shadow:none !important; }
body.opm-commerce .woocommerce button.button:hover, body.opm-commerce .woocommerce a.button:hover, body.opm-commerce #place_order:hover { background:#0B4B7D !important; border-color:#0B4B7D !important; }
body.opm-commerce .woocommerce button.button:before, body.opm-commerce .woocommerce a.button:before { display:none !important; }
body.opm-commerce #customer_details, body.opm-commerce #order_review, body.opm-commerce .woocommerce-MyAccount-content, body.opm-commerce .woocommerce-order { background:#fff; border:1px solid #DCE1E3; border-radius:4px; padding:28px; }
body.opm-commerce .woocommerce-checkout-review-order-table { border:0 !important; }
body.opm-commerce .woocommerce table.shop_table th, body.opm-commerce .woocommerce table.shop_table td { border-color:#DCE1E3 !important; background:transparent !important; }
body.opm-commerce .woocommerce table.shop_table .amount { font-family:'IBM Plex Mono',monospace; font-weight:500; }
body.opm-commerce .woocommerce table.shop_table dl.variation, body.opm-commerce .wc-item-meta { font-size:14px; color:#5B6874; }
body.opm-commerce .woocommerce-info, body.opm-commerce .woocommerce-message { border:0; border-left:3px solid #0E5E9C; background:#E8F2FA; color:#142230; border-radius:0; }
body.opm-commerce .woocommerce-info:before, body.opm-commerce .woocommerce-message:before { color:#0E5E9C; }
body.opm-commerce .woocommerce-error { border-left:3px solid #B3261E; background:#F9E5E3; color:#142230; }
body.opm-commerce .woocommerce-MyAccount-navigation ul { list-style:none; margin:0; padding:0; border-top:1px solid #DCE1E3; }
body.opm-commerce .woocommerce-MyAccount-navigation li { border-bottom:1px solid #DCE1E3; }
body.opm-commerce .woocommerce-MyAccount-navigation li a { display:block; padding:12px 4px; font-weight:600; color:#142230; text-decoration:none; }
body.opm-commerce .woocommerce-MyAccount-navigation li.is-active a, body.opm-commerce .woocommerce-MyAccount-navigation li a:hover { color:#0E5E9C; box-shadow:inset 3px 0 0 #2EA3F2; padding-left:12px; }
body.opm-commerce .woocommerce a:not(.button) { color:#0E5E9C; }
.opm-checkout-note, .opm-checkout-back { max-width:none; }
@media (max-width:767px){ body.opm-commerce #customer_details, body.opm-commerce #order_review, body.opm-commerce .woocommerce-MyAccount-content { padding:18px; } }
.opm-rapid { display:inline-block; font:700 .7rem/1 var(--fb); text-transform:uppercase; letter-spacing:.06em; color:#0B4B7D; background:#E8F2FA; border:1px solid #9CC9EC; border-radius:4px; padding:3px 6px; margin:4px 6px 0 0; vertical-align:middle; }
/* review thread on the order page */
.opm-review { margin:10px 0 6px; padding:14px 16px; background:#F6F7F4; border:1px solid #DCE1E3; border-radius:4px; font-size:15px; }
.opm-thread { list-style:none; margin:12px 0; padding:0; border-left:2px solid #DCE1E3; }
.opm-msg { margin:0 0 10px; padding:2px 0 2px 14px; }
.opm-msg-staff { border-left:2px solid #2EA3F2; margin-left:-2px; }
.opm-msg-meta { margin:0 0 4px; color:#5B6874; font-size:14px; }
.opm-msg-meta strong { color:#142230; }
.opm-msg-text p { margin:0 0 6px; }
.opm-rform { display:grid; gap:8px; margin:12px 0 0; padding-top:12px; border-top:1px solid #DCE1E3; }
.opm-rlabel { display:grid; gap:4px; font-weight:600; }
.opm-rlabel span { font-weight:400; color:#5B6874; font-size:13px; }
.opm-rlabel textarea, .opm-rlabel input[type=file] { font:inherit; background:#fff; border:1px solid #B9C2C7; border-radius:4px; padding:8px; }
.opm-review .button { justify-self:start; }
body.opm-commerce .woocommerce .opm-review button.opm-secondary { background:#fff !important; color:#142230 !important; border-color:#142230 !important; }
.opm-badge-changes_requested { background:#FBF0DF; color:#A15C07; }
.opm-badge-writing { background:#E8F2FA; color:#0E5E9C; }
.opm-note { color:#5B6874; font-size:14px; }
body.opm-commerce .woocommerce .opm-review .button{margin:0 !important;justify-self:start}
.opm-review .opm-agree{font-weight:400}

.opm-lnote{display:block;font-size:.8rem;color:#A15C07;margin-top:4px;max-width:28ch;line-height:1.3}
.opm-chip-g{color:#1F7A4D;border-color:#BFDCCB;background:#F1F8F4}

/* publisher sign-up + dashboard */
.opm-pubform { font-family:'Source Sans 3',sans-serif; color:#142230; background:#fff; border:1px solid #DCE1E3; border-radius:4px; padding:32px; max-width:860px; display:grid; gap:18px; }
.opm-pubform label { display:grid; gap:6px; font-weight:600; font-size:15px; }
.opm-pubform label span { font-weight:400; color:#5B6874; font-size:13px; }
.opm-pubform input[type=text], .opm-pubform input[type=email], .opm-pubform input[type=url], .opm-pubform input[type=number] { font:400 16px 'Source Sans 3',sans-serif; border:1px solid #B9C2C7; border-radius:4px; padding:10px 12px; min-height:44px; background:#fff; color:#142230; box-shadow:none; width:100%; }
.opm-pubform fieldset { border:0; padding:0; margin:0; }
.opm-pubform legend { font-weight:600; font-size:15px; margin-bottom:8px; }
.opm-nichegrid { display:grid; grid-template-columns:repeat(auto-fill,minmax(180px,1fr)); gap:4px 16px; }
.opm-pubform .opm-check { display:flex; grid-template-columns:none; align-items:flex-start; gap:8px; font-weight:400; }
.opm-pubform .opm-check input { margin-top:4px; }
.opm-pubform .opm-row2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.opm-pubform .opm-btn { font:600 16px/1 'Source Sans 3',sans-serif; background:#0E5E9C; color:#fff; border:0; border-radius:4px; padding:15px 22px; cursor:pointer; justify-self:start; }
.opm-pubform .opm-btn:hover { background:#0B4B7D; }
.opm-ferr { color:#B3261E; font-weight:600; margin:0; }
.opm-done h2 { font:800 28px/1.1 'Schibsted Grotesk',sans-serif; margin:0 0 8px; }
@media (max-width:767px){ .opm-pubform { padding:20px; } .opm-pubform .opm-row2 { grid-template-columns:1fr; } }
.opm-pub h2 { margin:32px 0 12px; }
.opm-pub h2:first-child { margin-top:0; }
.opm-count { display:inline-block; background:#0E5E9C; color:#fff; font:600 13px/1 'IBM Plex Mono',monospace; padding:4px 8px; border-radius:4px; vertical-align:middle; }
.opm-job { border:1px solid #DCE1E3; border-radius:4px; padding:16px 18px; margin:0 0 14px; background:#fff; }
.opm-job-h { display:flex; flex-wrap:wrap; gap:6px 16px; align-items:baseline; margin:0 0 8px; }
.opm-job-h span { color:#5B6874; }
.opm-dl { color:#A15C07 !important; font-weight:600; }
.opm-article { max-height:360px; overflow:auto; border-left:3px solid #DCE1E3; padding:4px 14px; margin:10px 0; font-size:15px; }
.opm-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.opm-inline { display:flex; flex-wrap:wrap; gap:8px; align-items:end; margin:8px 0; }
.opm-inline label { display:grid; gap:4px; font-weight:600; flex:1 1 320px; }
.opm-inline input[type=url], .opm-inline input[type=text] { border:1px solid #B9C2C7; border-radius:4px; padding:9px 10px; background:#fff; }
.opm-sites .opm-sitesub td { background:#F6F7F4 !important; font-size:14px; }
.opm-code-snip { display:block; background:#0B1622; color:#E6ECF0; padding:10px 12px; border-radius:4px; font:500 13px 'IBM Plex Mono',monospace; overflow-x:auto; margin:6px 0; }
.opm-ok { color:#1F7A4D; font-size:13px; font-weight:600; }
body.opm-commerce .woocommerce .opm-pub button.opm-secondary{background:#fff !important;color:#142230 !important;border-color:#142230 !important}
body.opm-commerce .woocommerce .opm-pub .button{margin:0 !important}
.opm-actions .opm-inline{margin:0}

/* df / nf link-type tags */
.opm-ltag { display:inline-block; font:600 .72rem/1 var(--fm, 'IBM Plex Mono', monospace); text-decoration:none; border:0; padding:3px 6px; border-radius:4px; letter-spacing:.02em; cursor:help; vertical-align:middle; }
.opm-df { background:#E3F4EA; color:#17663A; }
.opm-nf { background:#EEF1F4; color:#55626F; }
.opm-table .opm-lt { width:1%; white-space:nowrap; text-align:center; }
.opm-tname .opm-ltag { margin-left:6px; }
@media (max-width:860px) { .opm-table td[data-label=Link] { grid-column:2; grid-row:2; align-self:start; text-align:right; } }
abbr.opm-ltag, abbr.opm-ltag[title] { text-decoration:none; border-bottom:0; }
