.badge { display:inline-block; padding:4px 10px; border-radius:20px; font-size:11px; font-weight:700; }
.badge-pending { background:#FEF3C7; color:#92400E; }
.badge-approved { background:#C6F6D5; color:#1A4731; }
.badge-rejected { background:#FED7D7; color:#742A2A; }
.link-btn { background:none; border:none; color:var(--gold); cursor:pointer; font-weight:600; font-size:13px; }
.notif-bell { position:relative; cursor:pointer; font-size:20px; }
.notif-dot { position:absolute; top:-2px; right:-2px; width:8px; height:8px; background:#E53E3E; border-radius:50%; }

/* ── Panel admin / lembaga ─────────────────────────────────────────────── */
.hidden { display:none !important; }
#screen-dash { min-height:100vh; background:var(--bg); }
#screen-dash .tab-pane.hidden { display:none !important; }
.form-grid .field { min-width:0; }
.form-grid .field .lbl { display:block; margin-bottom:6px; }
.form-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:8px; }
.panel-login-wrap {
  min-height:100vh; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#fff 0%,#EEF2FF 40%,#FFF8E7 100%);
  padding:24px;
}
.panel-login-wrap .login-card { width:100%; max-width:440px; }
.login-actions { display:flex; flex-direction:column; gap:12px; margin-top:8px; }
.login-actions .btn-navy.full { width:100%; justify-content:center; padding:13px 28px; }
