/* PEP-DASHBOARD-LIFECYCLE-PAYMENT-01 — route-scoped final overrides. */

/* Dashboard page builders/themes must not keep the private app in one side of
 * a two-column or max-width article wrapper. */
body.kbm-route-dashboard :where(
  #page,.site,.site-content,.content-area,.site-main,main,
  .kbm-theme-main,.kbm-shell-main,.kbm-theme-container,
  .entry-content,.wp-block-post-content,.elementor,.elementor-section,
  .elementor-container,.elementor-column,.elementor-widget-wrap
){
  min-width:0!important;
  width:100%!important;
  max-width:none!important;
  margin-inline:auto!important;
  grid-column:1 / -1!important;
}
body.kbm-route-dashboard :where(.site-main,main,.kbm-theme-main,.kbm-shell-main,.entry-content,.wp-block-post-content){
  padding-inline:0!important;
}
body.kbm-route-dashboard .kbm-dashboard-recode{
  width:min(100%,1280px)!important;
  max-width:1280px!important;
  margin-inline:auto!important;
  padding-inline:clamp(10px,2vw,24px)!important;
}

.kbm-dashboard-recode-lifecycle{
  justify-content:flex-start;
  flex-wrap:wrap;
}
.kbm-dashboard-recode-lifecycle.is-expiring{
  background:#fff1f2!important;
  border-color:#fda4af!important;
  color:#9f1239!important;
}
.kbm-dashboard-recode-lifecycle.is-expired{
  background:#f1f5f9!important;
  border-color:#cbd5e1!important;
  color:#475569!important;
}
.kbm-dashboard-recode-edit-note{
  display:block;
  margin:0;
  color:#64748b;
  font-size:10.5px;
  font-weight:800;
  line-height:1.8;
}
.kbm-dashboard-recode-act.is-disabled{
  pointer-events:none!important;
  cursor:not-allowed!important;
  opacity:.58!important;
  filter:grayscale(1);
}

.kbm-dashboard-recode-card.is-expired{
  border-color:#cbd5e1!important;
  background:#f8fafc!important;
  box-shadow:none!important;
}
.kbm-dashboard-recode-card.is-expired .kbm-dashboard-recode-card-media img{
  filter:grayscale(1) contrast(.9);
  opacity:.62;
}
.kbm-dashboard-recode-card.is-expired .kbm-dashboard-recode-card-title,
.kbm-dashboard-recode-card.is-expired .kbm-dashboard-recode-commercial{
  color:#64748b!important;
}
.kbm-dashboard-recode-media-badge--expired{
  background:#475569!important;
  color:#fff!important;
}
.kbm-dashboard-recode-card.is-life-expiring{
  border-color:#fda4af!important;
}

/* Payment page: centred, compact and stable in landscape/mobile. */
body.kbm-route-payment-canonical :where(.site-main,main,.entry-content,.wp-block-post-content,.kbm-theme-main,.kbm-shell-main){
  width:100%!important;
  max-width:none!important;
  margin-inline:auto!important;
}
body.kbm-route-payment-canonical .kbm-mlec-pay,
body.kbm-pep-b29 .kbm-mlec-pay{
  width:min(calc(100% - 24px),1180px)!important;
  max-width:1180px!important;
  margin:20px auto 110px!important;
}
body.kbm-pep-b29 .kbm-mlec-pay__renew-options{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
body.kbm-pep-b29 .kbm-mlec-pay__renew{
  min-width:0!important;
  height:100%!important;
}
body.kbm-pep-b29 .kbm-mlec-pay__summary{
  position:sticky;
  bottom:10px;
  z-index:30;
}

@media (max-width:900px){
  body.kbm-pep-b29 .kbm-mlec-pay__renew-options{grid-template-columns:1fr!important}
  body.kbm-route-dashboard .kbm-dashboard-recode{padding-inline:10px!important}
}
@media (max-width:640px){
  body.kbm-route-payment-canonical .kbm-mlec-pay,
  body.kbm-pep-b29 .kbm-mlec-pay{width:calc(100% - 16px)!important;margin-top:10px!important}
  body.kbm-route-dashboard .kbm-dashboard-recode{padding-inline:8px!important}
  .kbm-dashboard-recode-edit-note{font-size:10px}
}

.kbm-dashboard-recode-act__icon img{width:30px;height:30px;display:block;object-fit:contain}
