.mimm-bridge-status {
  display: block;
  min-height: 0 !important;
  margin-top: 12px !important;
  padding: 13px 14px;
  border-radius: 16px;
  font-size: 13px !important;
  line-height: 1.45;
}

.mimm-bridge-status strong,
.mimm-bridge-status span {
  display: block;
}

.mimm-bridge-status strong {
  margin-bottom: 3px;
  font-weight: 800;
}

.mimm-bridge-status.working {
  background: #FFF7F7;
  color: #756B6D;
  border: 1px solid rgba(243,104,112,.16);
}

.mimm-bridge-status.success {
  background: #E7EFE8;
  color: #2F6A4E;
  border: 1px solid rgba(47,106,78,.15);
}

.mimm-bridge-status.error {
  background: #FFF0F1;
  color: #8D2933;
  border: 1px solid rgba(141,41,51,.15);
}

.mimm-bridge-busy {
  pointer-events: none;
  opacity: .88;
}

.mimm-bridge-spinner {
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  vertical-align: -3px;
  border: 2px solid rgba(255,255,255,.42);
  border-top-color: currentColor;
  border-radius: 50%;
  animation: mimmBridgeSpin .75s linear infinite;
}

@keyframes mimmBridgeSpin {
  to { transform: rotate(360deg); }
}

[data-mimm-bridge-injected] select {
  width: 100%;
  min-height: 52px;
  padding: 14px 16px;
  border: 1px solid rgba(11,11,11,.14);
  border-radius: 16px;
  background: #FFFDFD;
  color: #0B0B0B;
  font: inherit;
  font-size: 16px;
  outline: none;
}

[data-mimm-bridge-injected] select:focus {
  border-color: #F36870;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(243,104,112,.11);
}

.mimm-bridge-access-card {
  margin-top: 28px;
  padding: 30px;
  border: 1px solid rgba(11,11,11,.09);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 18px 55px rgba(11,11,11,.04);
}

.mimm-bridge-access-card h1 {
  margin: 8px 0 12px;
  color: #0B0B0B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(36px, 7vw, 50px);
  line-height: 1;
}

.mimm-bridge-access-card p {
  color: #756B6D;
  line-height: 1.65;
}

.mimm-bridge-access-card a {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  margin-top: 14px;
  padding: 0 20px;
  border-radius: 999px;
  background: #F36870;
  color: #fff !important;
  text-decoration: none !important;
  font-weight: 800;
}

.mimm-bridge-kicker {
  color: #F36870;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.mimm-bridge-market-card h2 {
  margin-top: 14px !important;
}

.mimm-bridge-market-card p {
  color: #756B6D;
  line-height: 1.6;
}

.mimm-bridge-market-top,
.mimm-bridge-receipt-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.mimm-bridge-chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 5px 9px;
  border-radius: 999px;
  background: #FFF7F7;
  color: #D9545E;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .03em;
}

.mimm-bridge-chip.verified {
  background: #E7EFE8;
  color: #2F6A4E;
}

.mimm-bridge-chip.rejected {
  background: #FFF0F1;
  color: #8D2933;
}

.mimm-bridge-market-price {
  color: #0B0B0B;
  font-weight: 800;
}

.mimm-bridge-meta {
  margin-top: 12px;
  color: #756B6D;
  font-size: 12px;
}

.mimm-bridge-receipt-row {
  padding: 14px 0;
  border-bottom: 1px solid rgba(11,11,11,.09);
}

.mimm-bridge-receipt-row:last-child {
  border-bottom: 0;
}

.mimm-bridge-receipt-row > div {
  min-width: 0;
}

.mimm-bridge-receipt-row strong,
.mimm-bridge-receipt-row span {
  display: block;
}

.mimm-bridge-receipt-row > div > span {
  margin-top: 5px;
  color: #756B6D;
  font-size: 12px;
}

.mimm-bridge-locked {
  opacity: .55;
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .mimm-bridge-spinner {
    animation: none;
  }
}


.mimm-bridge-session-notice {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 10px;
  row-gap: 3px;
  align-items: center;
  margin: 0 0 18px;
  padding: 14px 15px;
  border: 1px solid rgba(243,104,112,.16);
  border-radius: 16px;
  background: #FFF7F7;
  color: #0B0B0B;
  font-size: 13px;
  line-height: 1.45;
}

.mimm-bridge-session-notice .mimm-bridge-spinner {
  grid-row: 1 / span 2;
  margin: 0;
}

.mimm-bridge-session-notice strong,
.mimm-bridge-session-notice span {
  display: block;
}

.mimm-bridge-session-notice span:last-child {
  color: #756B6D;
  font-size: 12px;
}

.mimm-bridge-session-notice.error {
  border-color: rgba(141,41,51,.15);
  background: #FFF0F1;
  color: #8D2933;
}

.mimm-bridge-spinner.dark {
  border-color: rgba(11,11,11,.16);
  border-top-color: #F36870;
}


.mimm-bridge-proof-copy {
  min-width: 0;
}

.mimm-bridge-proof-detail {
  display: inline-block;
  margin-top: 4px;
  color: #756B6D;
  font-size: 13px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}


/* V2.2 My 5 Tools */
.mimm-five-tools {
  width: 100%;
  margin: 28px 0;
  padding: 24px;
  border: 1px solid rgba(11,11,11,.08);
  border-radius: 26px;
  background: #FFFDFD;
  box-shadow: 0 18px 48px rgba(11,11,11,.04);
}

.mimm-five-tools-head {
  margin-bottom: 18px;
  text-align: center;
}

.mimm-five-tools-head > span {
  color: #D9545E;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.mimm-five-tools-head h2 {
  margin: 7px 0 6px !important;
  color: #0B0B0B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(30px, 6vw, 42px);
  line-height: 1;
}

.mimm-five-tools-head p {
  margin: 0;
  color: #756B6D;
  font-size: 13px;
}

.mimm-tool-card {
  border-top: 1px solid rgba(11,11,11,.08);
}

.mimm-tool-card:last-child {
  border-bottom: 1px solid rgba(11,11,11,.08);
}

.mimm-tool-card summary {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 68px;
  padding: 13px 4px;
  cursor: pointer;
  list-style: none;
}

.mimm-tool-card summary::-webkit-details-marker {
  display: none;
}

.mimm-tool-number {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #FFF7F7;
  color: #D9545E;
  font-size: 10px;
  font-weight: 800;
}

.mimm-tool-title strong,
.mimm-tool-title small {
  display: block;
}

.mimm-tool-title strong {
  color: #0B0B0B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 19px;
  line-height: 1.05;
}

.mimm-tool-title small {
  margin-top: 3px;
  color: #756B6D;
  font-size: 11px;
}

.mimm-tool-status {
  max-width: 125px;
  padding: 6px 9px;
  border-radius: 999px;
  background: #E7EFE8;
  color: #2F6A4E;
  font-size: 9px;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
}

.mimm-tool-body {
  padding: 2px 4px 18px 46px;
  color: #756B6D;
  font-size: 13px;
  line-height: 1.55;
}

.mimm-tool-body p {
  margin: 0 0 12px !important;
}

.mimm-tool-highlight {
  padding: 15px;
  border-radius: 16px;
  background: #FFF7F7;
}

.mimm-tool-highlight strong,
.mimm-tool-highlight span {
  display: block;
}

.mimm-tool-highlight strong {
  color: #0B0B0B;
  font-size: 15px;
}

.mimm-tool-highlight span {
  margin-top: 5px;
}

.mimm-tool-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 8px;
  margin-top: 10px;
}

.mimm-tool-metric {
  padding: 12px;
  border-radius: 14px;
  background: #FCF8F8;
}

.mimm-tool-metric span,
.mimm-tool-metric strong {
  display: block;
}

.mimm-tool-metric span {
  color: #756B6D;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.mimm-tool-metric strong {
  margin-top: 5px;
  color: #0B0B0B;
  font-size: 14px;
}

