/* ASA OS marketing, Phase 0 (request 248). shop.css tokens and components only; this file adds the marketing pieces. */

.mk-tabs { display: flex; gap: 2px; margin: -8px 0 18px; border-bottom: 1px solid var(--hair); overflow-x: auto; scrollbar-width: none; }
.mk-tab { padding: 10px 12px 11px; font-size: 14px; font-weight: 500; color: var(--ink-2); border-bottom: 2px solid transparent; white-space: nowrap; }
.mk-tab:hover { color: var(--ink); text-decoration: none; }
.mk-tab[aria-current="page"] { color: var(--ink); border-bottom-color: var(--ink); }
.mk-period { margin-bottom: 16px; flex-wrap: wrap; }
.mk-sec { margin: 22px 0; }
.mk-ai { font-size: 11px; font-weight: 600; letter-spacing: 0.04em; padding: 2px 7px; border-radius: 999px; background: var(--accent-soft); color: var(--accent); }

/* tiles */
.mk-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; }
.mk-tile { background: var(--surface); border-radius: var(--r-m); box-shadow: 0 0 0 .5px var(--hair); padding: 14px 16px; }
.mk-tile-l { font-size: 12.5px; color: var(--ink-2); }
.mk-tile-v { font: 600 26px/1.15 var(--font-display); letter-spacing: -0.02em; margin-top: 2px; }
.mk-tile-s { font-size: 12.5px; color: var(--ink-2); margin-top: 2px; }
.mk-tile.is-locked .mk-tile-v { font-size: 15px; font-weight: 500; color: var(--ink-3); }

/* funnel */
.mk-funnel { background: var(--surface); border-radius: var(--r-l); box-shadow: 0 0 0 .5px var(--hair); padding: 8px 18px; }
.mk-fstep { display: grid; grid-template-columns: minmax(150px, 1.1fr) minmax(0, 2fr) 48px 52px; align-items: center; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--hair); font-size: 14px; }
.mk-fstep:last-child { border-bottom: 0; }
.mk-fbar { height: 10px; border-radius: 6px; background: var(--fill); overflow: hidden; }
.mk-fbar span { display: block; height: 100%; border-radius: 6px; background: var(--accent); }
.mk-fn { font-weight: 600; text-align: right; }
.mk-fc { font-size: 12.5px; color: var(--ink-2); text-align: right; }
.mk-fx { grid-column: 1 / -1; font-size: 12px; color: var(--ink-3); margin-top: -4px; }

/* channels table */
.mk-ctable { background: var(--surface); border-radius: var(--r-l); box-shadow: 0 0 0 .5px var(--hair); overflow: hidden; }
.mk-chead, .mk-crow { display: grid; grid-template-columns: minmax(0, 1.8fr) 60px repeat(4, minmax(0, 1fr)); gap: 12px; align-items: center; padding: 0 18px; }
.mk-chead { min-height: 36px; font-size: 12px; color: var(--ink-2); font-weight: 500; background: var(--surface-2); border-bottom: 1px solid var(--hair); }
.mk-crow { min-height: 48px; border-bottom: 1px solid var(--hair); font-size: 14px; }
.mk-crow:last-child { border-bottom: 0; }
.mk-cname { font-weight: 500; }
.mk-how { margin-top: 10px; }
.mk-how p { font-size: 13px; color: var(--ink-2); margin: 6px 0 0; max-width: 80ch; }
.mk-spend { margin-top: 18px; }
.mk-spend summary { font-size: 14px; color: var(--ink); font-weight: 600; }
.mk-spend-row { display: grid; grid-template-columns: minmax(0, 1.4fr) 150px 120px auto; gap: 8px; margin-top: 10px; }

/* recommendations */
.mk-cap { margin: -4px 0 10px; }
.mk-rgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 12px; }
.mk-rcard { background: var(--surface); border-radius: var(--r-l); box-shadow: 0 0 0 .5px var(--hair); padding: 16px 18px; display: flex; flex-direction: column; gap: 6px; }
.mk-rname { font: 600 16px/1.3 var(--font-display); letter-spacing: -0.012em; }
.mk-rwhy { font-size: 13.5px; color: var(--ink-2); margin: 0; }
.mk-rnums { display: flex; gap: 14px; font-size: 13.5px; color: var(--ink-2); }
.mk-rnums strong { color: var(--ink); font-size: 18px; margin-right: 3px; }
.mk-rcard .btn { align-self: flex-start; margin-top: auto; }

