/* Contract portal uses the same dashboard card system. */
.snexus-registration-portal.snx-contract-view .snx-contract-current{
  padding:20px 22px!important;
  border:1px solid #dfe4ec!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 30px rgba(17,24,39,.055)!important;
}
.snexus-registration-portal.snx-contract-view .snx-contract-current .snx-contract-title{
  align-items:center;
}
.snexus-registration-portal.snx-contract-view .snx-contract-current .snx-contract-meta{
  gap:0!important;
  margin-top:18px!important;
  padding-top:16px!important;
}
.snexus-registration-portal.snx-contract-view .snx-contract-current .snx-contract-meta>div{
  padding:0 18px;
  border-right:1px solid var(--snx-border,#e6e9ef);
}
.snexus-registration-portal.snx-contract-view .snx-contract-current .snx-contract-meta>div:first-child{padding-left:0}
.snexus-registration-portal.snx-contract-view .snx-contract-current .snx-contract-meta>div:last-child{
  padding-right:0;border-right:0;
}
.snexus-registration-portal.snx-contract-view>.snx-dashboard-grid{
  gap:12px!important;
}
.snexus-registration-portal.snx-contract-view>.snx-dashboard-grid>.snx-card{
  height:100%;
  padding:20px 22px!important;
  border:1px solid #dfe4ec!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 30px rgba(17,24,39,.055)!important;
}
.snexus-registration-portal.snx-contract-view .snx-module-list i{
  display:inline-grid!important;
  width:24px!important;height:24px!important;
  margin:0 10px 0 0!important;
  place-items:center;
  border-radius:50%!important;
  background:var(--snx-orange,#f97316)!important;
  color:#fff!important;
  font-size:.72rem!important;
  line-height:1!important;
  font-style:normal!important;
  font-weight:800!important;
  vertical-align:middle!important;
}
.snexus-registration-portal.snx-contract-view .snx-module-item>span{
  color:var(--snx-navy-brand,#1a1a2e)!important;
  font-size:1.02rem!important;
  line-height:1.35!important;
  font-weight:700!important;
}
.snexus-registration-portal.snx-contract-view .snx-module-item>span small{
  margin:4px 0 0 34px!important;
  font-size:.76rem!important;
  line-height:1.45!important;
  font-weight:400!important;
}
.snexus-registration-portal .snx-contract-lower-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
  gap:12px!important;
}
.snexus-registration-portal .snx-contract-lower-grid>.snx-plan-section,
.snexus-registration-portal .snx-contract-lower-grid>.snx-cancel-card{
  min-width:0;
  height:100%;
  margin:0!important;
  padding:22px!important;
  border:1px solid #dfe4ec!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 30px rgba(17,24,39,.055)!important;
}
.snexus-registration-portal .snx-contract-lower-grid>.snx-plan-section{
  display:flex;
  flex-direction:column;
  grid-column:1;
}
.snexus-registration-portal .snx-contract-lower-grid>.snx-cancel-card{
  display:flex;
  flex-direction:column;
  grid-column:2;
}
.snexus-registration-portal .snx-contract-lower-grid>.snx-cancel-card form{
  margin-top:auto;
}
.snexus-registration-portal .snx-contract-lower-grid .snx-section-head{
  align-items:flex-start;
  margin-bottom:16px;
}
.snexus-registration-portal .snx-contract-lower-grid .snx-section-head p{
  margin-top:7px!important;
  font-size:.88rem!important;
}
.snexus-registration-portal .snx-contract-lower-grid .snx-plan-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  flex:1;
}
.snexus-registration-portal .snx-contract-lower-grid .snx-plan-card{
  min-height:0;
  padding:16px!important;
  gap:12px;
  border:1px solid var(--snx-border,#e6e9ef)!important;
  border-radius:14px!important;
  background:var(--snx-soft,#f7f9fc)!important;
  box-shadow:none!important;
}
.snexus-registration-portal .snx-contract-lower-grid .snx-plan-card .snx-btn{
  width:100%;
}
.snexus-registration-portal .snx-contract-lower-grid .snx-cancel-card .snx-btn{
  width:100%;
}
@media(max-width:900px){
  .snexus-registration-portal .snx-contract-lower-grid{
    grid-template-columns:1fr!important;
  }
  .snexus-registration-portal .snx-contract-lower-grid>.snx-plan-section,
  .snexus-registration-portal .snx-contract-lower-grid>.snx-cancel-card{
    grid-column:1!important;
  }
  .snexus-registration-portal.snx-contract-view .snx-contract-current .snx-contract-meta>div{
    padding:10px 0!important;
    border-right:0;
    border-bottom:1px solid var(--snx-border,#e6e9ef);
  }
  .snexus-registration-portal.snx-contract-view .snx-contract-current .snx-contract-meta>div:last-child{border-bottom:0}
}


/* Full-width cancellation when no tariff alternative is available. */
.snexus-registration-portal .snx-contract-lower-grid>.snx-cancel-card:only-child{
  grid-column:1 / -1!important;
}
/* Cancellation is the destructive contract action. */
.snexus-registration-portal .snx-contract-lower-grid .snx-cancel-card .snx-btn{
  color:#fff!important;
  background:#dc2626!important;
  border-color:#dc2626!important;
  box-shadow:none!important;
}
.snexus-registration-portal .snx-contract-lower-grid .snx-cancel-card .snx-btn:hover,
.snexus-registration-portal .snx-contract-lower-grid .snx-cancel-card .snx-btn:focus-visible{
  color:#fff!important;
  background:#b91c1c!important;
  border-color:#b91c1c!important;
}


/* Compact destructive action on the full-width cancellation card. */
.snexus-registration-portal .snx-contract-lower-grid .snx-cancel-card form{
  margin-top:18px!important;
}
.snexus-registration-portal .snx-contract-lower-grid .snx-cancel-card .snx-btn{
  display:inline-flex!important;
  width:auto!important;
  min-width:0!important;
  padding:11px 18px!important;
  align-items:center;
  justify-content:center;
}