.mimm-tool-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 10px;
}

.mimm-tool-chip {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: #E7EFE8;
  color: #293440;
  font-size: 10px;
  font-weight: 700;
}

.mimm-tool-actions {
  display: grid;
  gap: 8px;
  margin: 14px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.mimm-tool-actions li {
  display: grid;
  grid-template-columns: 26px 1fr;
  gap: 9px;
  align-items: start;
}

.mimm-tool-actions b {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #293440;
  color: #fff;
  font-size: 9px;
}

.mimm-tool-demand-wrap {
  margin-top: 14px;
}

.mimm-tool-demand-wrap > span {
  display: block;
  margin-bottom: 6px;
  color: #0B0B0B;
  font-size: 10px;
  font-weight: 800;
}

.mimm-tool-demand {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 0;
  border-top: 1px solid rgba(11,11,11,.08);
}

.mimm-tool-demand strong {
  color: #0B0B0B;
}

.mimm-tool-recap {
  display: grid;
  gap: 10px;
}

.mimm-tool-recap > div {
  padding: 12px;
  border-radius: 14px;
  background: #FCF8F8;
}

.mimm-tool-recap span,
.mimm-tool-recap strong {
  display: block;
}

.mimm-tool-recap span {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.mimm-tool-recap strong {
  margin-top: 5px;
  color: #0B0B0B;
  font-size: 13px;
}

.mimm-tool-link {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  margin-top: 14px;
  padding: 10px 16px;
  border-radius: 999px;
  background: #F36870;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 12px;
  font-weight: 800;
}

@media (max-width: 620px) {
  .mimm-five-tools {
    padding: 18px 14px;
    border-radius: 22px;
  }

  .mimm-tool-card summary {
    grid-template-columns: 32px minmax(0,1fr);
  }

  .mimm-tool-status {
    grid-column: 2;
    justify-self: start;
  }

  .mimm-tool-body {
    padding-left: 44px;
  }

  .mimm-tool-metrics {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .mimm-tool-demand {
    flex-direction: column;
  }
}


/* V2.4.6 Quiet Contextual Participant Sample */
.mimm-participant-sample{width:min(100%,440px);margin:28px 0 8px auto;border:0;border-radius:12px;background:transparent;overflow:visible}
.mimm-participant-sample summary{display:flex;justify-content:flex-end;align-items:baseline;min-height:28px;padding:3px 2px;cursor:pointer;list-style:none;color:#756B6D}
.mimm-participant-sample summary::-webkit-details-marker{display:none}
.mimm-sample-title{display:inline-flex;align-items:baseline;gap:6px}
.mimm-sample-title small,.mimm-sample-title strong{display:inline;font-family:inherit;line-height:1.2}
.mimm-sample-title small{color:#9A8F91;font-size:8px;font-style:normal;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.mimm-sample-title strong{color:#756B6D;font-size:10.5px;font-weight:700}
.mimm-sample-body{margin-top:6px;padding:10px 12px 11px;border:1px solid rgba(11,11,11,.055);border-radius:12px;background:rgba(252,248,248,.58);color:#756B6D;font-size:10.5px;line-height:1.45}
.mimm-sample-disclaimer{margin:0 0 8px!important;color:#9A8F91;font-size:8.5px!important;letter-spacing:.02em}
.mimm-sample-body h3{margin:8px 0 5px!important;color:#0B0B0B;font-family:inherit;font-size:14px;font-weight:750;line-height:1.2}
.mimm-sample-body p{margin:5px 0!important}.mimm-sample-body b{color:#403A3B}
.mimm-sample-person{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px;margin-bottom:7px}
.mimm-sample-person strong{color:#403A3B;font-size:10.5px}.mimm-sample-person span{color:#9A8F91;font-size:7.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.mimm-sample-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:8px 0}
.mimm-sample-metrics>div,.mimm-sample-receipts>div{padding:7px 8px;border-radius:9px;background:rgba(255,255,255,.72);border:1px solid rgba(11,11,11,.045)}
.mimm-sample-metrics span,.mimm-sample-metrics strong,.mimm-sample-receipts span,.mimm-sample-receipts strong,.mimm-sample-receipts small{display:block}
.mimm-sample-metrics span,.mimm-sample-receipts span{color:#9A8F91;font-size:7px;font-weight:700;letter-spacing:.035em;text-transform:uppercase}
.mimm-sample-metrics strong,.mimm-sample-receipts strong{margin-top:2px;color:#403A3B;font-size:10.5px}
.mimm-sample-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.mimm-sample-chip{display:inline-flex;min-height:22px;align-items:center;padding:3px 6px;border-radius:999px;background:rgba(231,239,232,.72);color:#55605A;font-size:7.5px;font-weight:700}
.mimm-sample-match{display:grid;grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:5px;align-items:center}
.mimm-sample-match>div:not(.mimm-sample-arrow){padding:8px;border-radius:9px;background:rgba(255,255,255,.72);border:1px solid rgba(11,11,11,.045)}
.mimm-sample-match span,.mimm-sample-match strong{display:block}.mimm-sample-match span{color:#9A8F91;font-size:7px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.mimm-sample-match strong{margin-top:2px;color:#403A3B;font-size:10px}.mimm-sample-match p{margin:3px 0 0!important}
.mimm-sample-arrow{color:#B5A9AB;font-size:13px;text-align:center}
.mimm-sample-match-result{display:flex;justify-content:space-between;gap:6px;margin-top:7px;padding:6px 8px;border-radius:9px;background:rgba(231,239,232,.62)}.mimm-sample-match-result strong{color:#55605A}
.mimm-sample-receipts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.mimm-sample-receipts small{margin-top:2px;color:#9A8F91;font-size:7.5px}.mimm-sample-help{margin-top:7px!important;font-size:8.5px!important}
@media(max-width:620px){.mimm-participant-sample{width:100%;margin-top:24px}.mimm-participant-sample summary{justify-content:flex-start}.mimm-sample-metrics,.mimm-sample-receipts{grid-template-columns:repeat(2,minmax(0,1fr))}.mimm-sample-match{grid-template-columns:1fr}.mimm-sample-arrow{transform:rotate(90deg)}}

/* V2.3 Round + Transaction Fulfillment */
.mimm-round-fulfillment {
  margin: 22px 0;
  padding: 22px;
  border: 1px solid rgba(11,11,11,.08);
  border-radius: 24px;
  background: #FFFFFF;
}

.mimm-round-fulfillment-head {
  text-align: center;
}

.mimm-round-fulfillment-head > span {
  color: #D9545E;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mimm-round-fulfillment-head h2 {
  margin: 7px 0 6px !important;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(28px,5vw,38px);
  line-height: 1.04;
}

.mimm-round-fulfillment-head p {
  max-width: 560px;
  margin: 0 auto !important;
  color: #756B6D;
  font-size: 12px;
}

.mimm-round-deliverables {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 7px;
  margin-top: 17px;
}

.mimm-round-deliverable {
  display: grid;
  gap: 5px;
  min-height: 82px;
  align-content: center;
  padding: 10px;
  border-radius: 14px;
  background: #FCF8F8;
  text-align: center;
}

.mimm-round-deliverable span {
  color: #756B6D;
  font-size: 17px;
}

.mimm-round-deliverable strong {
  font-size: 10px;
  line-height: 1.2;
}

.mimm-round-deliverable.is-ready {
  background: #E7EFE8;
}

.mimm-round-deliverable.is-ready span {
  color: #2F6A4E;
}

.mimm-fulfillment-alert {
  display: grid;
  gap: 5px;
  margin-top: 14px;
  padding: 14px;
  border-radius: 16px;
  background: #FFF7F7;
}

.mimm-fulfillment-alert strong {
  color: #0B0B0B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 18px;
}

.mimm-fulfillment-alert span {
  color: #756B6D;
  font-size: 11px;
}

.mimm-fulfillment-alert a {
  display: inline-flex;
  width: fit-content;
  min-height: 44px;
  align-items: center;
  margin-top: 5px;
  padding: 9px 14px;
  border-radius: 999px;
  background: #F36870;
  color: #FFFFFF !important;
  text-decoration: none !important;
  font-size: 11px;
  font-weight: 800;
}

.mimm-round-fulfillment-foot {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(11,11,11,.08);
}

.mimm-round-fulfillment-foot span {
  color: #756B6D;
  font-size: 10px;
  font-weight: 700;
}

.mimm-round-fulfillment-foot strong {
  font-size: 11px;
}

.mimm-fulfillment-receipt-side {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  align-items: center;
}

.mimm-fulfillment-receipt small {
  display: block;
  margin-top: 4px;
  color: #756B6D;
  font-size: 9px;
}

.mimm-fulfillment-state {
  background: #E7EFE8 !important;
  color: #293440 !important;
}

.mimm-fulfillment-action {
  min-height: 44px;
  padding: 8px 12px;
  border: 0;
  border-radius: 999px;
  background: #F36870;
  color: #FFFFFF;
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}

.mimm-fulfillment-wait,
.mimm-fulfillment-done {
  font-size: 9px;
  font-weight: 800;
}

.mimm-fulfillment-done {
  color: #2F6A4E;
}

@media (max-width: 700px) {
  .mimm-round-deliverables {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .mimm-fulfillment-receipt-side {
    justify-content: flex-start;
  }
}


/* V2.3.5 Unified Run Progress */
.mimm-run-progress-card {
  position: relative;
  overflow: hidden;
  margin: 24px 0;
  padding: clamp(20px, 4vw, 30px);
  border: 1px solid rgba(11,11,11,.08);
  border-radius: 28px;
  background:
    radial-gradient(circle at 92% 6%, rgba(243,104,112,.11), transparent 28%),
    linear-gradient(180deg, #FFFFFF 0%, #FCF8F8 100%);
  box-shadow: 0 18px 54px rgba(43,39,40,.06);
}

.mimm-run-progress-top {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 22px;
  align-items: start;
}

.mimm-run-progress-kicker {
  display: block;
  margin-bottom: 7px;
  color: #D9545E;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.mimm-run-progress-top h2 {
  margin: 0 !important;
  max-width: 620px;
  color: #0B0B0B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(28px, 5vw, 42px);
  line-height: 1.02;
}

.mimm-run-progress-top p {
  max-width: 620px;
  margin: 9px 0 0 !important;
  color: #756B6D;
  font-size: 12px;
  line-height: 1.55;
}

.mimm-run-progress-score {
  display: grid;
  min-width: 86px;
  min-height: 86px;
  place-content: center;
  border: 1px solid rgba(11,11,11,.07);
  border-radius: 24px;
  background: rgba(255,255,255,.82);
  text-align: center;
}

.mimm-run-progress-score strong {
  color: #0B0B0B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 30px;
  line-height: 1;
}

.mimm-run-progress-score strong span {
  color: #756B6D;
  font-family: Inter, Arial, sans-serif;
  font-size: 13px;
}

.mimm-run-progress-score small {
  margin-top: 5px;
  color: #756B6D;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.mimm-run-progress-rail {
  position: relative;
  height: 8px;
  overflow: hidden;
  margin: 18px 0;
  border-radius: 999px;
  background: rgba(41,52,64,.08);
}

.mimm-run-progress-rail span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #F36870 0%, #E7C98B 100%);
  transition: width .45s ease;
}

.mimm-run-progress-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 8px;
}

.mimm-run-progress-step {
  min-height: 130px;
  padding: 13px;
  border: 1px solid rgba(11,11,11,.07);
  border-radius: 18px;
  background: rgba(255,255,255,.7);
}

.mimm-run-progress-step.is-ready {
  background: #E7EFE8;
}

.mimm-run-progress-step.is-next {
  border-color: rgba(243,104,112,.32);
  background: #FFF7F7;
  box-shadow: inset 0 0 0 1px rgba(243,104,112,.05);
}

.mimm-run-progress-step-top {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
  margin-bottom: 18px;
}

.mimm-run-progress-number {
  display: grid;
  width: 29px;
  min-height: 29px;
  place-items: center;
  border-radius: 50%;
  background: #293440;
  color: #FFFFFF;
  font-size: 9px;
  font-weight: 800;
}

.mimm-run-progress-step.is-ready .mimm-run-progress-number {
  background: #2F6A4E;
}

.mimm-run-progress-step.is-next .mimm-run-progress-number {
  background: #F36870;
  color: #0B0B0B;
}

.mimm-run-progress-state {
  color: #756B6D;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.mimm-run-progress-step.is-ready .mimm-run-progress-state {
  color: #2F6A4E;
}

.mimm-run-progress-step.is-next .mimm-run-progress-state {
  color: #D9545E;
}

.mimm-run-progress-step > strong {
  display: block;
  color: #0B0B0B;
  font-size: 11px;
  line-height: 1.2;
}

.mimm-run-progress-step > small {
  display: block;
  margin-top: 5px;
  color: #756B6D;
  font-size: 9px;
  line-height: 1.35;
}

.mimm-run-progress-card .mimm-fulfillment-alert {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 16px;
  align-items: center;
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 18px;
  background: #FFF7F7;
}

.mimm-run-progress-card .mimm-fulfillment-alert.is-urgent {
  background: #FFF1F1;
  box-shadow: inset 3px 0 0 #F36870;
}

.mimm-run-progress-card .mimm-fulfillment-alert > div {
  display: grid;
  gap: 4px;
}

.mimm-run-progress-card .mimm-fulfillment-alert strong {
  color: #0B0B0B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 18px;
}

.mimm-run-progress-card .mimm-fulfillment-alert span {
  color: #756B6D;
  font-size: 10px;
  line-height: 1.45;
}

.mimm-run-progress-card .mimm-fulfillment-alert a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 9px 14px;
  border-radius: 999px;
  background: #F36870;
  color: #FFFFFF !important;
  text-decoration: none !important;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

.mimm-run-progress-foot {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 14px;
  padding-top: 13px;
  border-top: 1px solid rgba(11,11,11,.07);
}

.mimm-run-progress-foot span {
  color: #756B6D;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.mimm-run-progress-foot strong {
  color: #293440;
  font-size: 10px;
}

.mimm-offer-blueprint-guide {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 18px;
  align-items: center;
  margin: 18px 0;
  padding: 18px;
  border: 1px solid rgba(231,201,139,.7);
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(231,201,139,.19), rgba(255,247,247,.8)),
    #FFFFFF;
}

.mimm-offer-blueprint-copy > span {
  display: block;
  margin-bottom: 5px;
  color: #D9545E;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mimm-offer-blueprint-copy > strong {
  display: block;
  color: #0B0B0B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 21px;
  line-height: 1.08;
}

.mimm-offer-blueprint-copy p {
  max-width: 620px;
  margin: 6px 0 0 !important;
  color: #756B6D;
  font-size: 10px;
  line-height: 1.5;
}

.mimm-offer-blueprint-guide > a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px 15px;
  border-radius: 999px;
  background: #293440;
  color: #FFFFFF !important;
  text-decoration: none !important;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

@media (max-width: 760px) {
  .mimm-run-progress-card {
    padding: 20px;
    border-radius: 22px;
  }

  .mimm-run-progress-top {
    grid-template-columns: 1fr auto;
    gap: 12px;
  }

  .mimm-run-progress-score {
    min-width: 68px;
    min-height: 68px;
    border-radius: 18px;
  }

  .mimm-run-progress-score strong {
    font-size: 24px;
  }

  .mimm-run-progress-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .mimm-run-progress-step {
    min-height: 112px;
  }

  .mimm-run-progress-card .mimm-fulfillment-alert,
  .mimm-offer-blueprint-guide {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .mimm-run-progress-card .mimm-fulfillment-alert a,
  .mimm-offer-blueprint-guide > a {
    width: 100%;
  }
}

@media (max-width: 430px) {
  .mimm-run-progress-top {
    grid-template-columns: 1fr;
  }

  .mimm-run-progress-score {
    width: 78px;
  }

  .mimm-run-progress-grid {
    grid-template-columns: 1fr;
  }

  .mimm-run-progress-step {
    min-height: 0;
  }
}


/* V2.3.6 Money Moves Map Inside My Run */
.mimm-run-money-map {
  position: relative;
  overflow: hidden;
  margin: 24px 0;
  padding: clamp(20px,4vw,30px);
  border: 1px solid rgba(11,11,11,.08);
  border-radius: 28px;
  background:
    radial-gradient(circle at 94% 4%, rgba(231,201,139,.16), transparent 26%),
    linear-gradient(180deg,#FFFFFF 0%,#FCF8F8 100%);
  box-shadow: 0 18px 54px rgba(43,39,40,.06);
}

.mimm-money-map-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 18px;
  align-items: start;
}

.mimm-money-map-kicker,
.mimm-money-map-start > span,
.mimm-money-map-signal span,
.mimm-money-map-stop span,
.mimm-money-map-draft-note > span {
  display: block;
  color: #D9545E;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mimm-money-map-head h2 {
  margin: 6px 0 0 !important;
  color: #0B0B0B;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(28px,5vw,42px);
  line-height: 1.02;
}

.mimm-money-map-head p {
  max-width: 660px;
  margin: 8px 0 0 !important;
  color: #756B6D;
  font-size: 11px;
  line-height: 1.5;
}

.mimm-money-map-status {
  display: grid;
  min-width: 78px;
  min-height: 78px;
  place-content: center;
  border-radius: 22px;
  background: #E7EFE8;
  text-align: center;
}

.mimm-money-map-status strong {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 18px;
}

.mimm-money-map-status small {
  margin-top: 3px;
  color: #526157;
  font-size: 8px;
  font-weight: 800;
  text-transform: uppercase;
}

.mimm-money-map-start {
  margin-top: 18px;
  padding: 18px;
  border-radius: 20px;
  background: #293440;
  color: #FFFFFF;
}

.mimm-money-map-start > span {
  color: #E7C98B;
}

.mimm-money-map-start > strong {
  display: block;
  margin-top: 6px;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 25px;
  line-height: 1.05;
}

.mimm-money-map-start p {
  max-width: 720px;
  margin: 8px 0 0 !important;
  color: #edf0f2;
  font-size: 11px;
  line-height: 1.5;
}

.mimm-money-map-start small {
  display: block;
  margin-top: 9px;
  color: #FFFFFF;
  font-size: 10px;
  line-height: 1.45;
}

.mimm-money-map-offers {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
  margin-top: 10px;
}

.mimm-money-map-offer {
  min-height: 112px;
  padding: 14px;
  border: 1px solid rgba(11,11,11,.06);
  border-radius: 17px;
  background: #FFFFFF;
}

.mimm-money-map-offer > span {
  color: #D9545E;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.mimm-money-map-offer > strong {
  display: block;
  margin-top: 8px;
  color: #0B0B0B;
  font-size: 12px;
}

.mimm-money-map-offer > small {
  display: block;
  margin-top: 5px;
  color: #756B6D;
  font-size: 9px;
  line-height: 1.4;
}

.mimm-money-map-signal {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  margin-top: 10px;
}

.mimm-money-map-signal > div {
  padding: 13px 14px;
  border-radius: 16px;
  background: #FFF9ED;
  border: 1px solid rgba(231,201,139,.55);
}

.mimm-money-map-signal strong {
  display: block;
  margin-top: 5px;
  color: #293440;
  font-size: 11px;
  line-height: 1.35;
}

.mimm-money-map-plan {
  margin-top: 10px;
  border: 1px solid rgba(11,11,11,.06);
  border-radius: 18px;
  background: #FFFFFF;
}

.mimm-money-map-plan summary {
  min-height: 48px;
  padding: 14px 16px;
  cursor: pointer;
  color: #293440;
  font-size: 10px;
  font-weight: 800;
}

.mimm-money-map-plan-body {
  display: grid;
  gap: 8px;
  padding: 0 14px 14px;
}

.mimm-money-map-stop {
  padding: 12px;
  border-radius: 14px;
  background: #FFF7F7;
}

.mimm-money-map-stop strong {
  display: block;
  margin-top: 4px;
  font-size: 10px;
  line-height: 1.4;
}

.mimm-money-map-plan-body article {
  display: grid;
  gap: 4px;
  padding: 12px;
  border-radius: 14px;
  background: #FCF8F8;
}

.mimm-money-map-plan-body article > span {
  color: #D9545E;
  font-size: 8px;
  font-weight: 800;
  text-transform: uppercase;
}

.mimm-money-map-plan-body article > strong {
  font-size: 11px;
}

.mimm-money-map-plan-body article p,
.mimm-money-map-plan-body article small {
  margin: 0 !important;
  color: #756B6D;
  font-size: 9px;
  line-height: 1.45;
}

.mimm-money-map-action {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 16px;
  align-items: center;
  margin-top: 12px;
  padding: 15px 16px;
  border-radius: 18px;
  background: #E7EFE8;
}

.mimm-money-map-action > div {
  display: grid;
  gap: 3px;
}

.mimm-money-map-action strong {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 18px;
}

.mimm-money-map-action span {
  color: #526157;
  font-size: 9px;
  line-height: 1.4;
}

.mimm-money-map-action a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 10px 15px;
  border-radius: 999px;
  background: #F36870;
  color: #FFFFFF !important;
  text-decoration: none !important;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}

.mimm-money-map-draft-note {
  margin: 16px 0;
  padding: 16px;
  border: 1px solid rgba(231,201,139,.65);
  border-radius: 18px;
  background: #FFF9ED;
}

.mimm-money-map-draft-note > strong {
  display: block;
  margin-top: 5px;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 20px;
}

.mimm-money-map-draft-note p {
  margin: 5px 0 0 !important;
  color: #756B6D;
  font-size: 10px;
  line-height: 1.45;
}

@media (max-width:760px) {
  .mimm-money-map-head,
  .mimm-money-map-action {
    grid-template-columns: 1fr;
  }

  .mimm-money-map-status {
    width: 76px;
  }

  .mimm-money-map-offers,
  .mimm-money-map-signal {
    grid-template-columns: 1fr;
  }

  .mimm-money-map-action a {
    width: 100%;
  }
}


/* V2.3.15 receipt proof refinement */
.mimm-payment-proof-help {
  min-height: 0;
  margin-top: 8px;
  color: #756B6D;
  font-size: 12px;
  line-height: 1.5;
}
.mimm-payment-proof-help:not(:empty) {
  padding: 10px 12px;
  border-radius: 12px;
  background: #FCF8F8;
  border: 1px solid rgba(11,11,11,.07);
}


/* V2.3.15 setup moves — display-only recommendations */
.mimm-setup-moves {
  margin: 28px 0;
  padding: 24px;
  border: 1px solid rgba(11,11,11,.08);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(43,39,40,.05);
}
.mimm-setup-moves-head > span {
  display: block;
  color: #D9545E;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.mimm-setup-moves-head h2 {
  margin: 0 0 16px;
}
.mimm-setup-moves-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}
.mimm-setup-move {
  border: 1px solid rgba(11,11,11,.08);
  border-radius: 18px;
  padding: 18px;
  background: #FCF8F8;
}
.mimm-setup-move.is-digital {
  background: #F3F7F3;
}
.mimm-setup-move.is-selected {
  border-color: #F36870;
  box-shadow: 0 0 0 2px rgba(243,104,112,.10);
}
.mimm-setup-move small,
.mimm-setup-move strong,
.mimm-setup-move span {
  display: block;
}
.mimm-setup-move small {
  color: #756B6D;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .07em;
  margin-bottom: 8px;
}
.mimm-setup-move strong {
  line-height: 1.4;
}
.mimm-setup-move span {
  margin-top: 10px;
  color: #D9545E;
  font-size: 12px;
  font-weight: 900;
}
.mimm-setup-moves-note {
  margin: 14px 0 0;
  color: #756B6D;
  font-size: 12px;
  line-height: 1.5;
}
@media (max-width: 640px) {
  .mimm-setup-moves-grid {
    grid-template-columns: 1fr;
  }
}


.mimm-qa-preview-banner {
  margin: 16px auto;
  max-width: 1100px;
  padding: 12px 16px;
  border: 1px solid rgba(11,11,11,.16);
  border-radius: 14px;
  background: #fff8e8;
  color: #0b0b0b;
  display: flex;
  gap: 8px 14px;
  align-items: baseline;
  flex-wrap: wrap;
  box-shadow: 0 8px 30px rgba(11,11,11,.06);
}
.mimm-qa-preview-banner strong { font-weight: 800; }
.mimm-qa-preview-banner span {
  font-size: 13px;
  line-height: 1.45;
  opacity: .78;
}


.mimm-qa-preview-copy {
  display: flex;
  gap: 8px 14px;
  align-items: baseline;
  flex-wrap: wrap;
}
.mimm-qa-preview-states {
  width: 100%;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.mimm-qa-preview-states button {
  appearance: none;
  border: 1px solid rgba(11,11,11,.18);
  background: #fff;
  color: #0b0b0b;
  border-radius: 999px;
  padding: 8px 12px;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.mimm-qa-preview-states button.is-active {
  background: #0b0b0b;
  color: #fff;
  border-color: #0b0b0b;
}


/* ============================================================
   V2.3.17 — Participant Mobile Safety + Resume Rail
   ============================================================ */

#mimm-run,
#mimm-can,
#mimm-need,
#mimm-market,
#mimm-receipts,
#mimm-back {
  width: 100%;
  max-width: 100vw;
  min-height: var(--mimm-vh, 100dvh);
  overflow-x: clip;
  padding-bottom: max(88px, calc(56px + env(safe-area-inset-bottom)));
  scroll-padding-bottom: max(110px, calc(78px + env(safe-area-inset-bottom)));
}

#mimm-run *,
#mimm-can *,
#mimm-need *,
#mimm-market *,
#mimm-receipts *,
#mimm-back * {
  box-sizing: border-box;
  min-width: 0;
}

#mimm-run button,
#mimm-can button,
#mimm-need button,
#mimm-market button,
#mimm-receipts button,
#mimm-back button,
#mimm-run a,
#mimm-can a,
#mimm-need a,
#mimm-market a,
#mimm-receipts a,
#mimm-back a {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

.mimm-bridge-access-card,
.mimm-tool-card,
.mimm-setup-move-card,
.mimm-proof-card,
.mimm-market-card {
  max-width: 100%;
  overflow: hidden;
}

.mimm-bridge-access-card h1,
.mimm-tool-card strong,
.mimm-setup-move-card strong {
  overflow-wrap: anywhere;
  word-break: normal;
}

.mimm-bridge-access-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 9px;
  width: 100%;
  margin-top: 20px;
}

.mimm-bridge-access-actions a {
  width: 100%;
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px 16px;
  border-radius: 999px;
  text-decoration: none;
  text-align: center;
  font-weight: 800;
  line-height: 1.2;
  border: 1px solid rgba(11,11,11,.12);
  background: #fff;
  color: #0b0b0b;
}

.mimm-bridge-access-actions a.is-primary {
  border-color: #f36870;
  background: #f36870;
  color: #fff;
  box-shadow: 0 14px 32px rgba(243,104,112,.18);
}

.mimm-bridge-resume-card {
  background:
    radial-gradient(circle at 88% 12%, rgba(243,104,112,.12), transparent 12rem),
    #fff;
}

@media (max-width: 680px) {
  #mimm-run main,
  #mimm-can main,
  #mimm-need main,
  #mimm-market main,
  #mimm-receipts main,
  #mimm-back main {
    width: 100%;
    max-width: 100%;
    padding-left: max(12px, env(safe-area-inset-left));
    padding-right: max(12px, env(safe-area-inset-right));
  }

  .mimm-tool-card summary {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .mimm-tool-status {
    grid-column: 2;
    justify-self: start;
    max-width: 100%;
  }

  .mimm-tool-metrics,
  .mimm-tool-proof-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 390px) {
  .mimm-tool-metrics,
  .mimm-tool-proof-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  #mimm-run *,
  #mimm-can *,
  #mimm-need *,
  #mimm-market *,
  #mimm-receipts *,
  #mimm-back * {
    animation-duration: .001ms !important;
    transition-duration: .001ms !important;
  }
}


/* ============================================================
   V2.3.18 — Participant App / Legacy / Recovery / Delivery
   ============================================================ */

#mimm-run,
#mimm-can,
#mimm-need,
#mimm-market,
#mimm-receipts,
#mimm-back {
  --mimm-safe-right: max(12px, env(safe-area-inset-right));
  --mimm-safe-bottom: max(18px, env(safe-area-inset-bottom));
  --mimm-safe-left: max(12px, env(safe-area-inset-left));
  position: relative;
  left: 50%;
  width: 100vw;
  max-width: 100vw;
  min-height: var(--mimm-vh, 100dvh);
  margin-left: -50vw;
  margin-right: -50vw;
  overflow-x: clip;
  padding-bottom: calc(92px + var(--mimm-safe-bottom));
}

#mimm-run *,
#mimm-can *,
#mimm-need *,
#mimm-market *,
#mimm-receipts *,
#mimm-back * {
  box-sizing: border-box;
  min-width: 0;
}

#mimm-run main,
#mimm-can main,
#mimm-need main,
#mimm-market main,
#mimm-receipts main,
#mimm-back main {
  width: min(1100px, 100%);
  max-width: 100%;
  margin: 0 auto;
  padding-left: var(--mimm-safe-left);
  padding-right: var(--mimm-safe-right);
}

#mimm-run button,
#mimm-can button,
#mimm-need button,
#mimm-market button,
#mimm-receipts button,
#mimm-back button,
#mimm-run a,
#mimm-can a,
#mimm-need a,
#mimm-market a,
#mimm-receipts a,
#mimm-back a {
  max-width: 100%;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  text-wrap: balance;
  text-align: center;
}

.mimm-inline-recovery {
  display: grid;
  gap: 10px;
  width: 100%;
  margin-top: 18px;
}

.mimm-inline-recovery label {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.mimm-inline-recovery input {
  width: 100%;
  min-height: 54px;
  border: 1px solid rgba(11,11,11,.16);
  border-radius: 16px;
  padding: 12px 14px;
  font-size: 16px;
  background: #fff;
  color: #0b0b0b;
}

.mimm-inline-recovery button {
  width: 100%;
  min-height: 54px;
  border: 0;
  border-radius: 999px;
  padding: 13px 18px;
  background: #0b0b0b;
  color: #fff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.mimm-inline-recovery p {
  min-height: 18px;
  margin: 0;
  color: rgba(11,11,11,.68);
  font-size: 13px;
  line-height: 1.4;
}

.mimm-access-divider {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 20px 0 12px;
  color: rgba(11,11,11,.52);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.mimm-access-divider::before,
.mimm-access-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: rgba(11,11,11,.10);
}

.mimm-legacy-completion {
  margin: 18px 0 26px;
  border: 1px solid rgba(243,104,112,.20);
  border-radius: 24px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 18px 50px rgba(11,11,11,.05);
  overflow: hidden;
}

.mimm-legacy-head {
  padding: 20px 20px 12px;
}

.mimm-legacy-head > span {
  display: block;
  color: #d85561;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mimm-legacy-head h2 {
  margin: 6px 0 0;
  font-size: clamp(25px, 6vw, 36px);
  line-height: 1;
}

.mimm-legacy-list {
  display: grid;
  gap: 1px;
  background: rgba(11,11,11,.08);
}

.mimm-legacy-list a {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  align-items: center;
  padding: 16px 20px;
  background: #fff;
  color: #0b0b0b;
  text-decoration: none;
  text-align: left !important;
}

.mimm-legacy-list a strong,
.mimm-legacy-list a span {
  grid-column: 1;
}

.mimm-legacy-list a span {
  color: rgba(11,11,11,.65);
  font-size: 13px;
  line-height: 1.45;
}

.mimm-legacy-list a b {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  color: #d85561;
  font-size: 22px;
}

.mimm-offer-simple-controls,
.mimm-receipt-proof-controls {
  display: grid;
  gap: 16px;
}

.mimm-human-factor-taps,
.mimm-delivery-methods {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.mimm-human-factor-taps button,
.mimm-delivery-methods button {
  width: 100%;
  min-height: 48px;
  border: 1px solid rgba(11,11,11,.14);
  border-radius: 14px;
  background: #fff;
  color: #0b0b0b;
  padding: 10px 12px;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.15;
  cursor: pointer;
}

.mimm-human-factor-taps button.is-selected,
.mimm-delivery-methods button.is-selected {
  border-color: #f36870;
  background: rgba(243,104,112,.10);
  color: #b83f4a;
  box-shadow: inset 0 0 0 1px rgba(243,104,112,.18);
}

.mimm-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

html.mimm-drawer-open,
html.mimm-drawer-open body {
  overflow: hidden !important;
}

.mimm-delivery-drawer {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: none;
}

.mimm-delivery-drawer.is-open {
  display: block;
}

.mimm-delivery-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(11,11,11,.54);
  backdrop-filter: blur(5px);
  animation: mimmDrawerFade .18s ease-out both;
}

.mimm-delivery-sheet {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  max-height: min(88dvh, 760px);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding:
    10px
    max(16px, env(safe-area-inset-right))
    calc(18px + env(safe-area-inset-bottom))
    max(16px, env(safe-area-inset-left));
  border-radius: 26px 26px 0 0;
  background: #fffdfd;
  color: #0b0b0b;
  box-shadow: 0 -30px 80px rgba(11,11,11,.20);
  animation: mimmDrawerUp .24s cubic-bezier(.2,.8,.2,1) both;
}

@keyframes mimmDrawerFade {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes mimmDrawerUp {
  from { transform: translateY(18px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}

.mimm-delivery-handle {
  width: 48px;
  height: 5px;
  margin: 0 auto 14px;
  border-radius: 999px;
  background: rgba(11,11,11,.16);
}

.mimm-delivery-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.mimm-delivery-head span {
  color: #d85561;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mimm-delivery-head h2 {
  margin: 4px 0 0;
  font-size: clamp(30px, 8vw, 42px);
  line-height: .98;
}

.mimm-delivery-close {
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border: 0;
  border-radius: 50%;
  background: rgba(11,11,11,.06);
  color: #0b0b0b;
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
}

.mimm-delivery-sheet > p {
  margin: 12px 0 18px;
  color: rgba(11,11,11,.68);
  line-height: 1.5;
}

.mimm-delivery-help {
  margin: 12px 0;
  padding: 12px 14px;
  border-radius: 14px;
  background: rgba(231,201,139,.14);
  color: rgba(11,11,11,.76);
  font-size: 13px;
  line-height: 1.45;
}

.mimm-delivery-proof-label {
  display: grid;
  gap: 7px;
  margin-top: 12px;
  font-weight: 800;
}

.mimm-delivery-proof-label input {
  width: 100%;
  min-height: 52px;
  border: 1px solid rgba(11,11,11,.16);
  border-radius: 14px;
  padding: 12px 14px;
  font-size: 16px;
}

.mimm-delivery-status {
  min-height: 20px;
  margin-top: 8px;
  color: rgba(11,11,11,.68);
  font-size: 13px;
}

.mimm-delivery-actions {
  display: grid;
  grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
  gap: 8px;
  margin-top: 14px;
}

.mimm-delivery-actions button {
  min-height: 52px;
  border-radius: 999px;
  padding: 12px 14px;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.mimm-delivery-secondary {
  border: 1px solid rgba(11,11,11,.14);
  background: #fff;
  color: #0b0b0b;
}

.mimm-delivery-primary {
  border: 1px solid #f36870;
  background: #f36870;
  color: #fff;
}

@media (max-width: 820px) {
  #mimm-run main,
  #mimm-can main,
  #mimm-need main,
  #mimm-market main,
  #mimm-receipts main,
  #mimm-back main {
    width: 100%;
    max-width: none;
    margin: 0;
    padding-left: max(10px, env(safe-area-inset-left));
    padding-right: max(10px, env(safe-area-inset-right));
  }

  .mimm-tool-card,
  .mimm-setup-move,
  .mimm-bridge-access-card,
  .mimm-proof-card,
  .mimm-market-card {
    width: 100%;
    max-width: 100%;
  }

  .mimm-tool-card summary {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .mimm-tool-status {
    grid-column: 2;
    justify-self: start;
  }

  .mimm-tool-metrics,
  .mimm-tool-proof-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 430px) {
  .mimm-human-factor-taps,
  .mimm-delivery-methods {
    grid-template-columns: minmax(0, 1fr);
  }

  .mimm-tool-metrics,
  .mimm-tool-proof-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .mimm-delivery-actions {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .mimm-delivery-backdrop,
  .mimm-delivery-sheet {
    animation: none !important;
  }
}


/* ============================================================
   V2.3.19 — Universal Responsive Stabilization
   Authoritative participant layout override
   ============================================================ */

html {
  max-width: 100%;
  overflow-x: hidden;
}

body.mimm-participant-page,
body.mimm-participant-runtime {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
}

/*
 * The V2.3.18 100vw / left:50% / -50vw breakout is intentionally
 * neutralized here. Participant pages now expand their host chain
 * first and the MIMM root uses normal 100% sizing.
 */
body.mimm-participant-page #mimm-run,
body.mimm-participant-page #mimm-can,
body.mimm-participant-page #mimm-need,
body.mimm-participant-page #mimm-market,
body.mimm-participant-page #mimm-receipts,
body.mimm-participant-page #mimm-back,
body.mimm-participant-runtime #mimm-run,
body.mimm-participant-runtime #mimm-can,
body.mimm-participant-runtime #mimm-need,
body.mimm-participant-runtime #mimm-market,
body.mimm-participant-runtime #mimm-receipts,
body.mimm-participant-runtime #mimm-back {
  --mimm-safe-inline: clamp(12px, 3.5vw, 34px);
  --mimm-content-max: 1180px;
  position: relative !important;
  inset-inline: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: none !important;
  overflow-x: hidden !important;
  padding-bottom:
    calc(
      104px +
      max(18px, env(safe-area-inset-bottom)) +
      var(--mimm-vv-bottom, 0px)
    ) !important;
}

/* Expand only the content chain that contains the participant app. */
body.mimm-participant-runtime .mimm-responsive-host {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  float: none !important;
  flex-basis: 100% !important;
  grid-column: 1 / -1 !important;
}

/* Common WordPress/theme wrappers on participant pages. */
body.mimm-participant-page .site-content,
body.mimm-participant-page .content-area,
body.mimm-participant-page .site-main,
body.mimm-participant-page article.page,
body.mimm-participant-page .entry-content,
body.mimm-participant-page .wp-block-post-content,
body.mimm-participant-page .elementor,
body.mimm-participant-page .elementor-section-wrap,
body.mimm-participant-page .elementor-widget-wrap,
body.mimm-participant-page .elementor-widget-container,
body.mimm-participant-page .et_pb_row,
body.mimm-participant-page .et_pb_column,
body.mimm-participant-page .et_pb_module,
body.mimm-participant-page .et_pb_code_inner {
  min-width: 0 !important;
  max-width: none !important;
}

/* The actual MIMM content area. */
body.mimm-participant-page #mimm-run main,
body.mimm-participant-page #mimm-can main,
body.mimm-participant-page #mimm-need main,
body.mimm-participant-page #mimm-market main,
body.mimm-participant-page #mimm-receipts main,
body.mimm-participant-page #mimm-back main,
body.mimm-participant-runtime #mimm-run main,
body.mimm-participant-runtime #mimm-can main,
body.mimm-participant-runtime #mimm-need main,
body.mimm-participant-runtime #mimm-market main,
body.mimm-participant-runtime #mimm-receipts main,
body.mimm-participant-runtime #mimm-back main {
  width: 100% !important;
  min-width: 0 !important;
  max-width: var(--mimm-content-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--mimm-safe-inline) !important;
  padding-right: var(--mimm-safe-inline) !important;
}

/* Everything injected or inherited inside the participant canvas must shrink. */
body.mimm-participant-page #mimm-run *,
body.mimm-participant-page #mimm-can *,
body.mimm-participant-page #mimm-need *,
body.mimm-participant-page #mimm-market *,
body.mimm-participant-page #mimm-receipts *,
body.mimm-participant-page #mimm-back * {
  box-sizing: border-box;
  min-width: 0;
}

body.mimm-participant-page #mimm-run img,
body.mimm-participant-page #mimm-can img,
body.mimm-participant-page #mimm-need img,
body.mimm-participant-page #mimm-market img,
body.mimm-participant-page #mimm-receipts img,
body.mimm-participant-page #mimm-back img,
body.mimm-participant-page #mimm-run svg,
body.mimm-participant-page #mimm-can svg,
body.mimm-participant-page #mimm-need svg,
body.mimm-participant-page #mimm-market svg,
body.mimm-participant-page #mimm-receipts svg,
body.mimm-participant-page #mimm-back svg,
body.mimm-participant-page #mimm-run video,
body.mimm-participant-page #mimm-can video,
body.mimm-participant-page #mimm-need video,
body.mimm-participant-page #mimm-market video,
body.mimm-participant-page #mimm-receipts video,
body.mimm-participant-page #mimm-back video,
body.mimm-participant-page #mimm-run canvas,
body.mimm-participant-page #mimm-can canvas,
body.mimm-participant-page #mimm-need canvas,
body.mimm-participant-page #mimm-market canvas,
body.mimm-participant-page #mimm-receipts canvas,
body.mimm-participant-page #mimm-back canvas {
  display: block;
  width: auto;
  height: auto;
  max-width: 100% !important;
}

/* Long participant/state content must wrap instead of widening the page. */
body.mimm-participant-page #mimm-run h1,
body.mimm-participant-page #mimm-run h2,
body.mimm-participant-page #mimm-run h3,
body.mimm-participant-page #mimm-run p,
body.mimm-participant-page #mimm-run strong,
body.mimm-participant-page #mimm-run span,
body.mimm-participant-page #mimm-can h1,
body.mimm-participant-page #mimm-can h2,
body.mimm-participant-page #mimm-can h3,
body.mimm-participant-page #mimm-can p,
body.mimm-participant-page #mimm-can strong,
body.mimm-participant-page #mimm-can span,
body.mimm-participant-page #mimm-need h1,
body.mimm-participant-page #mimm-need h2,
body.mimm-participant-page #mimm-need h3,
body.mimm-participant-page #mimm-need p,
body.mimm-participant-page #mimm-need strong,
body.mimm-participant-page #mimm-need span,
body.mimm-participant-page #mimm-market h1,
body.mimm-participant-page #mimm-market h2,
body.mimm-participant-page #mimm-market h3,
body.mimm-participant-page #mimm-market p,
body.mimm-participant-page #mimm-market strong,
body.mimm-participant-page #mimm-market span,
body.mimm-participant-page #mimm-receipts h1,
body.mimm-participant-page #mimm-receipts h2,
body.mimm-participant-page #mimm-receipts h3,
body.mimm-participant-page #mimm-receipts p,
body.mimm-participant-page #mimm-receipts strong,
body.mimm-participant-page #mimm-receipts span,
body.mimm-participant-page #mimm-back h1,
body.mimm-participant-page #mimm-back h2,
body.mimm-participant-page #mimm-back h3,
body.mimm-participant-page #mimm-back p,
body.mimm-participant-page #mimm-back strong,
body.mimm-participant-page #mimm-back span {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}

/* Controls are always viewport-safe and can wrap cleanly. */
body.mimm-participant-page #mimm-run button,
body.mimm-participant-page #mimm-run a,
body.mimm-participant-page #mimm-can button,
body.mimm-participant-page #mimm-can a,
body.mimm-participant-page #mimm-need button,
body.mimm-participant-page #mimm-need a,
body.mimm-participant-page #mimm-market button,
body.mimm-participant-page #mimm-market a,
body.mimm-participant-page #mimm-receipts button,
body.mimm-participant-page #mimm-receipts a,
body.mimm-participant-page #mimm-back button,
body.mimm-participant-page #mimm-back a {
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere;
  text-align: center;
  line-height: 1.2;
}

body.mimm-participant-page #mimm-run input,
body.mimm-participant-page #mimm-run textarea,
body.mimm-participant-page #mimm-run select,
body.mimm-participant-page #mimm-can input,
body.mimm-participant-page #mimm-can textarea,
body.mimm-participant-page #mimm-can select,
body.mimm-participant-page #mimm-need input,
body.mimm-participant-page #mimm-need textarea,
body.mimm-participant-page #mimm-need select,
body.mimm-participant-page #mimm-market input,
body.mimm-participant-page #mimm-market textarea,
body.mimm-participant-page #mimm-market select,
body.mimm-participant-page #mimm-receipts input,
body.mimm-participant-page #mimm-receipts textarea,
body.mimm-participant-page #mimm-receipts select,
body.mimm-participant-page #mimm-back input,
body.mimm-participant-page #mimm-back textarea,
body.mimm-participant-page #mimm-back select {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  font-size: 16px;
}

/* Known grids collapse by available space rather than device name alone. */
.mimm-run-progress-grid,
.mimm-tool-metrics,
.mimm-tool-proof-grid,
.mimm-round-deliverables,
.mimm-money-map-offers,
.mimm-money-map-signal,
.mimm-setup-moves-grid,
.mimm-human-factor-taps,
.mimm-delivery-methods,
.mimm-sample-metrics,
.mimm-sample-receipts {
  min-width: 0;
}

@media (max-width: 900px) {
  body.mimm-participant-page #mimm-run,
  body.mimm-participant-page #mimm-can,
  body.mimm-participant-page #mimm-need,
  body.mimm-participant-page #mimm-market,
  body.mimm-participant-page #mimm-receipts,
  body.mimm-participant-page #mimm-back {
    --mimm-content-max: 100%;
    --mimm-safe-inline: clamp(14px, 4vw, 28px);
  }

  .mimm-run-progress-grid,
  .mimm-round-deliverables,
  .mimm-money-map-offers {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  body.mimm-participant-page #mimm-run,
  body.mimm-participant-page #mimm-can,
  body.mimm-participant-page #mimm-need,
  body.mimm-participant-page #mimm-market,
  body.mimm-participant-page #mimm-receipts,
  body.mimm-participant-page #mimm-back {
    --mimm-safe-inline: max(12px, env(safe-area-inset-left));
    width: 100% !important;
    max-width: 100% !important;
  }

  body.mimm-participant-page #mimm-run main,
  body.mimm-participant-page #mimm-can main,
  body.mimm-participant-page #mimm-need main,
  body.mimm-participant-page #mimm-market main,
  body.mimm-participant-page #mimm-receipts main,
  body.mimm-participant-page #mimm-back main {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: max(12px, env(safe-area-inset-left)) !important;
    padding-right: max(12px, env(safe-area-inset-right)) !important;
  }

  .mimm-run-progress-grid,
  .mimm-tool-metrics,
  .mimm-tool-proof-grid,
  .mimm-round-deliverables,
  .mimm-money-map-offers,
  .mimm-money-map-signal,
  .mimm-setup-moves-grid,
  .mimm-sample-metrics,
  .mimm-sample-receipts {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .mimm-run-progress-top,
  .mimm-money-map-head,
  .mimm-money-map-action,
  .mimm-run-progress-card .mimm-fulfillment-alert,
  .mimm-offer-blueprint-guide {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .mimm-tool-card summary {
    grid-template-columns: auto minmax(0, 1fr) !important;
  }

  .mimm-tool-status {
    grid-column: 2;
    justify-self: start;
    max-width: 100%;
  }
}

@media (max-width: 390px) {
  body.mimm-participant-page #mimm-run main,
  body.mimm-participant-page #mimm-can main,
  body.mimm-participant-page #mimm-need main,
  body.mimm-participant-page #mimm-market main,
  body.mimm-participant-page #mimm-receipts main,
  body.mimm-participant-page #mimm-back main {
    padding-left: max(10px, env(safe-area-inset-left)) !important;
    padding-right: max(10px, env(safe-area-inset-right)) !important;
  }
}

@media (min-width: 1200px) {
  body.mimm-participant-page #mimm-run,
  body.mimm-participant-page #mimm-can,
  body.mimm-participant-page #mimm-need,
  body.mimm-participant-page #mimm-market,
  body.mimm-participant-page #mimm-receipts,
  body.mimm-participant-page #mimm-back {
    --mimm-content-max: 1240px;
  }
}



/* ============================================================
   V2.4 — REFERRAL-FIRST / RETURN-PATH / LOW-FRICTION UX
============================================================ */

.mimm-v24-return-path,
.mimm-v24-referral,
.mimm-v24-matches,
.mimm-v24-buyer-receipts {
  margin:18px 0;
  padding:20px;
  border:1px solid rgba(11,11,11,.08);
  border-radius:22px;
  background:#fff;
  box-shadow:0 8px 28px rgba(11,11,11,.05);
  overflow:hidden;
}

.mimm-v24-eyebrow {
  display:block;
  margin-bottom:6px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#F36870;
}

.mimm-v24-return-top,
.mimm-v24-referral-head,
.mimm-v24-buyer-receipt-card > div:first-child {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}

.mimm-v24-return-top strong,
.mimm-v24-credit-total {
  font-size:22px;
}

.mimm-v24-return-number,
.mimm-v24-credit-total {
  text-align:right;
  font-weight:900;
}

.mimm-v24-return-number small,
.mimm-v24-credit-total small {
  display:block;
  margin-top:3px;
  color:#756B6D;
  font-size:11px;
  font-weight:600;
}

.mimm-v24-money-bar {
  height:9px;
  margin:16px 0 10px;
  border-radius:999px;
  background:#F3EEEE;
  overflow:hidden;
}

.mimm-v24-money-bar span {
  display:block;
  height:100%;
  border-radius:inherit;
  background:#F36870;
  transition:width .55s cubic-bezier(.2,.8,.2,1);
}

.mimm-v24-return-split {
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
  font-size:12px;
  color:#5F5658;
}

.mimm-v24-return-job {
  margin-top:16px;
  padding:14px 16px;
  border-radius:16px;
  background:#FCF8F8;
}

.mimm-v24-return-job small {
  display:block;
  margin-bottom:4px;
  color:#756B6D;
  font-weight:700;
}

.mimm-v24-return-job strong {
  display:block;
  line-height:1.4;
}

.mimm-v24-sales-math,
.mimm-v24-disclaimer,
.mimm-v24-field-help,
.mimm-v24-referral-actions small {
  color:#756B6D;
  font-size:12px;
  line-height:1.5;
}

.mimm-v24-referral-head h2,
.mimm-v24-matches h2,
.mimm-v24-buyer-receipts h2 {
  margin:0 0 8px;
}

.mimm-v24-referral-head p {
  max-width:560px;
  margin:0;
  line-height:1.55;
}

.mimm-v24-referral-slots {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:18px 0;
}

.mimm-v24-referral-slot {
  min-width:0;
  padding:14px 10px;
  border-radius:16px;
  background:#FCF8F8;
  text-align:center;
}

.mimm-v24-referral-slot span {
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  margin:0 auto 7px;
  border-radius:50%;
  background:#fff;
  font-weight:900;
}

.mimm-v24-referral-slot strong {
  display:block;
  font-size:12px;
  line-height:1.25;
}

.mimm-v24-referral-slot[data-status="CREDIT_EARNED"],
.mimm-v24-referral-slot[data-status="CLEARING"],
.mimm-v24-referral-slot[data-status="PAID"] {
  border:1px solid rgba(243,104,112,.25);
}

.mimm-v24-referral-actions,
.mimm-v24-profile-actions,
.mimm-v24-match-actions,
.mimm-v24-buyer-actions {
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  align-items:center;
}

.mimm-v24-primary,
.mimm-v24-secondary {
  min-height:46px;
  border-radius:999px;
  padding:11px 18px;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}

.mimm-v24-primary {
  border:0;
  background:#F36870;
  color:#fff;
}

.mimm-v24-secondary {
  border:1px solid rgba(11,11,11,.16);
  background:#fff;
  color:#0B0B0B;
}

.mimm-v24-referral-note {
  margin-top:12px;
  padding:11px 13px;
  border-radius:14px;
  background:#fff6e8;
  font-size:12px;
  line-height:1.45;
}

.mimm-v24-profile-summary {
  margin-bottom:16px;
  padding:17px;
  border-radius:18px;
  background:#FCF8F8;
}

.mimm-v24-profile-summary h2 {
  margin:0 0 5px;
}

.mimm-v24-profile-summary p {
  margin:0 0 13px;
  color:#5F5658;
}

.mimm-v24-profile-ready:not(.is-editing) > .field,
.mimm-v24-profile-ready:not(.is-editing) > .mimm-offer-simple-controls {
  display:none !important;
}

.mimm-v24-hidden-derived-title,
.mimm-v24-hidden-budget-number {
  display:none !important;
}

.mimm-v24-need-taps {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}

.mimm-v24-market-action {
  display:grid;
  gap:7px;
  margin-top:17px;
}

.mimm-v24-market-action .mimm-v24-primary {
  width:100%;
}

.mimm-v24-market-action small {
  color:#756B6D;
  font-size:11px;
  line-height:1.45;
}

.mimm-v24-match-card,
.mimm-v24-buyer-receipt-card {
  margin-top:10px;
  padding:14px;
  border-radius:16px;
  background:#FCF8F8;
}

.mimm-v24-match-card > div:first-child {
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:10px;
}

.mimm-v24-match-state {
  font-size:12px;
  color:#5F5658;
}

@media (max-width:680px) {
  .mimm-v24-return-top,
  .mimm-v24-referral-head,
  .mimm-v24-buyer-receipt-card > div:first-child {
    display:grid;
  }

  .mimm-v24-return-number,
  .mimm-v24-credit-total {
    text-align:left;
  }

  .mimm-v24-referral-slots,
  .mimm-v24-need-taps {
    grid-template-columns:1fr;
  }

  .mimm-v24-primary,
  .mimm-v24-secondary {
    width:100%;
  }
}

@media (prefers-reduced-motion:reduce) {
  .mimm-v24-money-bar span {
    transition:none;
  }
}