/* studio */
.mk-studio { display: grid; grid-template-columns: minmax(250px, 0.9fr) minmax(0, 1.5fr) minmax(280px, 1fr); gap: 16px; align-items: start; }
.mk-col { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.mk-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.shop-on .mk-chips .cp-chip { background: var(--fill); color: var(--ink); }
.shop-on .mk-chips .cp-chip[aria-pressed="true"] { background: var(--accent-soft); color: var(--accent); }
.mk-plist { display: flex; flex-direction: column; max-height: 360px; overflow-y: auto; margin-top: 6px; border-top: 1px solid var(--hair); }
.mk-prow { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 2px 10px; padding: 8px 0; border-bottom: 1px solid var(--hair); font-size: 14px; color: var(--ink); cursor: pointer; }
.mk-prow input { grid-row: 1 / 3; margin-top: 3px; }
.mk-pname { font-weight: 500; }
.mk-popp { font-size: 12.5px; color: var(--ink-2); }
.mk-left { margin-top: 8px; font-size: 13px; }
.mk-left ul { margin: 6px 0 0; padding-left: 18px; color: var(--ink-2); }
.mk-msg-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 8px; }
.mk-msg-head h2 { margin: 0; }
.mk-msg .jc-field { margin-bottom: 10px; }
.mk-msg textarea, .mk-msg input, .mk-msg select { width: 100%; box-sizing: border-box; }
.mk-airow { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 4px 0 10px; }
.shop-on .mk-aibtn { background: transparent; color: var(--ink); box-shadow: inset 0 0 0 1.5px var(--accent); }
.shop-on .mk-aibtn::before { content: "✦"; color: var(--accent); }
.mk-rcs-set { border: 0; padding: 12px 0 0; margin: 4px 0 0; border-top: 1px solid var(--hair); display: flex; flex-direction: column; gap: 8px; }
.mk-rcs-set legend { font-size: 13px; font-weight: 600; padding: 0; }
.mk-btnrow { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.mk-blocks { display: flex; flex-direction: column; gap: 8px; margin: 6px 0 10px; }
.mk-block { border-radius: var(--r-m); box-shadow: inset 0 0 0 1px var(--hair); padding: 8px 10px; display: flex; flex-direction: column; gap: 6px; }
.mk-block-h { display: flex; justify-content: space-between; align-items: center; font-size: 12.5px; font-weight: 600; color: var(--ink-2); }
.shop-on .mk-block-ctl button { min-height: 24px; padding: 0 6px; font-size: 12px; }
.mk-acts { margin-top: 2px; }

/* preview */
.mk-preview { display: flex; justify-content: center; }
.mk-phone { width: 100%; max-width: 300px; border-radius: 26px; background: var(--canvas); box-shadow: 0 0 0 1px var(--hair-strong); padding: 14px 12px 18px; display: flex; flex-direction: column; gap: 8px; }
.mk-phone-top { text-align: center; font-size: 12.5px; font-weight: 600; color: var(--ink-2); display: flex; justify-content: center; gap: 6px; }
.mk-verified { color: var(--accent); font-weight: 600; }
.mk-bubble { align-self: flex-start; max-width: 88%; background: var(--fill); border-radius: 16px 16px 16px 4px; padding: 9px 12px; font-size: 14px; white-space: pre-wrap; }
.mk-rcs { align-self: flex-start; width: 88%; background: var(--surface); border-radius: 14px; box-shadow: 0 0 0 .5px var(--hair-strong); overflow: hidden; }
.mk-rcs-img { height: 92px; display: grid; place-items: center; font-size: 12px; color: var(--ink-2); background: linear-gradient(135deg, var(--accent-soft), var(--fill)); }
.mk-rcs-t { font-weight: 600; font-size: 14px; padding: 8px 10px 0; }
.mk-rcs-b { font-size: 13px; color: var(--ink-2); padding: 2px 10px 8px; }
.mk-rcs-btns { display: flex; flex-direction: column; border-top: 1px solid var(--hair); }
.mk-rcs-btns span { padding: 8px; text-align: center; font-size: 13.5px; font-weight: 500; color: var(--accent); border-bottom: 1px solid var(--hair); }
.mk-rcs-btns span:last-child { border-bottom: 0; }
.mk-fallback { font-size: 11.5px; color: var(--ink-3); margin: 0; text-align: center; }
.mk-mail { width: 100%; border-radius: var(--r-m); box-shadow: 0 0 0 1px var(--hair-strong); overflow: hidden; background: var(--surface); }
.mk-mail-meta { padding: 10px 12px; border-bottom: 1px solid var(--hair); display: flex; flex-direction: column; font-size: 13px; }
.mk-mail-meta span { color: var(--ink-2); font-size: 12px; }
.mk-mail-body { padding: 12px 14px; font-size: 13.5px; display: flex; flex-direction: column; gap: 8px; }
.mk-mail-body h3 { margin: 0; font-size: 16px; }
.mk-mail-body p { margin: 0; white-space: pre-wrap; }
.mk-mail-btn { align-self: flex-start; background: var(--accent); color: var(--accent-ink); border-radius: 999px; padding: 7px 14px; font-weight: 600; font-size: 13px; }
.mk-mail-svc { margin: 0; padding-left: 18px; }
.mk-mail-offer { background: var(--accent-soft); border-radius: var(--r-s); padding: 8px 10px; font-weight: 500; }
.mk-mail-rev { color: var(--amber); font-size: 13px; }
.mk-mail-hours { font-size: 12.5px; color: var(--ink-2); }
.mk-mail-foot { font-size: 11px; color: var(--ink-3); border-top: 1px solid var(--hair); padding-top: 8px; }
.mk-checks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 13.5px; }
.mk-checks li { display: grid; grid-template-columns: 18px 1fr; gap: 6px; }
.mk-checks li::before { content: "✓"; color: var(--green); font-weight: 700; }
.mk-checks li.is-todo::before { content: "○"; color: var(--amber); }

