
  body { background: #f8fafc; } /* soft page background */

  .gate-card { border-radius: 1rem; }

  .gate-badge {
    width: 44px; height: 44px;
    display: grid; place-items: center;
    border-radius: 50%;
    background: #e7f0ff; /* light primary */
    color: #2563eb;       /* primary */
    font-weight: 700;
    font-size: 1.1rem;
  }

  /* improve checkbox target size */
  .form-check-input { width: 1.1rem; height: 1.1rem; cursor: pointer; }
  .form-check-label { cursor: pointer; }


  /* nicer hr */
  .card hr { opacity: .2; }

/* work for both BS3/BS5 + portal overrides */
  .btn[disabled],
  .btn:disabled,
  .btn.disabled {
    pointer-events: none !important;
    cursor: not-allowed !important;
    box-shadow: none !important;
  }

  /* make the primary state clearly disabled */
  .btn.btn-primary[disabled],
  .btn.btn-primary:disabled,
  .btn.btn-primary.disabled {
    background-color: #cfe0ff !important;   /* lighter blue */
    border-color: #cfe0ff !important;
    color: #ffffff !important;
    opacity: 1 !important;                   /* keep text readable */
    filter: saturate(.4) brightness(1.05);   /* optional extra dulling */
  }

  /* optional: prevent hover styles when disabled */
  .btn.btn-primary[disabled]:hover,
  .btn.btn-primary:disabled:hover,
  .btn.btn-primary.disabled:hover {
    background-color: #cfe0ff !important;
    border-color: #cfe0ff !important;
  }
