.tsptpv-room-panel {
  margin: 20px 0 18px;
  padding: 22px;
  border: 1px solid rgba(239, 186, 205, .35);
  border-radius: 18px;
  background: linear-gradient(135deg, #3b2341, #241727 67%, #321e32);
  color: #f6e9ef;
  box-shadow: 0 12px 32px rgba(9, 2, 10, .12);
}
.tsptpv-room-heading { display: flex; justify-content: space-between; gap: 14px; align-items: center; margin-bottom: 15px; }
.tsptpv-room-heading h4 { color: #f9ebef; font-size: 1.2rem; line-height: 1.1; margin: 5px 0 0; }
.tsptpv-eyebrow { color: #dfb1c1; font-size: 10px; font-weight: 800; letter-spacing: .22em; }
.tsptpv-room-hint { color: #d0b9c5; font-size: 12px; text-align: right; }
.tsptpv-offer-controls { display: flex; flex-wrap: wrap; gap: 9px; margin: 14px 0; }
.tsptpv-offer-controls select { background: #1e1423; color: #f6e9ef; border: 1px solid #785571; border-radius: 10px; padding: 10px; flex: 1 1 180px; min-width: 0; }
.tsptpv-offer-controls button, .tsptpv-offer-action a { background: #f2b9c8; border: none; border-radius: 10px; padding: 10px 15px; color: #241326; font: 700 13px/1.2 system-ui,sans-serif; text-decoration: none; cursor: pointer; white-space: nowrap; }
.tsptpv-offer-controls button[disabled] { opacity: .45; cursor: not-allowed; }
.tsptpv-offer-action a:focus-visible, .tsptpv-offer-controls button:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.tsptpv-offers-list { display: grid; gap: 10px; }
.tsptpv-offer-card { display: flex; align-items: center; gap: 15px; flex-wrap: wrap; background: #1b1220; border: 1px solid #61435e; border-radius: 13px; padding: 12px; }
.tsptpv-locked-image { flex: 0 0 64px; height: 64px; border-radius: 10px; background: radial-gradient(circle at 25% 15%, #7e536c, #422b43 50%, #1f1424); border: 1px solid #875e79; display: grid; place-items: center; font: 36px Georgia,serif; color: #f0bbcc; }
.tsptpv-offer-info { display: grid; gap: 5px; flex: 1 1 160px; }
.tsptpv-offer-info small { font: 800 9px/1.3 system-ui,sans-serif; letter-spacing: .17em; color: #e4adc2; }
.tsptpv-offer-info strong { color: #fff5f7; font: 600 15px/1.4 system-ui,sans-serif; }
.tsptpv-offer-info span, .tsptpv-empty, .tsptpv-status { color: #d2bdca; font-size: 12px; }
.tsptpv-status { margin: 9px 0 0; }
.tsptpv-checkout-note { margin: 0 0 14px; padding: 10px 12px; border-radius: 10px; background: #4e3248; color: #f6d4df; font-size: 12px; }
.tsptpv-pill { display: inline-block; color: #f6cee0; border: 1px solid #855c7a; padding: 7px 11px; border-radius: 999px; font: 700 11px/1.2 system-ui,sans-serif; white-space: nowrap; }
.tsptpv-pill.is-paid { color: #dbf3df; border-color: #59896a; }
.tsptpv-earnings { margin-top: 14px; padding: 18px; background: #29192d; border: 1px solid #9a6e89; border-radius: 16px; color: #f6e6ef; }
.tsptpv-earnings h3 { margin: 6px 0 16px; color: #fff3f7; font: 500 22px/1.2 Georgia,serif; }
.tsptpv-earnings-kicker { color: #e8abc2; font: 800 10px/1.2 system-ui,sans-serif; letter-spacing: .18em; }
.tsptpv-earnings-values { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-bottom: 14px; }
.tsptpv-earnings-values > div { padding: 13px; background: #3b2742; border: 1px solid #755069; border-radius: 11px; }
.tsptpv-earnings-values span { display: block; color: #d6bccc; font-size: 12px; margin-bottom: 6px; }
.tsptpv-earnings-values strong { color: #f7c5d6; font: 500 25px Georgia,serif; }
.tsptpv-earnings small { color: #d0b8cb; }
@media(max-width:480px){ .tsptpv-earnings-values { grid-template-columns: 1fr; } }
@media(max-width: 600px){ .tsptpv-room-panel{padding:16px}.tsptpv-room-heading{display:block}.tsptpv-room-hint{display:block;text-align:left;margin-top:8px}.tsptpv-offer-action{width:100%}.tsptpv-offer-action a{display:block;text-align:center} }