/* automations */
.mk-arow { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 14px 18px; border-bottom: 1px solid var(--hair); }
.mk-arow:last-child { border-bottom: 0; }
.mk-aname { font-weight: 600; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.mk-kind { font-size: 11.5px; font-weight: 500; padding: 1px 8px; border-radius: 999px; background: var(--fill); color: var(--ink-2); }
.mk-kind.k-marketing { background: var(--accent-soft); color: var(--accent); }
.mk-atrig { font-size: 13.5px; color: var(--ink-2); margin-top: 2px; }
.mk-ameta { display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: 12.5px; color: var(--ink-2); margin-top: 6px; align-items: center; }
.mk-chan { font-size: 11.5px; padding: 1px 7px; border-radius: 6px; box-shadow: inset 0 0 0 1px var(--hair-strong); color: var(--ink); }
.shop-on .mk-switch { width: 46px; min-height: 0; height: 28px; padding: 2px; border-radius: 999px; background: var(--fill-hover); justify-content: flex-start; }
.shop-on .mk-switch span { width: 24px; height: 24px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, .25); transition: transform .15s ease; }
.shop-on .mk-switch.is-on { background: var(--green); }
.shop-on .mk-switch.is-on span { transform: translateX(18px); }
.mk-state { font-size: 13px; color: var(--ink-3); }
.mk-state.is-on { color: var(--green); font-weight: 600; }

/* AI search */
.mk-aeo { background: var(--surface); border-radius: var(--r-l); box-shadow: 0 0 0 .5px var(--hair); overflow-x: auto; }
.mk-aeo-h, .mk-aeo-r { display: grid; grid-template-columns: minmax(200px, 1.4fr) repeat(4, minmax(120px, 1fr)); gap: 10px; align-items: center; padding: 0 16px; min-width: 720px; }
.mk-aeo-h { min-height: 36px; font-size: 12px; color: var(--ink-2); font-weight: 500; background: var(--surface-2); border-bottom: 1px solid var(--hair); }
.mk-aeo-r { min-height: 54px; border-bottom: 1px solid var(--hair); font-size: 13.5px; }
.mk-aeo-r:last-child { border-bottom: 0; }
.mk-aeo-p { font-weight: 500; }
.mk-aeo-c { color: var(--ink-3); display: flex; flex-direction: column; }
.mk-aeo-c.is-hit { color: var(--green); font-weight: 600; }
.mk-aeo-c.is-unchecked { color: var(--ink-3); }
.mk-example > summary { cursor: pointer; font-weight: 600; margin: 4px 0 8px; }
.mk-example .mk-aeo { opacity: .85; }
.mk-aeo-c small { font-size: 11px; color: var(--ink-3); font-weight: 400; }
.mk-ready { list-style: none; margin: 0; padding: 0; background: var(--surface); border-radius: var(--r-l); box-shadow: 0 0 0 .5px var(--hair); }
.mk-ready li { display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 2px 8px; padding: 12px 16px; border-bottom: 1px solid var(--hair); font-size: 14px; }
.mk-ready li:last-child { border-bottom: 0; }
.mk-ready li::before { grid-row: 1 / 3; content: "✓"; color: var(--green); font-weight: 700; }
.mk-ready li.is-todo::before { content: "○"; color: var(--amber); }
.mk-ready li.is-info::before { content: "i"; color: var(--ink-3); font-style: italic; }
.mk-ready span { font-size: 13px; color: var(--ink-2); grid-column: 2; }
.mk-fixes { margin: 0; padding-left: 20px; font-size: 14px; display: flex; flex-direction: column; gap: 6px; }

