/* KiraPas V33.45 — compact mobile payment history */

/* Header: only the product label + profile action remain. */
.kp-trust-head{
  align-items:center;
  margin:2px 0 10px;
  min-height:38px;
}
.kp-trust-head>.kp-btn{margin-left:auto}

/* KPI strip */
.kp-pay-kpis{margin:8px 0 10px;gap:8px}
.kp-pay-kpi{padding:10px 12px;border-radius:15px;min-height:66px}
.kp-pay-kpi span{font-size:9.5px;letter-spacing:.045em}
.kp-pay-kpi strong{font-size:20px;margin-top:3px}

/* Main cards */
.kp-trust-grid{gap:10px}
.kp-trust-card{padding:14px;border-radius:20px}
.kp-stack{gap:10px}

/* Schedule heading */
.kp-schedule-card .kp-section-head{margin-bottom:8px;align-items:center}
.kp-schedule-card .kp-section-head h2{
  font-size:24px!important;
  line-height:1.06!important;
  letter-spacing:-.035em!important;
  margin:3px 0 0!important;
}
.kp-schedule-card .kp-status{padding:5px 9px;font-size:10px}
.kp-schedule-card .kp-payment-list{margin-top:8px!important}

/* Monthly payment rows */
.kp-payment-list{gap:7px}
.kp-payment-row{
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  padding:10px;
  border-radius:16px;
  min-height:72px;
}
.kp-payment-main{gap:9px;min-width:0}
.kp-payment-month{
  width:40px;
  height:40px;
  border-radius:12px;
  font-size:11px;
}
.kp-payment-copy{min-width:0}
.kp-payment-copy b{
  font-size:13px;
  line-height:1.24;
  letter-spacing:-.012em;
}
.kp-payment-copy span{
  font-size:10.5px;
  line-height:1.25;
  margin-top:2px;
}
.kp-payment-side{
  width:104px;
  flex-direction:column;
  align-items:stretch;
  justify-content:center;
  gap:5px;
}
.kp-payment-status{
  min-height:27px;
  padding:4px 7px;
  font-size:9.5px;
  line-height:1.05;
}
.kp-payment-side .kp-btn-sm{
  min-height:32px!important;
  height:32px;
  padding:0 8px!important;
  border-radius:10px!important;
  font-size:10.5px!important;
  white-space:nowrap;
}

/* Score info box: compact after removal of redundant heading. */
.kp-score-info-card .kp-factor-list{margin-top:8px;gap:0}
.kp-score-info-card .kp-factor{padding:8px 0}
.kp-score-info-card .kp-trust-disclaimer{margin-top:8px;padding:9px 10px;font-size:10.5px}

/* Utility section: form starts immediately; reduce field height and whitespace. */
.kp-utility-card{padding-top:12px!important}
.kp-utility-form .kp-pay-form-grid{gap:8px}
.kp-utility-form .kp-form-group{margin-bottom:7px}
.kp-utility-form .kp-label{font-size:10.5px;margin-bottom:4px}
.kp-utility-form .kp-field{
  height:42px;
  border-radius:11px;
  padding:0 11px;
  font-size:13px;
}
.kp-utility-form .kp-btn-sm{min-height:36px;padding:0 11px;font-size:11px}
.kp-utility-card>.kp-payment-list{margin-top:9px!important}
.kp-utility-card .kp-payment-empty{padding:12px 8px;font-size:12px}

/* Less dead space at page edges. */
.kp-payment-empty{padding:18px 12px}

@media(max-width:620px){
  .kp-trust-shell{padding:8px 10px 78px}
  .kp-trust-head{
    flex-direction:row;
    align-items:center;
    gap:8px;
    margin-bottom:7px;
  }
  .kp-trust-head .kp-eyebrow{font-size:9.5px;letter-spacing:.1em}
  .kp-trust-head>.kp-btn{
    min-height:32px;
    padding:0 9px;
    font-size:10px;
    border-radius:10px;
    white-space:nowrap;
  }

  .kp-pay-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:6px 0 8px}
  .kp-pay-kpi{padding:8px 10px;min-height:58px;border-radius:14px}
  .kp-pay-kpi strong{font-size:18px;margin-top:2px}

  .kp-trust-card{padding:11px;border-radius:18px}
  .kp-trust-grid{gap:8px}
  .kp-stack{gap:8px}

  .kp-schedule-card .kp-section-head{margin-bottom:6px;gap:8px}
  .kp-schedule-card .kp-section-head h2{font-size:21px!important}
  .kp-schedule-card .kp-eyebrow{font-size:9.5px}
  .kp-schedule-card .kp-status{font-size:9.5px;padding:4px 7px}

  .kp-payment-list{gap:6px}
  .kp-payment-row{
    grid-template-columns:minmax(0,1fr) 94px!important;
    gap:7px;
    padding:8px!important;
    min-height:64px;
    border-radius:14px;
  }
  .kp-payment-main{gap:7px}
  .kp-payment-month{width:36px;height:36px;border-radius:11px;font-size:10px}
  .kp-payment-copy b{font-size:11.8px;line-height:1.2}
  .kp-payment-copy span{font-size:9.5px;line-height:1.2;margin-top:2px}
  .kp-payment-side{width:94px;gap:4px;justify-content:center!important;align-items:stretch!important}
  .kp-payment-status{min-height:24px;padding:3px 5px;font-size:8.8px}
  .kp-payment-side .kp-btn-sm{height:29px;min-height:29px!important;font-size:9.8px!important;padding:0 5px!important;border-radius:9px!important}

  .kp-score-info-card .kp-eyebrow{font-size:9.5px}
  .kp-score-info-card .kp-factor{padding:6px 0}
  .kp-score-info-card .kp-factor span,.kp-score-info-card .kp-factor b{font-size:11px}
  .kp-score-info-card .kp-trust-disclaimer{font-size:9.8px;line-height:1.35}

  #utilityForm .kp-pay-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px}
  #utilityForm .kp-form-group{margin-bottom:5px}
  #utilityForm .kp-label{font-size:9.5px}
  #utilityForm .kp-field{height:39px;font-size:12px;padding:0 9px}
  #utilityForm .kp-btn-sm{min-height:34px;font-size:10.5px}
  .kp-utility-card>.kp-payment-list{margin-top:7px!important}
}

@media(max-width:380px){
  .kp-payment-row{grid-template-columns:minmax(0,1fr) 86px!important}
  .kp-payment-side{width:86px}
  .kp-payment-copy b{font-size:11.2px}
  .kp-payment-side .kp-btn-sm{font-size:9.2px!important}
  #utilityForm .kp-pay-form-grid{grid-template-columns:1fr 1fr!important}
}
