/* =========================================================
   VERSI 33 - ROLE UI: PROFILE, SIDEBAR, PAYMENT BADGE
   Berlaku untuk Admin, PIC/Pelatih, dan Siswa.
   ========================================================= */

.app-body .site-header .user-chip.user-chip-mini-v33,
.app-body .site-header .user-chip{
  width:52px !important;
  height:52px !important;
  min-width:52px !important;
  padding:0 !important;
  border-radius:999px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
}

.app-body .site-header .user-chip > div:not(.avatar){
  display:none !important;
}

.avatar-mini-v33,
.app-body .site-header .avatar{
  width:48px !important;
  height:48px !important;
  min-width:48px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#eff6ff,#ffffff) !important;
  color:#2563eb !important;
  border:1px solid rgba(37,99,235,.18) !important;
  box-shadow:0 12px 26px rgba(15,39,71,.12) !important;
  overflow:hidden !important;
  display:grid !important;
  place-items:center !important;
  font-size:18px !important;
  font-weight:900 !important;
}

.avatar-mini-v33 img,
.app-body .site-header .avatar img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}

.app-sidebar .help-card{
  display:none !important;
}

.account-profile-card-v33{
  background:#ffffff;
  border:1px solid rgba(37,99,235,.16);
  border-radius:20px;
  padding:24px;
  box-shadow:0 14px 38px rgba(15,39,71,.08);
  display:grid;
  grid-template-columns:minmax(280px, 1fr) minmax(340px, .95fr);
  gap:24px;
  align-items:center;
}

.account-profile-main-v33{
  display:flex;
  align-items:center;
  gap:18px;
}

.account-avatar-v33{
  width:92px;
  height:92px;
  border-radius:999px;
  background:linear-gradient(135deg,#2563eb,#0b2f6f);
  color:#ffffff;
  display:grid;
  place-items:center;
  font-size:36px;
  font-weight:900;
  overflow:hidden;
  box-shadow:0 18px 42px rgba(37,99,235,.24);
  flex:0 0 92px;
}

.account-avatar-v33 img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.account-profile-main-v33 h2{
  margin:0 0 8px;
  color:#0b2f6f;
  line-height:1.18;
}

.account-upload-v33{
  background:#f8fbff;
  border:1px solid rgba(37,99,235,.14);
  border-radius:18px;
  padding:18px;
}

.account-upload-v33 label{
  display:block;
  margin-bottom:10px;
  color:#082f49;
  font-weight:900;
}

.upload-row-v33{
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
}

.upload-row-v33 input[type="file"]{
  flex:1 1 230px;
  min-height:44px;
  border:1px solid #dbe7fb;
  border-radius:12px;
  background:#fff;
  padding:9px 12px;
}

.pay-card .badge.warn{
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  border-radius:999px !important;
  padding:8px 14px !important;
  background:#fff1f2 !important;
  color:#dc2626 !important;
  border:1px solid #fecdd3 !important;
  font-size:13px !important;
  line-height:1 !important;
  box-shadow:none !important;
}

.pay-status-v33{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  font-size:13px;
  line-height:1;
  font-weight:900;
  letter-spacing:.01em;
  white-space:nowrap;
}

.pay-status-v33.is-unpaid{
  background:#fff1f2;
  color:#dc2626;
  border:1px solid #fecdd3;
}

.pay-status-v33.is-waiting{
  background:#fff7ed;
  color:#c2410c;
  border:1px solid #fed7aa;
}

.pay-status-v33.is-paid{
  background:#ecfdf5;
  color:#059669;
  border:1px solid #a7f3d0;
}

.pay-card .btn + .btn{
  margin-left:8px;
}

@media (max-width:760px){
  .account-profile-card-v33{
    grid-template-columns:1fr;
    padding:20px;
  }

  .account-profile-main-v33{
    align-items:flex-start;
  }

  .account-avatar-v33{
    width:76px;
    height:76px;
    flex-basis:76px;
    font-size:30px;
  }

  .upload-row-v33{
    display:grid;
    grid-template-columns:1fr;
  }

  .upload-row-v33 .btn{
    width:100%;
  }

  .pay-card .btn + .btn{
    margin-left:0;
    margin-top:10px;
  }
}