/* journey + job source */
.mk-jfirst { font-size: 13.5px; color: var(--ink-2); margin: -4px 0 10px; }
.mk-journey { list-style: none; margin: 0; padding: 4px 18px; background: var(--surface); border-radius: var(--r-l); box-shadow: 0 0 0 .5px var(--hair); }
.mk-j { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--hair); }
.mk-j:last-child { border-bottom: 0; }
.mk-jicon { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: var(--fill); font-size: 12px; font-weight: 700; color: var(--ink-2); }
.mk-j.k-touch .mk-jicon, .mk-j.k-source .mk-jicon { background: var(--accent-soft); color: var(--accent); }
.mk-j.k-paid .mk-jicon, .mk-j.k-decision .mk-jicon { background: var(--green-soft); color: var(--green); }
.mk-j.k-campaign .mk-jicon { background: var(--amber-soft); color: var(--amber); }
.mk-jt { font-weight: 500; font-size: 14px; display: flex; justify-content: space-between; gap: 10px; }
.mk-jamt { font-weight: 600; }
.mk-jd { font-size: 13px; color: var(--ink-2); }
.mk-jm { font-size: 12px; color: var(--ink-3); margin-top: 1px; }
.mk-src-pick { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px; margin-top: 8px; }
.mk-src-pick select { width: 100%; }

@media (max-width: 1100px) { .mk-studio { grid-template-columns: 1fr; } }
@media (max-width: 860px) {
  .mk-chead { display: none; }
  .mk-crow { grid-template-columns: 1fr auto; grid-template-areas: "name new" "rest rest"; padding: 10px 14px; gap: 4px 12px; }
  .mk-crow > .mk-cname { grid-area: name; } .mk-crow > span:nth-child(2) { grid-area: new; font-weight: 600; }
  .mk-crow > span:nth-child(n+3) { font-size: 12.5px; color: var(--ink-2); }
  .mk-fstep { grid-template-columns: minmax(0, 1fr) 40px 44px; }
  .mk-fstep .mk-fbar { grid-column: 1 / -1; grid-row: 2; }
  .mk-spend-row { grid-template-columns: 1fr 1fr; }
  .mk-funnel, .mk-journey { padding: 4px 14px; }
}
.mk-rlink { font-size: 13px; font-weight: 500; }

/* 074: messages on the journey */
.mk-j.k-message_reply .mk-jicon, .mk-j.k-message_booking .mk-jicon { color: var(--accent); }

