.pm-coupon-builder{
  display:flex;
  flex-direction:column;
  gap:14px;
  margin-bottom:18px;
  padding:18px;
  border:1px solid var(--border,#263249);
  border-radius:16px;
  background:var(--panel,#111827);
}

.pm-coupon-empty{
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
}

.pm-coupon-empty div,
.pm-coupon-head>div:first-child{
  display:flex;
  flex-direction:column;
  gap:5px;
}

.pm-coupon-builder span{
  opacity:.75;
}

.pm-coupon-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}

.pm-coupon-head>div:last-child,
.pm-best-actions{
  display:flex;
  gap:9px;
  flex-wrap:wrap;
}

.pm-coupon-picks{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:9px;
}

.pm-coupon-picks>div{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:11px 38px 11px 12px;
  border:1px solid var(--border,#263249);
  border-radius:11px;
}

.pm-coupon-picks button{
  position:absolute;
  top:8px;
  right:8px;
  width:25px;
  height:25px;
  border:0;
  border-radius:50%;
  cursor:pointer;
}

.pm-xai-primary,
.pm-xai-secondary,
.pm-market-row button{
  padding:9px 13px;
  border-radius:9px;
  cursor:pointer;
  font-weight:700;
}

.pm-xai-primary{
  border:1px solid #2563eb;
  background:#2563eb;
  color:#fff;
}

.pm-xai-primary.selected,
.pm-market-row button.selected{
  border-color:#b45309;
  background:#b45309;
  color:#fff;
}

.pm-xai-secondary{
  border:1px solid var(--border,#334155);
  background:transparent;
  color:inherit;
}

.pm-best-actions{
  margin-top:14px;
}

.pm-market-row{
  display:grid!important;
  grid-template-columns:minmax(170px,1fr) repeat(4,auto);
  align-items:center;
  gap:10px;
}

.pm-market-row button{
  border:1px solid var(--border,#334155);
  background:transparent;
  color:inherit;
}

.pm-xai-summary{
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin:18px 0;
  padding:18px;
  border:1px solid var(--border,#263249);
  border-radius:15px;
  background:var(--panel,#111827);
}

.pm-xai-summary label{
  display:block;
  margin-bottom:7px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  opacity:.7;
}

.pm-xai-summary p{
  margin:0;
  line-height:1.6;
}

.pm-xai-score{
  min-width:120px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:12px;
  border-radius:12px;
  background:rgba(37,99,235,.12);
}

.pm-xai-score b{
  font-size:30px;
}

.pm-xai-panel{
  margin-top:14px;
  padding:16px;
}

.pm-xai-list{
  display:flex;
  flex-direction:column;
  gap:9px;
}

.pm-xai-reason,
.pm-xai-risk{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px 12px;
  border-radius:10px;
}

.pm-xai-reason{
  background:rgba(22,163,74,.10);
}

.pm-xai-risk{
  background:rgba(220,38,38,.10);
}

.pm-xai-reason p,
.pm-xai-risk p{
  margin:0;
  line-height:1.45;
}

.pm-xai-factors{
  display:flex;
  flex-direction:column;
  gap:13px;
}

.pm-xai-factor>div:first-child{
  display:flex;
  justify-content:space-between;
  margin-bottom:6px;
}

.pm-xai-bar{
  height:8px;
  overflow:hidden;
  border-radius:99px;
  background:rgba(148,163,184,.18);
}

.pm-xai-bar i{
  display:block;
  height:100%;
  border-radius:99px;
  background:currentColor;
}

.pm-coupon-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(110px,1fr));
  gap:10px;
  margin:18px 0;
}

.pm-coupon-metrics>div{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:13px;
  border:1px solid var(--border,#263249);
  border-radius:11px;
}

.pm-coupon-metrics label{
  font-size:12px;
  opacity:.7;
}

.pm-coupon-metrics b{
  font-size:19px;
}

.pm-weakest,
.pm-coupon-selection-list>div{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:11px;
  border:1px solid var(--border,#263249);
  border-radius:10px;
}

.pm-coupon-selection-list{
  display:flex;
  flex-direction:column;
  gap:8px;
}

@media(max-width:800px){
  .pm-coupon-head,
  .pm-xai-summary{
    flex-direction:column;
    align-items:stretch;
  }

  .pm-market-row{
    grid-template-columns:1fr 1fr!important;
  }

  .pm-coupon-metrics{
    grid-template-columns:repeat(2,minmax(100px,1fr));
  }
}
