/* WS-G sponsor pressure strip. Standalone under #sponsorSlot. */
#sponsorSlot { flex: none; }
.sponsor-strip {
  display: grid; grid-template-columns: 210px 1fr; gap: 10px;
  padding: 8px 12px 0;
}
.sponsor-strip__label {
  display: grid; align-content: center; gap: 3px;
  min-width: 0; padding: 8px 11px;
  border: 1px solid var(--line); border-radius: 8px;
  background: linear-gradient(110deg, #ffffff08, transparent), var(--panel-solid);
}
.sponsor-strip__label span {
  color: var(--muted); font: 800 10px/1 var(--mono);
  letter-spacing: .14em;
}
.sponsor-strip__label small { color: #708176; font-size: 10px; }
.sponsor-strip__contracts {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 8px;
}
.sponsor-contract {
  min-width: 0; padding: 8px 10px;
  border: 1px solid color-mix(in srgb, var(--sponsor-color) 36%, var(--line));
  border-radius: 8px;
  background:
    linear-gradient(100deg, color-mix(in srgb, var(--sponsor-color) 9%, transparent), transparent 44%),
    var(--panel-solid);
  box-shadow: inset 3px 0 var(--sponsor-color);
}
.sponsor-contract__head,
.sponsor-contract__foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.sponsor-contract__head strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.sponsor-contract__head > span {
  flex: none; padding: 2px 5px; border-radius: 3px;
  color: var(--muted); background: #ffffff0b;
  font: 800 8px/1 var(--mono); letter-spacing: .08em;
}
.sponsor-contract p {
  min-height: 14px; margin: 5px 0 6px;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  color: #a8b7ad; font-size: 10px;
}
.sponsor-contract__meter { height: 4px; overflow: hidden; border-radius: 999px; background: #ffffff12; }
.sponsor-contract__meter i {
  display: block; height: 100%; border-radius: inherit;
  background: var(--sponsor-color); transition: width .2s linear;
}
.sponsor-contract__foot { margin-top: 5px; color: var(--muted); font: 700 8px/1 var(--mono); text-transform: uppercase; }
.sponsor-contract.is-satisfied .sponsor-contract__head > span { color: var(--good); background: #53fc1817; }
.sponsor-contract.is-breach {
  border-color: var(--warn); box-shadow: inset 3px 0 var(--warn), 0 0 0 1px #ffcc3314;
}
.sponsor-contract.is-breach .sponsor-contract__head > span { color: var(--warn); background: #ffcc3317; }
.sponsor-contract.is-breach .sponsor-contract__meter i { background: var(--warn); }
.sponsor-contract.is-dropped { opacity: .72; filter: grayscale(.65); border-color: var(--bad); box-shadow: inset 3px 0 var(--bad); }
.sponsor-contract.is-dropped .sponsor-contract__head > span { color: var(--bad); background: #ff4d4d17; }

@media (max-width: 820px) {
  .sponsor-strip { grid-template-columns: 1fr; }
  .sponsor-strip__label { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .sponsor-contract__meter i { transition: none; }
}