/* 144: marketing workspace — scope, campaigns, held "would send", coming next */
.mk-ws { margin-bottom: 8px; }
.mk-results-head { margin-top: 26px; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; }
.mk-st { display: inline-block; font-size: 11.5px; font-weight: 600; letter-spacing: 0.02em; padding: 2px 8px; border-radius: 999px; background: var(--fill); color: var(--ink-2); vertical-align: middle; white-space: nowrap; }
.mk-st-ready { background: var(--accent-soft); color: var(--accent); }
.mk-st-scheduled { background: var(--green-soft); color: var(--green); }
.mk-st-paused { background: var(--amber-soft); color: var(--amber); }
.mk-st-cancelled, .mk-st-ended { background: var(--fill); color: var(--ink-3); }
.mk-cw-group h3 { font-size: 13px; font-weight: 600; color: var(--ink-2); margin: 12px 0 6px; }
.mk-cw-list { display: flex; flex-direction: column; background: var(--surface); border-radius: var(--r-l); box-shadow: 0 0 0 .5px var(--hair); overflow: hidden; }
.mk-cw-row { display: flex; flex-direction: column; gap: 3px; padding: 12px 18px; border-bottom: 1px solid var(--hair); color: var(--ink); }
.mk-cw-row:last-child { border-bottom: 0; }
.mk-cw-row:hover { background: var(--surface-2); text-decoration: none; }
.mk-cw-main { display: flex; align-items: center; gap: 10px; justify-content: space-between; }
.mk-cw-name { font-weight: 600; font-size: 15px; min-width: 0; overflow-wrap: anywhere; }
.mk-cw-meta, .mk-cw-count { font-size: 13px; color: var(--ink-2); overflow-wrap: anywhere; }
.mk-cw-miss { font-size: 12.5px; color: var(--amber); font-weight: 500; }
.mk-needs-list, .mk-held-list, .mk-next-list { list-style: none; margin: 0; padding: 4px 18px; background: var(--surface); border-radius: var(--r-l); box-shadow: 0 0 0 .5px var(--hair); }
.mk-needs-list li, .mk-held-list li, .mk-next-list li { padding: 10px 0; border-bottom: 1px solid var(--hair); font-size: 14px; overflow-wrap: anywhere; }
.mk-needs-list li:last-child, .mk-held-list li:last-child, .mk-next-list li:last-child { border-bottom: 0; }
.mk-needs-list a, .mk-held-list a { font-weight: 600; }
.mk-held-why { font-size: 12.5px; color: var(--ink-2); margin-top: 2px; }
.mk-growth-line { margin: 4px 0 0; }
.mk-next-list .mk-st { margin-left: 4px; }
.mk-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.mk-filters .seg { flex-wrap: wrap; }
.mk-cgrid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(300px, 1fr); gap: 16px; align-items: start; }
.mk-cform { display: flex; flex-direction: column; gap: 14px; }
.mk-cpanel h2 { font-size: 16px; margin: 0 0 10px; }
.mk-cpanel .jc-field { margin-bottom: 12px; }
.mk-cpanel textarea, .mk-cpanel input:not([type="checkbox"]), .mk-cpanel select { width: 100%; max-width: 100%; box-sizing: border-box; }
.mk-stores { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 6px 12px; margin-top: 8px; }
.mk-store, .mk-leg > label { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--ink); margin: 0; white-space: nowrap; }
.mk-cpanel input[type="checkbox"] { width: 18px; height: 18px; flex: none; margin: 0; padding: 0; min-height: 0; }
.mk-legs { display: flex; flex-direction: column; gap: 10px; }
.mk-leg { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 8px; align-items: start; padding: 8px 0; border-bottom: 1px solid var(--hair); }
.mk-leg:last-child { border-bottom: 0; }
.mk-leg > label { font-weight: 600; font-size: 14px; display: flex; align-items: center; gap: 6px; padding-top: 6px; }
.mk-leg-pick { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.mk-offer { margin-top: 10px; display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 0 12px; }
.mk-offer .cp-fine { grid-column: 1 / -1; margin: 0; }
.mk-dates { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 12px; }
.mk-budget { font-weight: 600; font-size: 14px; margin: 10px 0 0; }
.mk-aud { margin-top: 10px; }
.mk-aud-table, .mk-held-table { display: flex; flex-direction: column; border-top: 1px solid var(--hair); }
.mk-aud-row { display: grid; grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(44px, 0.6fr)); gap: 8px; padding: 7px 0; border-bottom: 1px solid var(--hair); font-size: 13.5px; }
.mk-held-rows { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--hair); }
.mk-hrow { display: flex; flex-direction: column; gap: 2px; padding: 9px 0; border-bottom: 1px solid var(--hair); font-size: 13.5px; overflow-wrap: anywhere; }
.mk-hrow-n { color: var(--ink-2); font-size: 13px; }
.mk-aud-head { font-size: 12px; color: var(--ink-2); font-weight: 500; }
.mk-rchecks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; font-size: 13.5px; }
.mk-rchecks li { display: flex; gap: 6px; align-items: baseline; }
.mk-ck { flex: none; width: 18px; height: 18px; border-radius: 50%; display: inline-grid; place-items: center; font-size: 11px; font-weight: 700; background: var(--fill); color: var(--ink-2); }
.mk-rchecks .is-ok .mk-ck { background: var(--green-soft); color: var(--green); }
.mk-rchecks .is-bad .mk-ck { background: var(--amber-soft); color: var(--amber); }
.mk-rchecks .is-info { color: var(--ink-2); }
.mk-note { margin: 8px 0; }
.mk-note input { width: 100%; box-sizing: border-box; }
.mk-history { list-style: none; margin: 0; padding: 0; font-size: 13px; display: flex; flex-direction: column; gap: 8px; }
.mk-rev { color: var(--ink-3); }
.mk-content-soon { margin-bottom: 18px; }
.mk-byjob-sum { font-size: 14px; margin: 0 0 8px; }
.mk-claims { list-style: none; margin: 4px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 6px; }
.mk-claims .mk-claim { font-size: 12.5px; padding: 2px 8px; border-radius: 999px; background: var(--fill); color: var(--ink-2); border: 0; }
.mk-claims .k-ai { background: var(--accent-soft); color: var(--accent); }
.mk-claims .k-growth { background: var(--amber-soft); color: var(--amber); }
@media (max-width: 960px) { .mk-cgrid { grid-template-columns: 1fr; } .mk-cgrid > .mk-col:not(.mk-col-main) { order: -1; } }   /* status and what's held first on narrow screens */
@media (max-width: 560px) {
  .mk-cw-row { padding: 12px 14px; }
  .mk-leg { grid-template-columns: 1fr; }
  .mk-offer, .mk-dates { grid-template-columns: 1fr; }
  .mk-needs-list, .mk-held-list, .mk-next-list { padding: 4px 14px; }
  .pg-actions #mk-scope { max-width: 100%; }
}
/* B3 (navigation cleanup): New campaign: who is it for? one way in, each kind to its own builder */
.mk-picks { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin: 10px 0 16px; }
.mk-pick { display: grid; gap: 6px; padding: 14px 16px; border-radius: 12px; background: var(--surface); color: var(--ink); text-decoration: none; }
.mk-pick:hover { background: var(--fill); }
.mk-pick strong { font-size: 15px; }

/* Batch 30 (UI_COVERAGE.md, stream B): campaign panels under the shared band look (stream A's .band: the accent, white heavy
   italic, square). Markup unchanged: a panel whose first child is its heading (or a head row holding it) gets the band. */
body.shop-on :is(.mk-cpanel):has(> h2:first-child, > :is(div, header):first-child > h2) { padding-top: 0; padding-left: 18px; padding-right: 18px; }   /* no overflow clip: rows, menus and popovers stay reachable */
body.shop-on :is(.mk-cpanel) > h2:first-child,
body.shop-on :is(.mk-cpanel) > :is(div, header):first-child:has(> h2) { display: flex; align-items: center; justify-content: space-between; gap: 6px 12px; flex-wrap: wrap;
  margin: 0 -18px 14px; padding: 9px 18px; min-height: 44px; box-sizing: border-box; background: var(--accent); color: var(--accent-ink, #fff); border-radius: 3px 3px 0 0; }
body.shop-on :is(.mk-cpanel) > :is(div, header):first-child > h2 { margin: 0; }
body.shop-on :is(.mk-cpanel) > h2:first-child, body.shop-on :is(.mk-cpanel) > :is(div, header):first-child > h2 { color: var(--accent-ink, #fff);
  font: italic 900 23px/1.08 var(--font-title); text-transform: uppercase; letter-spacing: -0.004em; }
body.shop-on :is(.mk-cpanel) > :is(div, header):first-child:has(> h2) :is(span, small, label, .cp-fine, a:not(.btn)) { color: inherit; }
body.shop-on :is(.mk-cpanel) > :is(div, header):first-child:has(> h2) :is(button.quiet, .btn.quiet) { color: inherit; background: rgba(255, 255, 255, 0.14); }
@media (max-width: 860px) { body.shop-on :is(.mk-cpanel) > h2:first-child, body.shop-on :is(.mk-cpanel) > :is(div, header):first-child > h2 { font-size: 19px; } body.shop-on :is(.mk-cpanel):has(> h2:first-child, > :is(div, header):first-child > h2) { padding-left: 14px; padding-right: 14px; } body.shop-on :is(.mk-cpanel) > h2:first-child, body.shop-on :is(.mk-cpanel) > :is(div, header):first-child:has(> h2) { margin-left: -14px; margin-right: -14px; padding-left: 14px; padding-right: 14px; } }

/* Batch 30 (UI_COVERAGE.md, stream B): Marketing's sections: the section heading in the shared section-label look (stream A's
   .section-label: small, heavy italic, upper case). Markup unchanged. */
body.shop-on :is(.mk-sec) > h2:first-child, body.shop-on :is(.mk-sec) > .cp-sec-head > h2 { font: italic 900 17px/1.2 var(--font-title); text-transform: uppercase; letter-spacing: .01em; color: var(--ink); }
